List keytab principals Java


What's inside this article ⌄
  • How to list keytab principals Java
  • Java read keytab principals
  • Extract principals from keytab
  • Java keytab principals example

If you need to get a list of keytab principals through Java code, you can use the sun.security.krb5.internal.ktab.KeyTab class:

KeyTab keyTab = KeyTab.getInstance(keyTabFilePath);
Set<String> principals = Arrays.stream(keyTab.getEntries())
      .map(KeyTabEntry::getService)
      .map(s -> String.join("@", s.getNameString(), s.getRealmAsString()))
      .collect(Collectors.toSet());
log.info("principals={}", principals);