2017-05-10 5 views
0

Ich versuche, in adfs eine benutzerdefinierte Anspruchsregel zu erstellen, um die E-Mail-Adresse in NameId umzuwandeln, jedoch in Kleinbuchstaben.ADFS-E-Mail für benutzerdefinierte Anspruchsregel An LowerCase-SAML-Antwort

Der Grund ist, dass Responsys die Ansprüche liest und die Groß- und Kleinschreibung berücksichtigt, wenn die NameId in der SAML-Antwort verglichen wird. Unser Active Directory hat eine E-Mail-Adresse als Groß-/Kleinschreibung für einige Benutzer und Kleinbuchstaben für andere Benutzer. z.B. LJeary @ oder ljeary @

Ich habe einen benutzerdefinierten Attributspeicher hinzugefügt, um den Kleinbuchstaben zu tun, aber ich sehe nicht den Anspruch in der SAMLResponse.

gemäß http://macintheoffice.com/?q=node/5

ich Hilfe brauche einen benutzerdefinierten Anspruch Regel zu erstellen, die erfolgreich die E-Mail-Adresse als Klein im abgehenden Anspruch NameID

Sollte

<Subject> 
     <NameID>[email protected]</NameID> 
     <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> 
      <SubjectConfirmationData NotOnOrAfter="2017-05-10T03:24:20.358Z" Recipient="https://interact2.responsys.net/authentication/login/loginSSO" /> 
     </SubjectConfirmation> 
    </Subject> 

aber sehen senden sehen diese dies

<Subject> 
     <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> 
      <SubjectConfirmationData NotOnOrAfter="2017-05-10T03:24:20.358Z" Recipient="https://interact2.responsys.net/authentication/login/loginSSO" /> 
     </SubjectConfirmation> 
    </Subject> 

fehlt die NameID-Attribut

benutzerdefinierte Anspruchsregel verwendet wird

c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"] 
=> issue(store = "StringProcessing", types = ("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier"), query = "toLower", param = c.Value); 

Antwort: Dank @nzpcmad. Kam zu einem ähnlichen Prozess, indem Sie die E-Mail-Adresse zurückgeben und in einem eingehenden Fall speichern. Erstellen Sie anschließend eine weitere Regel, um die transformierte E-Mail-Anforderungstransformation in die niedrigere ID zu übernehmen und der Namens-ID des ausgehenden Anspruchs zuzuweisen.

ADFS Claim Rules

Antwort

1

Sind Sie sicher, dass etwas aus dem benutzerdefinierten Attributspeicher zurückgegeben wird?

Der Fehler könnte auf ein fehlendes NameID-Format zurückzuführen sein.

Versuchen Sie, einen Dummy-Anspruch z. http://company/temp enthält die E-Mail in Kleinbuchstaben und verwendet dann eine Transform-Regel, um den Dummy-Anspruch in NameID umzuwandeln.

Sie könnten auch code this yourself.

Oder, wenn Sie mögen typing :-)

+0

Dank @nzpcmad .. Kam mit einem ähnlichen Prozess, indem Sie die E-Mail-Adresse zurückkehren und in einem eingehenden Anspruch zu speichern. Erstellen Sie anschließend eine weitere Regel, um die transformierte E-Mail-Anforderungstransformation in die niedrigere ID zu übernehmen und der Namens-ID des ausgehenden Anspruchs zuzuweisen. – FPVjeary

Verwandte Themen