Asp.net mvc Azure Active Directory在开发本地主机时禁用

Asp.net mvc Azure Active Directory在开发本地主机时禁用,asp.net-mvc,azure,active-directory,global,Asp.net Mvc,Azure,Active Directory,Global,在我开发应用程序时,有没有办法禁用或绕过Azure Active Directory?我尝试了以下方法,但它仍然重定向到AAD进行身份验证 protected void Application_Start() { AreaRegistration.RegisterAllAreas(); //IdentityConfig.ConfigureIdentity(); commented out for dev. 12/12/2014 Filter

在我开发应用程序时,有没有办法禁用或绕过Azure Active Directory?我尝试了以下方法,但它仍然重定向到AAD进行身份验证

protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();
        //IdentityConfig.ConfigureIdentity(); commented out for dev. 12/12/2014
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
    }

    //private void WSFederationAuthenticationModule_RedirectingToIdentityProvider(object sender, RedirectingToIdentityProviderEventArgs e)
    //{
    //    if (!String.IsNullOrEmpty(IdentityConfig.Realm))
    //    {
    //        e.SignInRequestMessage.Realm = IdentityConfig.Realm;
    //    }
    //}
我注释掉了IdentityConfig.cs中的方法,仍然重定向到AAD

建议很受欢迎

这是我的web.config:

<appSettings>
  <add key="webpages:Version" value="3.0.0.0" />
  <add key="webpages:Enabled" value="false" />
  <add key="ClientValidationEnabled" value="true" />
  <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  <add key="ida:FederationMetadataLocation" value="https://login.windows.net/accountname.onmicrosoft.com/FederationMetadata/2007-06/FederationMetadata.xml" />
  <add key="ida:Realm" value="https://accountname.onmicrosoft.com/application.WebUI" />
  <add key="ida:AudienceUri" value="https://accountname.onmicrosoft.com/application.WebUI" />
  <add key="StorageConnectionString" value="DefaultEndpointsProtocol=https;AccountName=accountname;AccountKey=+mykey==" />
</appSettings>


<system.webServer>
<modules>
  <add name="WSFederationAuthenticationModule" type="System.IdentityModel.Services.WSFederationAuthenticationModule, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="managedHandler" />
  <add name="SessionAuthenticationModule" type="System.IdentityModel.Services.SessionAuthenticationModule, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="managedHandler" />
  <remove name="ApplicationInsightsWebTracking" />
  <add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Extensibility.Web.RequestTracking.WebRequestTrackingModule, Microsoft.ApplicationInsights.Extensibility.Web" preCondition="managedHandler" />
</modules>
<validation validateIntegratedModeConfiguration="false" />
</system.webServer>
<system.identityModel.services>
<federationConfiguration>
  <cookieHandler requireSsl="true" />
  <wsFederation passiveRedirectEnabled="true" issuer="https://login.windows.net/onalabama.onmicrosoft.com/wsfed" realm="https://onalabama.onmicrosoft.com/Procurement.WebUI" requireHttps="true" />
 </federationConfiguration>
 </system.identityModel.services>

此解决方案不是很通用,但如果您要部署到Azure网站,则可能只是您想要的解决方案。在允许用户访问您的站点之前,您可以要求Azure网站使用AAD强制执行身份验证

基本上,您可以在代码中不使用任何AAD的情况下在本地进行开发,并以这种方式进行部署。在Azure门户的“配置”选项卡上进行配置后,将为Azure网站配置身份验证(无需代码)

这是一篇很好的文章:


目前存在一些限制(请参阅本文),但我已经发现在一些情况下这很方便。

您是否检查了web.config中的标识配置?我添加了我的web.config代码。