Single sign on 对STS和WIF感到困惑

Single sign on 对STS和WIF感到困惑,single-sign-on,wif,adfs,Single Sign On,Wif,Adfs,我正在建立3个新网站,并希望使用WIF4.5跨这3个不同的领域进行SSO。我已经阅读了大量关于WIF的资料,虽然我理解WIF的原则和目的,但我仍然对它在现实生活中的工作方式感到非常困惑,请帮助我理解以下问题,非常感谢 我的所有网站都将使用共享托管服务托管 每个人都说没有必要构建自己的STS,但如果是这样的话,我在哪里可以找到可以用来登录用户的外部服务,以及新用户的正常用户注册界面呢?那么我现有的用户呢 如果我只需要构建基于声明的web应用程序,那么在真实的生产环境中,从何处获取用户身份?我必须支

我正在建立3个新网站,并希望使用WIF4.5跨这3个不同的领域进行SSO。我已经阅读了大量关于WIF的资料,虽然我理解WIF的原则和目的,但我仍然对它在现实生活中的工作方式感到非常困惑,请帮助我理解以下问题,非常感谢

我的所有网站都将使用共享托管服务托管

  • 每个人都说没有必要构建自己的STS,但如果是这样的话,我在哪里可以找到可以用来登录用户的外部服务,以及新用户的正常用户注册界面呢?那么我现有的用户呢

  • 如果我只需要构建基于声明的web应用程序,那么在真实的生产环境中,从何处获取用户身份?我必须支付他们的费用,还是他们需要通过我的网站来批准他们

  • 如果我使用STS,就不能再让用户在我的网站上注册了,这对吗

  • 如果我希望我的所有网站都是基于声明的网站,我是否需要启用SSL并购买X507证书

  • 我希望有一个共享的用户数据库来存储我们所有的用户,无论是老用户还是新用户,这是否意味着我必须构建自己的STS

  • 建立我自己的STS到底需要什么,我能把我的一个网站变成我自己网站的STS提供商吗

  • 建造STS需要多少成本?比如SSL、证书等

  • 如果我的网站是基于声明的,我可以像facebook/Google/Yahoo那样启用社交登录吗

  • 谢谢你们

  • 你绝对可以写你自己的sts
  • 您可以允许您的用户在sts中注册或与外部身份提供商(google/facebook)联合
  • 不,sts只是一个asp.net web应用程序,用户可以在那里注册
  • 不,但当涉及用户名/密码时,建议使用ssl
  • 不,您可以使用现有的sts,如IdentityServer,它允许您对自己的数据库使用自定义成员资格提供程序
  • 可以使用portecle或makecert等免费工具创建用于令牌签名的X509证书
  • 微软拥有支持Windows Live ID、Google、Yahoo!,和Facebook登录。除非您需要选择让用户在您的站点注册帐户,否则这可能是一个不错的选择。

    如果您想要(1)作为STS的免费解决方案,或者(2)想要拥有自己的Id存储,Thinktecture的identity server是一个不错的选择

    我写了一些关于如何做的教程


    好的,再次感谢您,威克托#2谷歌和facebook是否提供我可以连接的STS服务#7所以,如果我没弄错的话,thinktecture是一家STS身份提供商,你知道其他公司吗,比如微软,或者我应该在谷歌搜索什么?#2不,他们不提供STSE。相反,它们提供oauth2端点,oauth2是另一个sso协议。如果您创建一个新的asp.net 4.5 web应用程序,它将支持google/facebook开箱即用#7 adfs2是microsoft提供的免费sts,但它仅支持active directory后台存储。但是写你自己的sts真的很容易。你有一个很好的博客,就在我的书签里,:-)好的,顺便说一句,你网站上的教程是针对WIF4.5或更早版本的吗?我不明白为什么互联网上的每个人都说绝对没有必要写你自己的sts,当几乎没有可供使用的身份提供者时。我想我会按照你的建议去做,要么写我自己的STS,要么使用thinktecture。谢谢!!!!:感谢您的帮助,我也注意到了ACS,但是为了使用它,您需要购买许可证,以便在WIF4.5中提供名称空间和名称空间密钥。同时,我也很困惑广告和ACS如何在我这样的案例中提供帮助,3个公共网站都有一些受保护的内容和功能。我认为广告和ACS主要是在一个组织的内联网或外联网中使用的,这些内联网或外联网不暴露于“外部”世界。我认为ACS是免费的?AD和ACS是不同的动物。广告位于您的组织内部。它是一个凭证存储,ACS是Azure的一部分,因此被设计成外部世界的一部分。它不是一个凭证存储—这就是为什么您必须在其他地方进行身份验证,例如FB。谢谢,伙计,我从Thinktecture运行IP没有问题,问题是在V2.0中,它们只包含cshtml标记文件,没有实际的“代码隐藏”,所有内容都打包在DLL中。所以研究它有点难。