gpt4 book ai didi

Java 从 Kerberos 票证收集用户信息

转载 作者:行者123 更新时间:2023-12-02 06:01:28 29 4
gpt4 key购买 nike

我的 Java 桌面应用程序使用 JAAS 模块 Krb5LoginModule 从 Active Directory 获取 Kerberos 票证;这是代码:

System.setProperty("java.security.krb5.realm", realmName);
System.setProperty("java.security.krb5.kdc", realmAddress);
System.setProperty("java.security.auth.login.config", pathToFile);
LoginContext ctx = new LoginContext("SignedOnUserLoginContext");
ctx.login();
Subject signedOnUserSubject = ctx.getSubject();

这是模块:

SignedOnUserLoginContext {
com.sun.security.auth.module.Krb5LoginModule
required
useTicketCache=true
doNotPrompt=true;
};

此代码工作正常,我可以单点登录,但我不知道如何使用此票证收集一些用户信息,例如给定的名称。

有人有什么提示吗?

最佳答案

从主题中,您可以检索已登录的主体:

Principal principal = signedOnUserSubject.getPrincipals().iterator().next();

现在您可以获取主体名称:principal.getName()

有了这些信息,您应该能够查询 Activity 目录以获取有关登录用户的更多信息,例如名字、电话号码、...

关于Java 从 Kerberos 票证收集用户信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22636813/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com