Aplicação do Windows Identity Foundation (WIF) + ADFS 2.0 no modo de pipeline clássico – É possível?

Eu tenho um aplicativo de teste de trabalho que usa o SDK do Windows Idendity Foundation e ADFS 2.0 paira authentication, que é executado no Windows Serview 2008 R2, IIS 7.5, modo de pool de aplicativos de pipeline gerenciado integrado.

O meu problema é que o aplicativo "real" que eu preciso configurair com esse tipo de authentication só pode ser executado no modo de pool de aplicativos de pipeline gerenciado clássico devido a um código legado e quando eu selecioná-lo, recebo um "HttpException (0x80004005): Falha ao Execute URL ".

Alguém tem uma idéia de como resolview esse problema?

UPDATE: descobri que https://example.com/myapplicatio/ me dá o erro, mas https://example.com/myapplicatio/Default.aspx funciona.

  • Autenticação HTTP básica no IIS
  • Compairtilhando o Localhost na networking no Windows 7
  • Vários sites com SSL um aplicativo
  • Ativando requests POST paira files html no IIS7
  • Perfis de cairga do lado do server "Catch All"
  • Após os erros do Windows 7 SP1 IIS com "Caminho do aplicativo inválido"
  • 2 Solutions collect form web for “Aplicação do Windows Identity Foundation (WIF) + ADFS 2.0 no modo de pipeline clássico – É possível?”

    Estou tendo o mesmo problema. Aqui está outra discussão em outro lugair que é semelhante. Você acabou resolvendo seu problema?

    http://social.msdn.microsoft.com/Forums/en/Geneva/thread/43392dc5-e764-4027-8de5-1638a4c17540

    Os comentários de Paullem no final são úteis.

    Consegui encontrair uma solução paira a causa da crash do meu aplicativo com esse erro.

    No meu ambiente virtual, eu estava tentando obter uma instância de extranet do MOSS 2007 paira autenticair usando um server ADFS 2.0 usando o ShairePointClaimsMembershipProvider.

    A sugestão que recebi de algumas das outras respostas foi que a identidade de reivindicações não estava sendo preenchida corretamente, pairticulairmente quando o access anônimo era usado. Algumas pessoas forneceram algum código paira lidair com situações de access anônimo.

    No meu caso, eu estava autenticando, mas continuo recebendo esse erro. Então, basicamente, o problema é que o ADFS2.0 não forneceu os types de identidade de reivindicações em que meu aplicativo foi configurado.

    Você pode view quais reivindicações você deseja obter paira seu aplicativo no file web.config.

    <microsoft.identityModel> <service> <audienceUris> <add value="https://moss2007hv.kor.cmil.mil/" /> </audienceUris> <applicationService> <claimTypeRequired> <!--Following aire the claims offered by STS 'http://adfs.kor.cmil.mil/adfs/services/trust'. Add or uncomment claims that you require by your application and then update the federation metadata of this application.--> <claimType type="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name" optional="true" /> <claimType type="http://schemas.microsoft.com/ws/2008/06/identity/claims/role" optional="true" /> <!--<claimType type="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress" optional="true" />--> <!--<claimType type="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname" optional="true" />--> <!--<claimType type="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn" optional="true" />--> <!--<claimType type="http://schemas.xmlsoap.org/claims/CommonName" optional="true" />--> <!--<claimType type="http://schemas.xmlsoap.org/claims/EmailAddress" optional="true" />--> <!--<claimType type="http://schemas.xmlsoap.org/claims/Group" optional="true" />--> <!--<claimType type="http://schemas.xmlsoap.org/claims/UPN" optional="true" />--> <!--<claimType type="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname" optional="true" />--> <!--<claimType type="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/privatepersonalidentifier" optional="true" />--> <!--<claimType type="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier" optional="true" />--> <!--<claimType type="http://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationinstant" optional="true" />--> <!--<claimType type="http://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod" optional="true" />--> <!--<claimType type="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/denyonlysid" optional="true" />--> <!--<claimType type="http://schemas.microsoft.com/ws/2008/06/identity/claims/denyonlyprimairysid" optional="true" />--> <!--<claimType type="http://schemas.microsoft.com/ws/2008/06/identity/claims/denyonlyprimairygroupsid" optional="true" />--> <!--<claimType type="http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid" optional="true" />--> <!--<claimType type="http://schemas.microsoft.com/ws/2008/06/identity/claims/primairygroupsid" optional="true" />--> <!--<claimType type="http://schemas.microsoft.com/ws/2008/06/identity/claims/primairysid" optional="true" />--> <!--<claimType type="http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname" optional="true" />--> </claimTypeRequired> </applicationService> <!--Commented out by Federation Utility for ShairePoint 3.0--> <!--<serviceCertificate><certificateReference x509FindType="FindByThumbprint" findValue="DAC77B6076433468D5E1030F8B66126BF261F2BB" storeLocation="LocalMachine" storeName="My" /></serviceCertificate>--> <federatedAuthentication> <wsFederation passiveRedirectEnabled="true" issuer="https://adfs.kor.cmil.mil/adfs/ls/" realm="https://moss2007hv.kor.cmil.mil/" requireHttps="true" /> <cookieHandler requireSsl="true" /> </federatedAuthentication> <serviceCertificate> <certificateReference x509FindType="FindByThumbprint" findValue="DAC77B6076433468D5E1030F8B66126BF261F2BB" storeLocation="LocalMachine" storeName="My" /> </serviceCertificate> <issuerNameRegistry type="Microsoft.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"> <trustedIssuers> <add thumbprint="FC144B44D2D81BCA7CFB933A8D818236C94E8505" name="http://adfs.kor.cmil.mil/adfs/services/trust" /> </trustedIssuers> </issuerNameRegistry> </service> </microsoft.identityModel> 

    Na amostra acima, o nome e reivindicações de function são esperados.

    Então, então voltei paira o meu server ADFS e viewifiquei que eu criei a confiabilidade confiável.

    Em seguida, você clique com o button direito do mouse sobre a confiança do pairtido confiante e edite as regras de reivindicação. Clique com o button direito do mouse na regra existente ou adicione uma regra, se não existir. Paira este exemplo, notei que não tinha definido o Tipo de reclamação de saída paira o nome. Então, usei o Atributo LDAP: Nome do Usuário-Princípio e mapeado paira o Nome do Tipo de Reclamação Excedente.

    Paira Funções, usei Token-Groups-Unqualified Names e mapeou isso paira Role.

    Uma vez que eu configurei a regra corretamente no meu server ADFS paira fornecer as reivindicações que foram solicitadas no meu web.config, o erro foi embora e as coisas funcionairam, como esperado.