Puncte:1

ADFS. Regulă de revendicare adevărată a terților este necesară pentru a returna „domeniul\utilizator”.

drapel ve
Tim

Am configurat Claims Provider Trust în ADFS și primesc doar E-mail în NumeID. Nu pot face modificări în Trustul furnizorului de daune terțe, așa că trebuie să obțin WindowsAccountName folosind adresa de e-mail, pe care am primit-o în NameID de la Third Party IDP și o redirecționez către Outlook Web Access (on-premise).

Am descoperit că atunci când folosesc următoarea regulă de revendicare, conectarea funcționează, dar numai dacă UPN-ul utilizatorului și adresa de e-mail se potrivesc. Dacă există diferențe între ele (de exemplu, sAMAccountName=jdoe; [email protected]; Email=Jonathan.Doe@contoso.com), valoarea redirecționată către Exchange provoacă o eroare.

c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Proprietăți["http://schemas.xmlsoap.org/ws/2005/05/identity /claimproperties/format"] == "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"]
 => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer = "AD AUTHORITY", OriginalIssuer = c.OriginalIssuer, Value = regexreplace(c.Value) , "(?<user>[^\@]+)\@(.+)", "contoso\${user}"), ValueType = c.ValueType);

Cum pot căuta un utilizator prin adresa sa de e-mail și să-i returnezWindowsAccountName în domeniu\nume utilizator format?

Puncte:1
drapel ve
Tim

Dacă cineva se confruntă cu această problemă. Ai nevoie de două reguli.

Regula nr. 1: sAMAccountName la temp Aceasta îi spune ADFS să caute în ActiveDirectory și să returneze toate conturile în care se potrivește UPN sau adresa de e-mail. Apoi regula stochează valoarea într-o variabilă temporară pe care o vom folosi în următoarea regulă.

c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Proprietăți["http://schemas.xmlsoap.org/ws/2005/05/identity /claimproperties/format"] == "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"]
 => problema(magazin = „Active Directory”, tipuri = („claims:temp/attribute1”), interogare = „(&(objectCategory=persoană)(objectClass=user)(|(userPrincipalName={0})(mail= {0})));sAMAccountName;contoso\adfs_service_account", param = c.Value);

NB. The contoso\adfs_service_account este important. ADFS are nevoie de acest lucru pentru a descoperi automat un controler de domeniu. Utilizați ORICE cont AD, atâta timp cât este un cont real.

Regula #2: temp la WindowsAccountName Regula de mai sus returnează numai sAMAccountName, nu domeniul. In cazul meu am avut un singur domeniu. Ca atare, l-am codificat mai jos.

c:[Type == "claims:temp/attribute1"] => problem(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer = "AD AUTHORITY" , OriginalIssuer = "https://contoso.verify.ibm.com/saml/sps/saml20ip/saml20", Value = "contoso\" + c.Value);

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.