我正在构建一个需要不同身份验证级别的android应用程序,我想使用Active Directory进行此操作。
据我所读,使用Kerberos是Microsoft建议的方式。如何在Android上执行此操作?我看到了javax.security.auth
doc,但是并不能告诉我太多。
我还在某处看到一条注释,指出Kerberos不包含用户组-这是真的吗?在那种情况下,我是否还必须以某种方式组合LDAP?
编辑
此处的主要目标是实现与 Activity 目录的LDAP连接,以便进行身份验证并为用户提供企业Android应用程序的正确权限。真正的障碍是Google从其端口到android遗漏了许多Java Web Services API。 (即javax.naming
)而且,Android jar中的许多连接机制似乎仅作为旧代码包括在内,实际上它们实际上什么也没做。
最佳答案
为此,最好完全呆在LDAP中,不要冒险使用kerberos。 Kerberos为您提供了“单一登录”的优势,但是由于您的android应用尚没有任何凭据,因此它并不能真正为您提供帮助。我想Google有其自己的理由不将javax.naming包含在发行版中。这是很重的东西。
您可能可以自己从Java运行时库源中移植内容,也可以使用 native LDAP库更好。例如,此one。
只要记住要使用安全的LDAP连接或至少使用安全的身份验证方法即可。有关此的更多信息是here。