我们的组织有一个安全的应用程序,我们希望用户能够单击一次并登录他们的 Google Apps 帐户,而不必每次都输入用户名/密码组合。
我读过关于 OpenID、联合登录和单点登录的文章,但我不确定这些是否适合我们。这可能吗?如果可以,最简单的实现方法是什么?
答案1
你意识到提供这种能力使得很难称之为安全的不再应用。
实现单点登录是一种常见的方法之内一个组织,但它需要一个可以信赖的组织范围的身份验证框架。如果您运行 Active Directory,则可以使用它通过其 Kerberos 版本提供身份验证令牌,或者在 *nixes 下,您可以使用真正的 Kerberos。
尝试使用 SSO 向第三方验证您的用户身份需要一种向第三方提供身份验证令牌的方法。OpenID 可以满足您的目的,但它需要将令牌存储在用户的浏览器中,如果他们不锁定计算机,这将使他们容易受到攻击,或者允许您的内部身份验证系统在用户尝试登录时向 Google 提供 OpenID。
这并不简单,从纯粹的安全角度来看,我认为这是一个馊主意
建议的做法是让用户输入他们的用户名和密码组合,以至少向您提供一些保证,即是用户登录,而不是攻击者或其他人滥用其帐户。
有关安全方面的更多信息,请查看一些带有标签的问题验证在 Security SE 上。