【发布时间】:2013-08-07 21:14:36
【问题描述】:
我正在努力将一个应用程序与多个区域和极其精细的权限联合起来。每个不同的区域都有一个联合的 WCF 端点来与服务器进行通信。由于权限细化,包含所有权限的单个令牌可以大到 1MB,甚至更多。
要求在初始登录过程之后,用户的用户名和密码凭据不得保存在我们的代码库中。权限不能组合以创建更小的集合。我们将 Thinktecture.IdentityServer 用于我们的 STS 实现。
我建议的解决方案是在 STS 中将每个端点分解为自己的领域,并且 STS 将返回一个具有为该领域指定的权限声明的令牌。为了实现这一点,我想要一个 Auth 领域,它通过用户名/密码进行身份验证,并返回一个包含用户、租户和子组 ID 的令牌,然后可以将其用作向其他领域进行身份验证的凭据。
设置 STS 以发布特定于领域的令牌已实施。剩下的唯一要求是用户名/密码不在我们的代码库中。
是否可以通过提供以前从特定领域发布的令牌来配置 STS 以允许身份验证?有没有更好的解决方案我还没有想到?
【问题讨论】:
标签: wcf wif ws-federation thinktecture-ident-server