【问题标题】:Federated security using Thinktecture IdentityServer使用 Thinktecture IdentityServer 的联合安全性
【发布时间】:2013-05-25 21:46:39
【问题描述】:

我有几个 mvc 应用程序仍在开发中,并使用带有 SimpleMembership 的表单来注册和验证用户,这些应用程序使用相同的数据库,并且我在 UserProfile 表中都有来自简单成员资格的外键。最近我决定试一试联合安全性,只是为了在不重新设计轮子的情况下获得 SSO,但我对一些事情感到困惑。

我应该将 Identity Server 设置为使用与我的应用程序相同的数据库吗?然后我可以以某种方式将 userID 放在声明或其他内容中,这样我就知道如何从其他表中获取该用户的信息,这是正确的吗?

在使用联合安全性时如何进行常规表单注册?我认为注册可以在任何应用程序中完成,在身份服务器使用的表中插入行或将 STS 调整为用户简单的成员资格表以进行身份​​验证,这是正确的吗?

是否可以从每个单独的 RP(mvc 应用程序)对用户进行身份验证,并且仍然可以在不将用户重定向到 STS 的情况下获得 SSO?以某种方式使用内部 HTTP 请求

STS 失败时会发生什么?那么用户是否无法登录任何应用程序?有什么解决办法吗?

【问题讨论】:

    标签: asp.net-mvc single-sign-on claims-based-identity federated-identity thinktecture-ident-server


    【解决方案1】:

    我应该设置 Identity Server 以使用与我的应用程序相同的数据库吗?

    如果你愿意,你可以。

    使用联合安全性时如何进行常规表单注册?

    这取决于您和(当前)在 IdentityServer 领域之外。

    是否可以从每个单独的 RP(mvc 应用程序)对用户进行身份验证,并且仍然可以在不将用户重定向到 STS 的情况下获得 SSO?

    并非如此——通过浏览器的 SSO 就是重定向回 IdP,因为用户是通过浏览器登录到 IdP 的。只有当 IdP 确信用户的身份时,它才会向 RP 发出令牌。

    STS 失败时会发生什么?那么用户是否无法登录任何应用程序?有什么解决办法吗?

    STS 是您企业的关键部分,因此您希望尽一切努力确保它正常运行。

    【讨论】:

    • 谢谢你的回答,没有例子真的很痛苦,好像你知道这个东西,因为这是跨域的,是每个域都需要SSL证书还是只为STS?
    • 所有网站都需要 SSL。我的意思是——当然,只有你关心网络上的数据保护;)
    • @leastprivilege 好吧,这很糟糕,但是哦。那么在 RP 上使用带有用户名/密码和 Web 身份登录按钮的表单并将 POST 表单重定向到 STS 是否安全?我想让用户更容易登录吗?
    • @Unavailable 你可以动态配置 homeRealm 来告诉 fp 你的用户在你的 UI 中选择了什么。这样,用户看到他们的提供者并不知道他们首先去了 fp。
    猜你喜欢
    • 2014-02-01
    • 2013-09-13
    • 2016-05-03
    • 2014-08-01
    • 2014-09-25
    • 1970-01-01
    • 2015-05-02
    • 1970-01-01
    • 2013-08-04
    相关资源
    最近更新 更多