Asp.net mvc 4 身份验证ACS-只允许少数活动ID登录

Asp.net mvc 4 身份验证ACS-只允许少数活动ID登录,asp.net-mvc-4,authentication,azure,wif,acs,Asp.net Mvc 4,Authentication,Azure,Wif,Acs,我正在尝试使用ACS对我的一个网站上的用户进行身份验证。我正在使用Windows Live作为身份提供程序。我只想限制对几个活动ID的访问。我该怎么做呢。我是否需要为此设置自定义身份提供程序?否,您不能使用ACS!当与ACS一起用作IdP时,LiveID(Microsoft帐户)不会提供姓名或电子邮件声明。因此,您无法区分谁已登录,只能区分一些人已登录 Azure AD self提供了一个这样做的选项。正如瓜拉夫所描述的(不知道他为什么不把它作为答案发布)。因此,您可以拥有Azure广告租户。在

我正在尝试使用ACS对我的一个网站上的用户进行身份验证。我正在使用Windows Live作为身份提供程序。我只想限制对几个活动ID的访问。我该怎么做呢。我是否需要为此设置自定义身份提供程序?

否,您不能使用ACS!当与ACS一起用作IdP时,LiveID(Microsoft帐户)不会提供姓名或电子邮件声明。因此,您无法区分谁已登录,只能区分一些人已登录

Azure AD self提供了一个这样做的选项。正如瓜拉夫所描述的(不知道他为什么不把它作为答案发布)。因此,您可以拥有Azure广告租户。在此租户中,您可以将Live ID添加为外部帐户。现在,您可以将应用程序配置为仅信任该Azure广告


另一个选择是完全手动操作。通过使用或,您可以构建身份验证。如果您请求并获得用户的授权,这些SDK将向您传递用户的电子邮件地址(LiveID)。然后,您可以在您的应用程序中本地决定该用户是否可以访问它。

在裸体wif中,我将拥有我的自定义ClaimsAuthorizationManager,并拒绝除这几个之外的所有其他名称声明。绝对不是自定义身份提供者,因为你希望live成为你的提供者,不是吗?@WiktorZychla,是的,我希望live成为身份提供者。好的,所以我必须在应用程序级别进行。如果我能在ACS级别上做到这一点,那不是很好吗?Azure广告能代替ACS吗?@Gaurav可以。但我不确定是否可以在广告中使用Windows Live作为身份提供商。当然可以。看看这种方法是否有意义:创建一个全新的Azure广告。将用户添加到该广告中的方法之一是提供实时ID。因此,您要做的是添加您希望通过其live ID授予您的应用程序访问权限的用户,并让您的应用程序根据该AD进行身份验证。AD将实际的身份验证过程委托给Microsoft帐户。