Azure Active Directory 组织身份验证机制
Azure Active Directory Organizational Authentication Mechasnim
我最近开始开发 ASP.NET MVC 网络应用程序,它在 Azure Active Directory 上使用组织身份验证。
并且我成功地部署了应用程序并且它 运行 正确。
但是,我仍然不确定用于提供Active Directory 组织身份验证的Federation WS 的底层工作机制。
当网站 运行 呈现主页之前,应用程序立即将用户重定向到 Microsoft 登录站点。我无法在应用程序中找到任何实现此目的的代码。我试图在 Global.asax 中注释掉 IdentityConfig 方法,但重定向仍在发生。
我想知道应用程序何时以及如何启动身份验证过程,以及在用户单击“登录”超链接之前抑制身份验证过程是否可能且安全。
要将 AD 身份验证添加到 ASP.NET WebApps/VNext,您可以使用新的 ADAL 库,这里有很多示例 https://github.com/AzureADSamples. You can use this for example: https://github.com/AzureADSamples/WebApp-WSFederation-DotNet,这完全由用户操作驱动。
我发现解决方案非常简单。只需删除:
<system.web>
<!-- remove/comment out
<authorization>
<deny users="?" />
</authorization>
-->
</system.web>
在 Web.config 中。这将告诉 WSFederationAuthenticationModule 不要执行重定向事件并允许 public 页面中的匿名用户。
如果您在 ASP.NET MVC 中进行开发,则在需要身份验证时将 [Authorize] 属性应用于操作或控制器。
如果您在 ASP.NET Web 表单中开发,请添加以下内容:
<configuration>
<!-- Add the following configuration-->
<location path="Admin">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
</configuration>
以上配置将强制用户登录 Azure Active Directory,以便在您的 Web 应用程序中访问 'Admin' 的相对位置路径(例如 http://localhost:8080/Admin)。
我最近开始开发 ASP.NET MVC 网络应用程序,它在 Azure Active Directory 上使用组织身份验证。
并且我成功地部署了应用程序并且它 运行 正确。
但是,我仍然不确定用于提供Active Directory 组织身份验证的Federation WS 的底层工作机制。
当网站 运行 呈现主页之前,应用程序立即将用户重定向到 Microsoft 登录站点。我无法在应用程序中找到任何实现此目的的代码。我试图在 Global.asax 中注释掉 IdentityConfig 方法,但重定向仍在发生。
我想知道应用程序何时以及如何启动身份验证过程,以及在用户单击“登录”超链接之前抑制身份验证过程是否可能且安全。
要将 AD 身份验证添加到 ASP.NET WebApps/VNext,您可以使用新的 ADAL 库,这里有很多示例 https://github.com/AzureADSamples. You can use this for example: https://github.com/AzureADSamples/WebApp-WSFederation-DotNet,这完全由用户操作驱动。
我发现解决方案非常简单。只需删除:
<system.web>
<!-- remove/comment out
<authorization>
<deny users="?" />
</authorization>
-->
</system.web>
在 Web.config 中。这将告诉 WSFederationAuthenticationModule 不要执行重定向事件并允许 public 页面中的匿名用户。
如果您在 ASP.NET MVC 中进行开发,则在需要身份验证时将 [Authorize] 属性应用于操作或控制器。
如果您在 ASP.NET Web 表单中开发,请添加以下内容:
<configuration>
<!-- Add the following configuration-->
<location path="Admin">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
</configuration>
以上配置将强制用户登录 Azure Active Directory,以便在您的 Web 应用程序中访问 'Admin' 的相对位置路径(例如 http://localhost:8080/Admin)。