wcf - 使用 WIF 创建自定义 STS-IP 以及为什么不

标签 wcf wcf-data-services saml wif

我需要为我们的 Web 应用程序和服务实现 STS-IP 服务器。服务器将需要为以下场景颁发 SAML token :

  • 业务合作伙伴提交他们的 SAML token ,该 token 将转换为具有我们应用程序所需声明的 SAML token 。此 token 用于访问我们的 Web 应用程序和服务。
  • 我们面向公众的应用程序需要用户登录(通过表单例份验证),然后使用 SAML token 访问我们的 Web 应用程序和服务。
  • 我们的客户端(没有 STS 信任)需要使用我们的 STS-IP 服务器进行身份验证,获取 SAML token ,并使用该 token 访问我们的 WCF 服务。

  • 在所有 3 个场景中,我们都需要对我们的应用程序和服务使用的 SAML token 进行自定义声明。我们的想法是一旦我们识别出用户,我们就会在我们的后端系统中查找他们的授权并附加声明。

    在这些场景中,您可以假设后端身份验证存储是自定义实现,身份验证存储在 Active Directory 中,授权存储在数据库中。

    所以我的想法是,我们需要使用 Windows Identity Framework 之类的东西创建一个自定义的 STS-IP 服务器。但我也一直读到你不应该这样做,因为这可能需要一些时间。

    我可以使用现成的 STS-IP 服务器吗?我所看到的一切都是一个系统到另一个系统(SAML 到 SAML 或 AD 到 SAML)之间的映射。

    为什么构建一个生产就绪的 STS-IP 需要“很长时间”?我很容易地使用 WIF 构建了一个,但我想我不明白这样做的风险。

    最佳答案

    就“这将需要很长时间”而言,显示如何执行此操作的文档非常差。看这里:http://social.msdn.microsoft.com/Forums/en-US/Geneva/thread/257d93be-165e-45a6-a277-fc7ed2286e7d/

    无论如何,您只需查看 Microsoft 提供的代码示例:Google for Identity Developer Training Kit。这应该可以帮助您入门。

    关于wcf - 使用 WIF 创建自定义 STS-IP 以及为什么不,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3255550/

    相关文章:

    java - Name 和 FriendlyName 有什么区别?

    wcf - 在 WCF 服务关闭之前执行操作

    c# - 如何将对象列表发送到 WCF 服务?

    objective-c - 在 RestKit for iOS 中执行 postObject 时忽略响应

    wcf - 以编程方式拦截 wcf 请求/响应

    使用 Java 的 SAML 身份提供商

    java - AuthnRequest 中的 SAML 请求属性

    wcf - IIS7自动启动时自动启动应用程序/global.asax/wcf服务

    wcf - 使 WCF OperationContext 与 DI 和测试很好地配合使用

    .net - 使用 UriTemplate 在 WCF 中组合 SOAP/JSON/XML