在不同的 Microsoft 产品集中尝试 SSO
我正在考虑使用一组 MS 产品(CRM、SharePoint、SSRS、ASP.NET)实现单点登录用户体验,该体验基于 Windows Identity Foundation (WIF) 驱动的 ASP.NET 应用程序中生成的令牌。
我想知道是否有一种简单的方法来测试/示例 ASP.NET 应用程序中生成的 IP-STS 令牌是否允许使用该集中的其他应用程序类型进行身份验证?我没有安装 SharePoint 或 CRM。
任何想法表示赞赏
I am looking at achieving a single sign-on user experience with a set of MS products (CRM, SharePoint, SSRS, ASP.NET), based on a token generated within an ASP.NET application driven by Windows Identity Foundation (WIF).
I wonder if there is a simple way to test / example out there whether a IP-STS token generated within an ASP.NET application will allow authentication with the other applciation types in the set? I do not have a SharePoint or CRM installation.
Any ideas appreciated
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
需要澄清的是:令牌不是在 ASP.NET 应用程序中生成的。它是在称为 IP-STS(或 STS、身份提供商或 I-STS:所有含义相同)的外部实体中发布的。有时,IP-STS 是使用 ASP.NET 实现的,但这只是实现细节。 STS不是您的应用程序。
一般来说,为一个应用程序(例如 ASP.NET 应用程序)创建的令牌不能在另一应用程序中重复使用。但这并不是具有基于声明的身份的 SSO 的要求。
根据您提供的详细信息,对于 100% 基于 MSFT 的应用程序组合(自定义或打包),最简单的 SSO 体验可能就是仅使用 Windows 身份验证。特别是如果您使用 AD 进行身份验证。在这种情况下,一切正常。
基于声明的方法在以下情况下有意义:
您的合作伙伴)
公司之间相互作用)
技术堆栈(应用程序和身份部分)
如果 Windows 身份验证不可行,并且您仍然想使用声明,那么您需要:
One clarification: the token is not generated within the ASP.NET application. It is issued in an external entity which is called an IP-STS (or STS, or Identity Provider, or I-STS: all mean the same). Sometimes, the IP-STS is implemented with ASP.NET, but that's an implementation detail. The STS is not your app.
In general a token created for one app (the ASP.NET app, for example) cannot be reused in another one. But that is not a requirement for SSO with claims based identity.
With the details you provided, the simplest SSO experience with a 100% MSFT based portfolio of apps (custom or packaged) might be to just use Windows Authentication. Especially if you use AD for authentication. In this case, all just works.
A claims based approach makes sense when:
your partners)
companies interacting with each other)
technology stacks (both on the apps and the identity pieces)
If Windows Authentication is not feasible and you still want to use claims then you need to:
最新版本的 SharePoint 支持 Windows Identity Foundation (WIF) 和基于声明的身份验证 (http://msdn.microsoft.com/en-us/library/ff953202.aspx)和 Dynamics CRM (http://msdn.microsoft.com/en-us/library/gg334502.aspx)。
对于 SSRS,您需要创建自定义安全扩展 (http://msdn .microsoft.com/en-us/library/ms155029.aspx),或者如果它在 SharePoint 上下文中,您可以将其配置为使用基于声明的身份验证:http://technet.microsoft.com/en-us/library/ff487970.aspx。
如果您使用这些产品,您应该能够与其他支持 WIF 的 ASP.NET 应用程序实现单点登录。
Windows Identity Foundation (WIF) and claims-based authentication are supported on the latest versions of SharePoint (http://msdn.microsoft.com/en-us/library/ff953202.aspx) and Dynamics CRM (http://msdn.microsoft.com/en-us/library/gg334502.aspx).
For SSRS, you'll need to create a custom security extension (http://msdn.microsoft.com/en-us/library/ms155029.aspx), or if it's in the context of SharePoint, you can configure it to use claims-based authentication: http://technet.microsoft.com/en-us/library/ff487970.aspx.
If you are using these products, you should be able to achieve single sign-on with your other WIF-enabled ASP.NET applications.
值得一提的是,它还与 Office 365 和 Azure ACS 集成。
它还与基于 Java 的产品(OpenAM、Ping Identity ...)集成,其中一些是免费的,但下载、安装和配置这些产品需要大量工作。
我不知道有什么“简单”的方法可以证明安装该产品的不足。
有大量关于 WIF / ADFS / SSO 互操作性的文献。有什么特殊原因让您不能将此视为已读吗?
Just to mention it also integrates with Office 365 and Azure ACS.
It also integrates with Java based products (OpenAM, Ping Identity ...) some of which are free but it's a ton of work to download, install and configure these.
I'm not aware of an "easy" way to prove this short of installing the product.
There's a ton of literature on the interoperability of WIF / ADFS / SSO. Is there a particular reason why you can't take this as read?