1
사용자 지정 STS를 구현했으며 Saml 토큰과 잘 작동합니다. 이제 WCF Rest 기반 서비스에 전달해야하므로 JWT 형식의 토큰을 가져와야합니다. 전에서 JWT 토큰 처리기를 설치 한 :사용자 지정 Sts에서 JWT 형식의 토큰 받기
<securityTokenHandlers name="ActAs">
<clear/>
<add type="System.IdentityModel.Tokens.JwtSecurityTokenHandler, System.IdentityModel.Tokens.Jwt"/>
<!--<add type="System.IdentityModel.Tokens.SamlSecurityTokenHandler, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add type="System.IdentityModel.Tokens.Saml2SecurityTokenHandler, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />-->
<securityTokenHandlerConfiguration>
<audienceUris>
<add value="URL_RP_STS"/>
<add value="URL_CLIENT"/>
</audienceUris>
<issuerNameRegistry type="System.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089">
<trustedIssuers>
<add thumbprint="..." name="StsCustom" />
</trustedIssuers>
</issuerNameRegistry>
</securityTokenHandlerConfiguration>
</securityTokenHandlers>
<audienceUris>
<add value="URL_RP_STS" />
</audienceUris>
<!--certificationValidationMode set to "None" by the the Identity and Access Tool for Visual Studio. For development purposes.-->
<certificateValidation certificateValidationMode="None" />
<issuerNameRegistry type="System.IdentityModel.Tokens.ValidatingIssuerNameRegistry, System.IdentityModel.Tokens.ValidatingIssuerNameRegistry">
<authority name="StsCustom">
<keys>
<add thumbprint="..." />
</keys>
<validIssuers>
<add name="StsCustom" />
</validIssuers>
</authority>
</issuerNameRegistry>
</identityConfiguration>
그러나 스트리트 : https://nuget.org/packages/System.IdentityModel.Tokens.Jwt/
이것은 스트리트 프로젝트의 Web.config의 일부입니다 SamlSecurityToken을 계속 생성하십시오. 특정 토큰 유형을 설정하는 데 필요한 다른 구성이 필요합니까? securityTokenHandlers 섹션에서 Jwt 토큰 처리기를 추가하는 것으로 충분하지 않습니까? 감사합니다.
안녕하세요, 응답 해 주셔서 감사합니다. 이제 작동합니다. WSFederationAuthenticationModule을 사용하여 Relaying Party 역할을하는 ASP.NET 웹 사이트에서 토큰을 요청했습니다. 웹 사이트가 RP-STS에서 토큰을 요청하고 사용자 지정 STS 등으로부터 토큰을 요청했습니다. 문제는 RP-STS 및 STS에서 필요한 config 클래스 (SecurityTokenServiceConfiguration을 종료 한)의 생성자에 있습니다. this .DefaultTokenType = "urn : ietf : params : oauth : 토큰 유형 : jwt"; – Fabio