首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在现有Webform asp.net上集成WAAD

在现有Webform asp.net上集成WAAD
EN

Stack Overflow用户
提问于 2014-05-02 04:46:15
回答 1查看 773关注 0票数 2

我正在寻找一步一步的指南,如何将现有的Web asp.net应用程序转换为使用身份验证(WAAD)。

我们可以假设我们不必将用户转换/迁移到Azure AD。

FYI:我没有任何问题,使用WebApplication创建一个空白的VS2013连接到WAAD,但是我不清楚为什么在现有的Webform / MVC混合应用程序中需要修改。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-11-07 21:48:26

我使用概述的http://www.cloudidentity.com/blog/2014/02/20/ws-federation-in-microsoft-owin-componentsa-quick-start/步骤创建了一个空白项目

从空白项目移动/复制web.config部分

代码语言:javascript
复制
<configuration>
  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    <section name="system.identityModel" type="System.IdentityModel.Configuration.SystemIdentityModelSection, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
    <section name="system.identityModel.services" type="System.IdentityModel.Services.Configuration.SystemIdentityModelServicesSection, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
  </configSections>
  <appSettings>
    <add key="ida:FederationMetadataLocation" value="https://login.windows.net/myorganizationdomain.com/FederationMetadata/2007-06/FederationMetadata.xml" />
    <add key="ida:Realm" value="https://mywebsite.com/myproject" />
    <add key="ida:AudienceUri" value="https://localhost:44318/" />
  </appSettings>
    <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-myproject.mdf;Initial Catalog=aspnet-myproject;Integrated Security=True" providerName="System.Data.SqlClient" />
  </connectionStrings>
    <system.web>
    <authentication mode="None" />
    <authorization>
      <deny users="?" />
    </authorization>
    <compilation debug="true" targetFramework="4.5.1" />
    <httpRuntime targetFramework="4.5.1" requestValidationMode="4.5" />
  </system.web>

<system.identityModel>
  <identityConfiguration>
    <issuerNameRegistry type="myproject.Utils.DatabaseIssuerNameRegistry, myProject" />
    <audienceUris>
      <add value="https://mywebsite.com/myproject" />
    </audienceUris>
    <securityTokenHandlers>
      <add type="System.IdentityModel.Services.Tokens.MachineKeySessionSecurityTokenHandler, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      <remove type="System.IdentityModel.Tokens.SessionSecurityTokenHandler, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
    </securityTokenHandlers>
    <certificateValidation certificateValidationMode="None" />
  </identityConfiguration>
</system.identityModel>
<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" />
  </modules>
</system.webServer>
<system.identityModel.services>
  <federationConfiguration>
    <cookieHandler requireSsl="true" />
    <wsFederation passiveRedirectEnabled="true" issuer="https://login.windows.net/myorganizationdomain.com/wsfed" realm="https://mywebsite.com/myproject" requireHttps="true" reply="https://localhost:44318/" persistentCookiesOnPassiveRedirects="true" />
  </federationConfiguration>
</system.identityModel.services>

  • 将从Utils文件夹生成的代码DatabaseIssuerNameRegistry.cs从“空白”项目复制到现有项目中。
  • 将theTenantRegistrationModels.cs和TenantDbContext.cs从“空白”项目复制到现有项目中
  • 将IdentityConfig.cs从“空白”项目复制到现有项目中

在Global.asx.cs中添加以下内容

代码语言:javascript
复制
IdentityConfig.ConfigureIdentity();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23420907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档