尝试将 SAML 服务提供商应用程序与 AD FS 集成。 SSO 工作正常。对于 SLO,注销失败并显示“请求者”状态代码。 ADFS 服务的事件查看器中没有针对此特定错误的日志记录/跟踪信息。这个问题之前已经被问过几次了,大多数都指向了一个无效的 NameId
发送到 LogoutRequest
。但是,LogoutRequest NameId
似乎没问题。
还尝试存储会话索引并发送为 SessionIndex
,但错误是相同的。
以下是相关信息
AssertionResponse Subject
<Subject>
<NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailaddress">alice@mail2.corp2.contoso.net</NameID>
<SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"><SubjectConfirmationData InResponseTo="_43372d41-c455-4322-970a-db4c1acf73bc"
NotOnOrAfter="2021-03-03T09:41:58.596Z" Recipient="https://myapp.corp2.dev.net:8050/saml2/adfs/acs"/></SubjectConfirmation>
</Subject>
LogoutRequest
<samlp:LogoutRequest Destination="https://adfs.corp2.contoso.net/adfs/ls/"
ID="_5bcedc5e-8847-41c6-95b3-29740f0463ec" IssueInstant="2021-03-03T09:37:03Z" Version="2.0"
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol">
<saml:Issuer>https://myapp.corp2.dev.net:8050/saml2/adfs/metadata</saml:Issuer>
<saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailaddress">alice@mail2.corp2.contoso.net</saml:NameID>
</samlp:LogoutRequest>
LogoutResponse
<samlp:LogoutResponse ID="_85f5200f-179a-40f8-a139-97c482cf2900"
Version="2.0" IssueInstant="2021-03-03T09:37:03.314Z"
Destination="https://myapp.corp2.dev.net:8050/saml2/adfs/logout"
Consent="urn:oasis:names:tc:SAML:2.0:consent:unspecified"
InResponseTo="_5bcedc5e-8847-41c6-95b3-29740f0463ec"
xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol">
<Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">
http://adfs.corp2.contoso.net/adfs/services/trust
</Issuer>
<samlp:Status>
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Requester" />
</samlp:Status>
</samlp:LogoutResponse>
- 任何人都可以指导一下这里可能出了什么问题?
- ADFS 日志/调试跟踪没有关于错误的任何信息。 ADFS 是 2012 R2 数据中心版本。任何人都知道可以解决类似问题的更高版本(例如 Server 2016)的任何更新/补丁?