1

我正在使用sustainsys.saml2.httpmodule。我想运行一些代码来从 IDP 发起的单次注销中记录注销。即使https://stubidp.sustainsys.com/Logout给了我成功的结果,在 IDP 发起单次注销后,用户似乎也没有被注销(IsAuthenticated 仍然是真的)。

我似乎找不到其他需要相同功能或遇到相同问题的人。我的 Sustainsys 配置如下。

<sustainsys.saml2 entityId="http://localhost:53758/Saml2"
                returnUrl="http://localhost:53758/Common/Pages/Saml2Login.aspx"
                authenticateRequestSigningBehavior="IfIdpWantAuthnRequestsSigned"
                validateCertificates="false"
                publicOrigin ="http://localhost:53758/">
    <nameIdPolicy allowCreate="false" format="Unspecified"/>
    <metadata cacheDuration="PT1440M" wantAssertionsSigned="true">
        <organization name="ab" displayName="ab" url="https://www.example.com/" language="en" />
        <contactPerson type="Technical" email="a@b.com" />
        <requestedAttributes>
            <add friendlyName ="Some Name" name="urn:someName" nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri" isRequired="true" />
        </requestedAttributes>
    </metadata>
    <identityProviders>
    <add entityId="https://stubidp.sustainsys.com/Metadata"
        signOnUrl="https://stubidp.sustainsys.com"
        logoutUrl="https://stubidp.sustainsys.com/Logout"
        allowUnsolicitedAuthnResponse="true"
        binding="HttpRedirect"
        wantAuthnRequestsSigned="true">
        <signingCertificate storeName="CertificateAuthority" storeLocation="CurrentUser"
                        findValue="cdf7090a433561a843b51198b0ba6456" x509FindType="FindBySerialNumber" />
    </add>
    </identityProviders>
    <serviceCertificates>
        <add storeName="CertificateAuthority" storeLocation="CurrentUser" findValue="2cfe21cb930c19a341e9e30a07a3c123" x509FindType="FindBySerialNumber" />
    </serviceCertificates>
</sustainsys.saml2>
4

1 回答 1

0

您可以使用LogoutCommandResultCreated通知。当重定向到 Idp 即将发生时以及从 Idp 收到响应后,它将被调用。

于 2019-04-10T18:29:36.887 回答