【问题标题】:authentication integration issue身份验证集成问题
【发布时间】:2016-12-30 04:00:40
【问题描述】:

我正在使用 SharePoint 2007 Enterprise + 发布门户模板 + Windows Server 2008。我正在使用 VSTS 2008 + C# + .Net 3.5 进行开发。我需要在另一个站点上实现 SSO(单点登录功能)。 SSO协议是这样的,

  1. 其他网站会向我发送http://mysitename/default.aspx?Identity=abchttp://mysitename/default.aspx 之类的信息(mysitename 是我正在开发的网站);
  2. 如果Identity变量的值为null,则表示匿名用户。如果 Identity 值不为 null(表示经过身份验证的用户),我将使用 WCF 接口从 Identity 变量中查找用户信息(例如用户名和电子邮件地址);
  3. 实际用户名、用户资料(例如电子邮件地址)和密码由其他站点维护;
  4. 我的站点将自行管理角色(即对方站点和我的站点仅共享用户凭据认证功能以实现 SSO,角色管理在两个站点中单独执行)。

任何想法如何集成这样的 SSO 功能?

【问题讨论】:

    标签: c# .net visual-studio-2008 single-sign-on sharepoint-2007


    【解决方案1】:

    您需要做的第一件事是找到一种方法来验证您的应用程序是从受信任的站点调用的。这意味着用户名在发送之前必须被加密。因此两个站点可以共享用于encrypt and decrypt 敏感信息的私钥。

    1. SiteA 使用密钥加密用户名并将其发送到 SiteB(您的站点)
    2. SiteB 使用相同的密钥解密用户名并检索用户配置文件。

    【讨论】:

    • 对不起,达林,我没有使用你提到的密钥加密方法。另一个站点具有自我发明的方法来生成标识经过身份验证的用户的随机字符串(即我在原始问题中提到的“身份”变量。目标站点可以从 WCF 服务中读取以检查这种随机的“身份”字符串已验证)。实际上,我的问题不是如何使身份验证集成安全,而是如何利用其他站点在 SharePoint 站点中使用的现有身份验证协议来实现 SSO 效果。有什么解决办法吗?
    猜你喜欢
    • 2012-03-22
    • 2010-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多