SAML 2.0“ teikėjo konfigūravimas portalams su AD FS
Pastaba
Nuo 2022 m. spalio 12 d. „Power Apps“ portalai tampa „Power Pages“. Daugiau informacijos: „Microsoft Power Pages“ dabar yra visuotinai prieinama (tinklaraštis)
Greitai perkelsime ir suliesime „Power Apps“ portalų dokumentaciją su „Power Pages“ dokumentacija.
Svarbu
Žingsniai, kaip konfigūruoti aktyvią direktorijos federacijos paslaugas (AD FS) gali skirtis priklausomai nuo jūsų AD FS serverio versijos.
AD FS susiejamos dalies patikimumo kūrimas
Pastaba
Žr. Konfigūruoti AD FS naudojant „PowerShell“, dėl informacijos apie tai, kaip atlikti šiuos žingsnius „PowerShell“ scenarijuje.
Naudodami AD FS valdymo įrankį, eikite į Tarnyba > Pareiškimų aprašai.
Pasirinkite Įtraukti pareiškimo aprašą.
Nurodykite pareiškimą:
Rodomas pavadinimas: Nuolatinis identifikatorius
Pareiškimo identifikatorius: urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
Žymės langelis Įjungti, skirtas: publikuoti šio ieškinio aprašymą susiejimo metaduomenyse kaip pareiškimo tipą, kurį ši susiejimo paslauga gali priimti
Žymės langelis Įjungti, skirtas: publikuoti šio ieškinio aprašymą susiejimo metaduomenyse kaip pareiškimo tipą, kurį ši susiejimo paslauga gali siųsti
Pasirinkite Gerai.
Naudodami AD FS valdymo įrankį, rinkitės Pasitikėti ryšiais >Pagrįstos šalies pasitikėjimas.
Pasirinkite Įtraukti susiejamos dalies patikimumą.
Sveiki: pasirinkite Pradžia.
Pasirinkite duomenų šaltinį: pasirinkite Duomenis apie susiejamą dalį įvesti rankiniu būdu ir Pirmyn.
Nurodykite rodomą pavadinimą: įveskite pavadinimą ir pasirinkite Pirmyn. Pavyzdys: https://portal.contoso.com/
Pasirinkite profilį: pasirinkite AD FS 2.0 profilį ir Pirmyn.
Sukonfigūruokite sertifikatą: pasirinkite Pirmyn.
Sukonfigūruokite URL: pažymėkite žymės langelį Įjungti SAML 2.0 WebSSO protokolo palaikymą. Susiejamos dalies SAML 2.0 SSO paslaugos URL: Įveskite https://portal.contoso.com/signin-saml2
Atminkite, kad AD FS reikia, jog portalas būtų vykdomas HTTPS.Pastaba
Gautas galinis punktas turi šiuos parametrus:
- Galinio punkto tipas: SAML patvirtinimo vartotojo galiniai punktai
- Susiejimas: POST
- Rodyklė: netaikoma (0)
- URL: https://portal.contoso.com/signin-saml2
Konfigūruokite identifikatorius: Įveskite
https://portal.contoso.com/
, rinkitės Įtraukti ir tuomet rinkitės Kitas. Jei taikoma, galima pridėti daugiau kiekvieno papildomo susiejamos dalies portalo tapatybių. Vartotojai gali autentifikuoti naudodami bet kurią ar visas prieinamas tapatybes.Pasirinkite išdavimo autorizavimo taisykles: pasirinkite Leisti visiems vartotojams pasiekti šią susiejamą dalį ir Pirmyn.
Pasirengta įtraukti patikimumą: pasirinkite Pirmyn.
Pasirinkite Uždaryti.
Pridėkite prie susiejamos dalies pasitikėjimo Pavadinimo ID pranešimą:
„„Windows““ paskyros pavadinimą transformuoti į pavadinimo ID pareiškimą (Transformuoti gaunamą pareiškimą):
Gaunamo pareiškimo tipas: „„Windows““ paskyros pavadinimas
Siunčiamo pranešimo tipas: Pavadinimo ID
Siunčiamo pavadinimo ID formatas: Nuolatinis identifikatorius
Peržiūrėkite visas pranešimo reikšmes
Konfigūruoti „ SAML 2.0“ tiekėją
Nustatę AD FS, pasikliaujantį šalies pasitikėjimu, galite atlikti veiksmus, nurodytus SAML 2.0 teikėjo konfigūravimas portalams.
Tapatybės tiekėjas–pradedamas prisijungimas
AD FS palaiko tapatybės teikėją–pradedamame viename prisijungime (SSO) SAML 2.0 profilyje specifikacija. Tam, kad portalas (paslaugų tiekėjas) atsakytų tinkamai į SALM užklausą pradėta tapatybės tiekėjo, „RelayState“ parametras turi būti tinkamai kodifikuotas.
Pagrindinė eilutės vertė, kuri turi būti koduojama į „SAML RelayState“ parametrą turi būti ReturnUrl=/content/sub-content/
formato, kuris /content/sub-content/
yra kelias į žiniatinklio puslapį, kurį norite perkelti į portalą (paslaugų tiekėjas). Kelią galima pakeisti bet kuriuo veikiančiu portalo tinklalapiu. Eilutės vertė yra užkoduota ir padėta į talpyklos eilutės formatu RPID=<URL encoded RPID>&RelayState=<URL encoded RelayState>
. Visa eilutė dar kartą yra užkoduojama į kitą talpyklą formatu <https://adfs.contoso.com/adfs/ls/idpinitiatedsignon.aspx?RelayState=<URL> encoded RPID/RelayState>
.
Pavyzdžiui, duotas paslaugos tiekėjo kelias /content/sub-content/
ir pasikliaujamos šalies ID https://portal.contoso.com/
, sudaro URL su šiais žingsniais:
Užkoduokite vertę
ReturnUrl=/content/sub-content/
, kad gautumėteReturnUrl%3D%2Fcontent%2Fsub-content%2F
Užkoduokite vertę
https://portal.contoso.com/
, kad gautumėtehttps%3A%2F%2Fportal.contoso.com%2F
Užkoduokite vertę
RPID=https%3A%2F%2Fportal.contoso.com%2F&RelayState=ReturnUrl%3D%2Fcontent%2Fsub-content%2F
, kad gautumėteRPID%3Dhttps%253A%252F%252Fportal.contoso.com%252F%26RelayState%3DReturnUrl%253D%252Fcontent%252Fsub-content%252F
Iš anksto nustatytas AD FS tapatybės tiekėjas–pradėtas SSO kelias siekiant gauti galutinį URL
https://adfs.contoso.com/adfs/ls/idpinitiatedsignon.aspx?RelayState=RPID%3Dhttps%253A%252F%252Fportal.contoso.com%252F%26RelayState%3DReturnUrl%253D%252Fcontent%252Fsub-content%252F
Galite naudoti tolesnį „PowerShell“ scenarijų, kad sukurtumėte URL. Įrašykite scenarijų į failą pavadinimu Get-IdPInitiatedUrl.ps1.
<#
.SYNOPSIS
Constructs an IdP-initiated SSO URL to access a portal page on the service provider.
.PARAMETER path
The path to the portal page.
.PARAMETER rpid
The relying party identifier.
.PARAMETER adfsPath
The AD FS IdP initiated SSO page.
.EXAMPLE
PS C:\\> .\\Get-IdPInitiatedUrl.ps1 -path "/content/sub-content/" -rpid "https://portal.contoso.com/" -adfsPath "https://adfs.contoso.com/adfs/ls/idpinitiatedsignon.aspx"
#>
param
(
[parameter(mandatory=$true,position=0)]
$path,
[parameter(mandatory=$true,position=1)]
$rpid,
[parameter(position=2)]
$adfsPath = https://adfs.contoso.com/adfs/ls/idpinitiatedsignon.aspx
)
$state = ReturnUrl=$path
$encodedPath = [uri]::EscapeDataString($state)
$encodedRpid = [uri]::EscapeDataString($rpid)
$encodedPathRpid = [uri]::EscapeDataString("RPID=$encodedRpid&RelayState=$encodedPath")
$idpInitiatedUrl = {0}?RelayState={1} -f $adfsPath, $encodedPathRpid
Write-Output $idpInitiatedUrl
AD FS konfigūravimas naudojant „PowerShell‟
Susijusios šaleis įtraukimo procesas AD FS gali taip pat būti atliekamas vykdant tolesnį „PowerShell“ scenarijų AD FS serveryje. Įrašykite scenarijų į failą pavadinimu Add-AdxPortalRelyingPartyTrustForSaml.ps1. Paleidę scenarijų, tęskite portalo svetainės parametrų konfigūravimą.
<#
.SYNOPSIS
Adds a SAML 2.0 relying party trust entry for a website.
.PARAMETER domain
The domain name of the portal.
.EXAMPLE
PS C:\\> .\\Add-AdxPortalRelyingPartyTrustForSaml.ps1 -domain portal.contoso.com
#>
param
(
[parameter(Mandatory=$true,Position=0)]
$domain,
[parameter(Position=1)]
$callbackPath = /signin-saml2
)
$VerbosePreference = Continue
$ErrorActionPreference = Stop
Import-Module adfs
Function Add-CrmRelyingPartyTrust
{
param (
[parameter(Mandatory=$true,Position=0)]
$name
)
$identifier = https://{0}/ -f $name
$samlEndpoint = New-ADFSSamlEndpoint -Binding POST -Protocol SAMLAssertionConsumer -Uri (https://{0}{1} -f $name, $callbackPath)
$identityProviderValue = Get-ADFSProperties | % { $_.Identifier.AbsoluteUri }
$issuanceTransformRules = @'
@RuleTemplate = MapClaims
@RuleName = Transform [!INCLUDE[pn-ms-windows-short](../../../includes/pn-ms-windows-short.md)] Account Name to Name ID claim
c:[Type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname"]
=> issue(Type = "https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, Value = c.Value, ValueType = c.ValueType, Properties["https://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent");
@RuleTemplate = LdapClaims
@RuleName = Send LDAP Claims
c:[Type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer == "AD AUTHORITY"]
=> issue(store = "[!INCLUDE[pn-active-directory](../../../includes/pn-active-directory.md)]", types = ("https://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname", "https://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname", "https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"), query = ";givenName,sn,mail;{{0}}", param = c.Value);
'@ -f $identityProviderValue
$issuanceAuthorizationRules = @'
@RuleTemplate = AllowAllAuthzRule
=> issue(Type = https://schemas.microsoft.com/authorization/claims/permit, Value = true);
'@
Add-ADFSRelyingPartyTrust -Name $name -Identifier $identifier -SamlEndpoint $samlEndpoint -IssuanceTransformRules $issuanceTransformRules -IssuanceAuthorizationRules $issuanceAuthorizationRules
}
# add the 'Identity Provider' claim description if it is missing
[!INCLUDE[cc-pages-ga-banner](../../../includes/cc-pages-ga-banner.md)]
if (-not (Get-ADFSClaimDescription | ? { $_.Name -eq Persistent Identifier })) {
Add-ADFSClaimDescription -name "Persistent Identifier" -ClaimType "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent" -IsOffered:$true -IsAccepted:$true
}
# add the portal relying party trust
[!INCLUDE[cc-pages-ga-banner](../../../includes/cc-pages-ga-banner.md)]
Add-CrmRelyingPartyTrust $domain
Konfigūruokite „SAML 2.0“ tiekėją
Nustatę AD FS patikimos šalies pasitikėjimą, galite atlikti šiuos žingsnius Konfigūruoti „SAML 2.0“ tiekėją portalams.
Taip pat žr.
SAML 2.0 teikėjo konfigūravimas portalams su "Azure AD"
SAML 2.0 naudojimo portaluose DUK
SAML 2.0 teikėjo konfigūravimas portalams
Pastaba
Ar galite mums pranešti apie dokumentacijos kalbos nuostatas? Atlikite trumpą apklausą. (atkreipkite dėmesį, kad ši apklausa yra anglų kalba)
Apklausą atliksite per maždaug septynias minutes. Asmeniniai duomenys nėra renkami (privatumo nuostatos).