C# 单点登录ASP身份保护多个应用程序

C# 单点登录ASP身份保护多个应用程序,c#,asp.net,security,single-sign-on,adfs,C#,Asp.net,Security,Single Sign On,Adfs,我对我可用的单一登录选项非常陌生。我目前需要保护同一产品系列中的多个应用程序集,但不知道从哪里开始 一些基本要求是: 用户应该能够进行一次身份验证,并根据凭据将用户重定向到所需的应用程序 应为管理员提供一个中央管理控制台,以简化角色分配,并根据需要授予对各种应用程序的访问权限 用户可以注册某些应用程序,但某些敏感应用程序需要管理员批准才能成功登录 此SSO还应使用某种权限逻辑保护API,例如,只有主管角色才能删除记录 用户应该能够向OAuth提供商注册,如Facebook、Twitter、Goo

我对我可用的单一登录选项非常陌生。我目前需要保护同一产品系列中的多个应用程序集,但不知道从哪里开始

一些基本要求是:

  • 用户应该能够进行一次身份验证,并根据凭据将用户重定向到所需的应用程序
  • 应为管理员提供一个中央管理控制台,以简化角色分配,并根据需要授予对各种应用程序的访问权限
  • 用户可以注册某些应用程序,但某些敏感应用程序需要管理员批准才能成功登录
  • 此SSO还应使用某种权限逻辑保护API,例如,只有主管角色才能删除记录
  • 用户应该能够向OAuth提供商注册,如Facebook、Twitter、Google和Windows live
  • SSO提供商应易于在多种平台上实现,如Windows应用程序、Web应用程序、移动和服务
  • 我不知道从哪里开始,我已经快速阅读了一些类似ADFS的内容,但不知道这是否能满足上面列出的所有要求


    如果您能帮我指出正确的方向,我将不胜感激

    您混淆了两个不同的概念,即:

    • 认证
    • 供应
    ADFS只做前者。您需要一个身份管理器(IM)来完成后者

    因此:

    用户应该能够进行一次身份验证,并根据凭据将用户重定向到所需的应用程序

    我将专注于微软世界。ADFS和Azure广告都可以做到这一点。用户-->应用程序-->IDP-身份验证-->返回应用程序

    应为管理员提供一个中央管理控制台,以简化角色分配,并根据需要授予对各种应用程序的访问权限

    即时通讯功能。AAD可以执行组分配,但实际上没有工作流。您可以在Windows Server中使用“Active Directory用户控制”手动编辑AD属性,以供ADF使用

    用户可以注册某些应用程序,但某些敏感应用程序需要管理员批准才能成功登录

    IM-需要工作流

    此SSO还应使用某种权限逻辑保护API,例如,只有主管角色才能删除记录

    这两者都是。ADFS 4.0(Server 2016)可以像AAD一样保护web API。删除角色是如上所述

    用户应该能够向OAuth提供商注册,如Facebook、Twitter、Google和Windows live

    微软的社交互动有限。您可以使用AAD添加一些社交提供商。我使用Auth0和federate,因为它有大量的社交提供者。Azure B2C在这里可能很有用

    SSO提供商应易于在多种平台上实现,如Windows应用程序、Web应用程序、移动和服务

    对于web应用程序,您可以使用SAML、WS-Fed、OpenID Connect和OAuth

    对于Windows应用程序,您可以使用OpenID Connect&OAuth

    对于移动和服务,您可以使用OpenID Connect和OAuth。(注意,有四个流程可满足不同的场景)


    ADFS 4.0(Server 2016)和AAD可以支持上述所有功能。

    Thanx获取信息!你可能有一个链接到我应该阅读的关于上述所有内容的一些文件吗?没关系,我找到了你在这里所说的内容: