javax.security.auth.kerberos.KeyTab类的使用及代码示例

x33g5p2x  于2022-01-23 转载在 其他  
字(4.4k)|赞(0)|评价(0)|浏览(118)

本文整理了Java中javax.security.auth.kerberos.KeyTab类的一些代码示例,展示了KeyTab类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。KeyTab类的具体详情如下:
包路径:javax.security.auth.kerberos.KeyTab
类名称:KeyTab

KeyTab介绍

暂无

代码示例

代码示例来源:origin: wildfly/wildfly

private void checkKeyTab() throws IOException {
  KeyTab kt = KeyTab.getInstance(keyTab);
  if (!kt.exists()) {
    throw log.keyTabDoesNotExists(keyTab.getAbsolutePath());
  }
  if (kt.getKeys(new KerberosPrincipal(principal)).length == 0) {
    throw log.noKeysForPrincipalInKeyTab(principal, keyTab.getAbsolutePath());
  }
}

代码示例来源:origin: apache/incubator-druid

KeyTab serverKeyTab = (KeyTab) cred;
KerberosPrincipal kerberosPrincipal = new KerberosPrincipal(serverPrincipal);
KerberosKey[] serverKeys = serverKeyTab.getKeys(kerberosPrincipal);
for (KerberosKey key : serverKeys) {
 if (key.getKeyType() == eType) {

代码示例来源:origin: org.apache.hadoop/hadoop-auth

spnegoPrincipals = new String[]{principal};
KeyTab keytabInstance = KeyTab.getInstance(keytabFile);
serverSubject.getPrivateCredentials().add(keytabInstance);
for (String spnegoPrincipal : spnegoPrincipals) {

代码示例来源:origin: apache/directory-kerby

public static KeyTab getKeyTabFromContext(KerberosPrincipal principal) throws GSSException {
  Set<KeyTab> tabs = getContextCredentials(KeyTab.class);
  for (KeyTab tab : tabs) {
    // Use the supplied principal
    KerberosPrincipal princ = principal;
    if (princ == null) {
      // fall back to the principal of the KeyTab (if JDK 1.8) if none is supplied
      try {
        Method m = tab.getClass().getDeclaredMethod("getPrincipal");
        princ = (KerberosPrincipal) m.invoke(tab);
      } catch (NoSuchMethodException | SecurityException | IllegalAccessException
        | IllegalArgumentException | InvocationTargetException e) {
        LOG.info("Can't get a principal from the keytab", e);
      }
    }
    if (princ != null) {
      KerberosKey[] keys = tab.getKeys(princ);
      if (keys != null && keys.length > 0) {
        return tab;
      }
    }
  }
  return null;
}

代码示例来源:origin: ch.cern.hadoop/hadoop-common

@Test
 public void testCheckTGTAfterLoginFromSubject() throws Exception {
  // security on, default is remove default realm
  SecurityUtil.setAuthenticationMethod(AuthenticationMethod.KERBEROS, conf);
  UserGroupInformation.setConfiguration(conf);

  // Login from a pre-set subject with a keytab
  final Subject subject = new Subject();
  KeyTab keytab = KeyTab.getInstance();
  subject.getPrivateCredentials().add(keytab);
  UserGroupInformation ugi = UserGroupInformation.getCurrentUser();
  ugi.doAs(new PrivilegedExceptionAction<Void>() {
   @Override
   public Void run() throws IOException {
    UserGroupInformation.loginUserFromSubject(subject);
    // this should not throw.
    UserGroupInformation.getLoginUser().checkTGTAndReloginFromKeytab();
    return null;
   }
  });

 }
}

代码示例来源:origin: org.wildfly.security/wildfly-elytron

private void checkKeyTab() throws IOException {
  KeyTab kt = KeyTab.getInstance(keyTab);
  if (!kt.exists()) {
    throw log.keyTabDoesNotExists(keyTab.getAbsolutePath());
  }
  if (kt.getKeys(new KerberosPrincipal(principal)).length == 0) {
    throw log.noKeysForPrincipalInKeyTab(principal, keyTab.getAbsolutePath());
  }
}

代码示例来源:origin: apache/directory-kerby

public EncryptionKey getEncryptionKey(int encryptType, int kvno) {

    if (kerberosKeySet != null) {
      KerberosKey[] keys = kerberosKeySet.toArray(new KerberosKey[kerberosKeySet.size()]);
      // We don't check the kvno here - see DIRKRB-638
      return GssUtil.getEncryptionKey(keys, encryptType);
    }

    // Otherwise get it from the keytab
    KerberosPrincipal princ = new KerberosPrincipal(name.getPrincipalName().getName(),
                            name.getPrincipalName().getNameType().getValue());
    KerberosKey[] keys = keyTab.getKeys(princ);
    return GssUtil.getEncryptionKey(keys, encryptType, kvno);
  }
}

代码示例来源:origin: org.jboss.eap/wildfly-client-all

private void checkKeyTab() throws IOException {
  KeyTab kt = KeyTab.getInstance(keyTab);
  if (!kt.exists()) {
    throw log.keyTabDoesNotExists(keyTab.getAbsolutePath());
  }
  if (kt.getKeys(new KerberosPrincipal(principal)).length == 0) {
    throw log.noKeysForPrincipalInKeyTab(principal, keyTab.getAbsolutePath());
  }
}

代码示例来源:origin: org.wildfly.security/wildfly-elytron-mechanism-gssapi

private void checkKeyTab() throws IOException {
  KeyTab kt = KeyTab.getInstance(keyTab);
  if (!kt.exists()) {
    throw log.keyTabDoesNotExists(keyTab.getAbsolutePath());
  }
  if (kt.getKeys(new KerberosPrincipal(principal)).length == 0) {
    throw log.noKeysForPrincipalInKeyTab(principal, keyTab.getAbsolutePath());
  }
}

代码示例来源:origin: org.wildfly.security/wildfly-elytron-auth-util

private void checkKeyTab() throws IOException {
  KeyTab kt = KeyTab.getInstance(keyTab);
  if (!kt.exists()) {
    throw log.keyTabDoesNotExists(keyTab.getAbsolutePath());
  }
  if (kt.getKeys(new KerberosPrincipal(principal)).length == 0) {
    throw log.noKeysForPrincipalInKeyTab(principal, keyTab.getAbsolutePath());
  }
}

相关文章