본문 바로가기

IT

Kerberos 인증을 위한 Keytab 파일 검증

반응형

아래와 같은 간단한 Java Console 프로그램을 활용하면, Keytab 파일의 유효성을 사전에 체크해 볼 수 있다.

 

Keberos 구성 정보는 아래 파일 생성 후, 설정에 추가하면 된다.

검증에 필요한 Keytab 파일 경로를 추가하고, Keytab 계정의 UPN 정보를 입력하면, 간단한 절차로 검증 가능하다.

KerberosConfig {
    com.sun.security.auth.module.Krb5LoginModule required
    useKeyTab=true
    keyTab="c:\\Test.keytab"
    principal="HTTP/test@domain.com"
    storeKey=true
    debug=true;
};

 

import javax.security.auth.Subject;
import javax.security.auth.login.LoginContext;
import javax.security.auth.login.LoginException;
import java.security.PrivilegedAction;

public class Main {

    public static void main(String[] args) {
        System.setProperty("java.security.auth.login.config", "KerberosConfig");

        try {
            LoginContext loginContext = new LoginContext("KerberosConfig");
            loginContext.login();
            System.out.println("Keytab verification successful!");

            Subject subject = loginContext.getSubject();
            PrivilegedAction<String> action = () -> {
                System.out.println("Hello from the authenticated subject: " + subject);
                return "Success";
            };

            String result = Subject.doAs(subject, action);
            System.out.println("Result: " + result);

            loginContext.logout();
        } catch (LoginException e) {
            System.err.println("Keytab verification failed: " + e.getMessage());
            e.printStackTrace();
        }
    }
}
반응형

'IT' 카테고리의 다른 글

JavaFX란?  (0) 2023.03.19
AMD의 CPU가 인텔(Intel)보다 저렴한 이유  (0) 2023.03.19
L4에서의 Sticky 옵션  (0) 2023.03.06
Session Idle Time(세션 유휴 시간) 이란?  (0) 2023.03.06
어떤 DNS 서버를 사용하는 게 가장 좋을까?  (0) 2023.02.20