문제

나는이 문제를 해결하기 위해 노력하고 동안 운없이 될 수 있는 사람으로 더 많은 Sharepoint 경험을 할 수 있을 정확히 내 문제입니다.

예외 stacktrace Sharepoint 로그는 다음과 같습니다:

System.IdentityModel.Tokens.SecurityTokenException: The issuer of the token is not a trusted issuer.    
at Microsoft.SharePoint.IdentityModel.SPLocalIssuerNameRegistry.GetIssuerName(SecurityToken securityToken)     
at Microsoft.IdentityModel.Tokens.Saml11.Saml11SecurityTokenHandler.CreateClaims(SamlSecurityToken samlSecurityToken)     
at Microsoft.IdentityModel.Tokens.Saml11.Saml11SecurityTokenHandler.ValidateToken(SecurityToken token)     
at Microsoft.IdentityModel.Tokens.SecurityTokenHandlerCollection.ValidateToken(SecurityToken token)     
at Microsoft.IdentityModel.Web.TokenReceiver.AuthenticateToken(SecurityToken token, Boolean ensureBearerToken, String endpointUri)     
at Microsoft.IdentityModel.Web.WSFederationAuthenticationModule.SignInWithResponseMessage(HttpRequest request)     
at Microsoft.IdentityModel.Web.WSFederationAuthenticationModule.OnAuthenticateRequest(Object sender, EventArgs args)     
at Microsoft.SharePoint.IdentityModel.SPFederationAuthenticationModule.OnAuthenticateRequest(Object sender, EventArgs eventArgs)     
at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()     
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

나는 보았 디 컴파일 된 코드,그것은 다음과 같습니다:

 if (!accessProvider.SigningCertificate.Equals((X509Certificate) x509SecurityToken.Certificate))
    throw new SecurityTokenException(SPResource.GetString("IssuerIsNotTrusted"));

그래서 그것은 다음과 같이 받은 보안토큰 및 액세스 공급자 인증서가 일치하지 않습니다.나는,더 나아가 만든 충돌을 덤프,로드 windbg 시도했는 것을 찾는 인증서가 accessProvider,확실하지 않는 경우가 바로 이곳에,하지만 제가,그리고 그것이 잘못된 인증서-그것은 대상 CN=SharePoint Security Token Service, OU=SharePoint, O=Microsoft, C=US, 하는 내 구성되어 있습니다.

등록했는 내 id 공급자 다음과 같다:

$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("C:\temp\wcfsts.dev.cer")
$map1 = New-SPClaimTypeMapping -IncomingClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress" -IncomingClaimTypeDisplayName "Display Name" –SameAsIncoming
$realm = "http://sp2013.testweb.local"
$ap = New-SPTrustedIdentityTokenIssuer -Name "WSFederationSTS" -Description "WCF STS." –Realm $realm -ClaimsMappings $map1 -ImportTrustCertificate $cert -SignInUrl "http://wcfsts.dev/WSFederationSecurityTokenService.svc/Issue" -IdentifierClaim $map1.InputClaimType

또한 저는 등록 인증서 New-SPTrustedRootAuthority.

도움이 되었습니까?

해결책

내가 찾는 문제 실수로에 의하여,보고 내가 무엇이 잘못.
보고 했 클레임 연습 고,그들이 등록 토큰을 발급을 사용하여 C#코드,그래서 동일한 기능을 수행하기로 결정했고 그들이 사용하는 공급자의 영역"https://intranet.contoso.com/_trust/"그래서 나는 단지 그것을 변경하는 내 도메인을 떠나는 동안"_trust"부분이고 그것은 작업을 시작하는,그래서 예외에서 로그를 아주 잘못된 것입니다.

이 후에는 내가 발견 블로그 게시물 과 같은 문제는 이유를 궁금하지 않았 발견했습니다.

다른 팁

나는 다음과 같은 일부 지침에서 이 링크:https://support.microsoft.com/en-us/help/3042604/the-convert-spwebapplication-command-cannot-convert-from-windows-claim

그것은 사용되는 다음과 같은 형식에 대한 새로운 SPTrustedIdentityTokenIssuer 명령:

$ap = New-SPTrustedIdentityTokenIssuer -Name $tokenIdentityProviderName -Description $TrustedIdentityTokenIssuerDescription -realm $siteRealm -ImportTrustCertificate $adfsCert -SignInUrl $signInUrl -UseDefaultConfiguration -IdentifierClaimIs EMAIL -RegisteredIssuerName $siteRealm

I wasn't sure what 한 RegisteredIssuerName,그 이전에 왼쪽 그것은 빈되었을 때,작동하지만 이 경우에서 나는 설정과 같$tokenIdentityProviderName.

을 받기 시작했는"발행인 토큰의하지 않은 신뢰할 수 있는 발행자"오류가 발생합니다.

나는 삭제 가치에 대한 RegisteredIssuerName:

Set-SPTrustedIdentityTokenIssuer -Identity $ap  -RegisteredIssuerName ""

는 문제를 해결한다.

내가 믿는 RegisteredIssuerName 작동하려면,당신을 추가해야 할 수도 있습니 issuerNameRegistry 입력하여 web.구성을 지정하는 신뢰할 수 있는 토큰을 발급.

<issuerNameRegistry 
  type="Microsoft.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry,
  Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, 
  PublicKeyToken=31bf3856ad364e35">
  <trustedIssuers>
      <add thumbprint="99fcfe2c70ebb571020ca8aa1b7633dfe1fa1d58" name="http://localhost:48924/WingtipSTS/" />
  </trustedIssuers>
</issuerNameRegistry>

추가적인 소스:https://docs.microsoft.com/en-us/previous-versions/office/developer/sharepoint-2010/ff955607(v=office.14)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 sharepoint.stackexchange
scroll top