Sdílet prostřednictvím


Správa vlastních zásad Azure AD B2C pomocí Microsoft Graph PowerShellu

Důležité

Od 1. května 2025 už nebude Azure AD B2C k dispozici k nákupu pro nové zákazníky. Další informace najdete v našich nejčastějších dotazech.

Microsoft Graph PowerShell poskytuje několik rutin pro správu vlastních zásad založených na příkazovém řádku a skriptech ve vašem tenantovi Azure AD B2C. Naučte se používat sadu Microsoft Graph PowerShell SDK k:

  • Výpis vlastních zásad v tenantovi Azure AD B2C
  • Stáhnout zásadu od nájemce
  • Aktualizace existující zásady přepsáním jejího obsahu
  • Nahrajte novou zásadu do tenantu Azure AD B2C
  • Odstranit uživatelskou politiku z nájemce

Požadavky

Připojení PowerShell relace k tenantovi B2C

Pokud chcete pracovat s vlastními zásadami v tenantovi Azure AD B2C, musíte nejprve připojit relaci PowerShellu k tenantovi pomocí příkazu Connect-MgGraph .

Spusťte následující příkaz. Přihlaste se pomocí účtu, který má přiřazenou roli správce zásad B2C IEF v adresáři.

Connect-MgGraph -TenantId "{b2c-tenant-name}.onmicrosoft.com" -Scopes "Policy.ReadWrite.TrustFramework"

Příklad výstupu příkazu znázorňující úspěšné přihlášení:

Welcome to Microsoft Graph!

Connected via delegated access using 64636d5d-8eb5-42c9-b9eb-f53754c5571f
Readme: https://aka.ms/graph/sdk/powershell
SDK Docs: https://aka.ms/graph/sdk/powershell/docs
API Docs: https://aka.ms/graph/docs

NOTE: You can use the -NoWelcome parameter to suppress this message.

Výpis všech vlastních zásad v tenantovi

Zjišťování vlastních zásad umožňuje správci Azure AD B2C kontrolovat, spravovat a přidávat obchodní logiku do svých operací. Pomocí příkazu Get-MgBetaTrustFrameworkPolicy vrátíte seznam ID vlastních zásad v tenantovi Azure AD B2C.

Get-MgBetaTrustFrameworkPolicy

Příklad výstupu příkazu:

Id
--
B2C_1A_TrustFrameworkBase
B2C_1A_TrustFrameworkExtensions
B2C_1A_signup_signin
B2C_1A_ProfileEdit
B2C_1A_PasswordReset

Stažení zásady

Po kontrole seznamu ID zásad můžete cílit na konkrétní zásadu pomocí Get-MgBetaTrustFrameworkPolicy ke stažení jejího obsahu.

Get-MgBetaTrustFrameworkPolicy [-TrustFrameworkPolicyId <policyId>]

V tomto příkladu se stáhne zásada s ID B2C_1A_signup_signin :

<TrustFrameworkPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06" PolicySchemaVersion="0.3.0.0" TenantId="contosob2c.onmicrosoft.com" PolicyId="B2C_1A_signup_signin" PublicPolicyUri="http://contosob2c.onmicrosoft.com/B2C_1A_signup_signin" TenantObjectId="00000000-0000-0000-0000-000000000000">
  <BasePolicy>
    <TenantId>contosob2c.onmicrosoft.com</TenantId>
    <PolicyId>B2C_1A_TrustFrameworkExtensions</PolicyId>
  </BasePolicy>
  <RelyingParty>
    <DefaultUserJourney ReferenceId="SignUpOrSignIn" />
    <TechnicalProfile Id="PolicyProfile">
      <DisplayName>PolicyProfile</DisplayName>
      <Protocol Name="OpenIdConnect" />
      <OutputClaims>
        <OutputClaim ClaimTypeReferenceId="displayName" />
        <OutputClaim ClaimTypeReferenceId="givenName" />
        <OutputClaim ClaimTypeReferenceId="surname" />
        <OutputClaim ClaimTypeReferenceId="email" />
        <OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="sub" />
        <OutputClaim ClaimTypeReferenceId="identityProvider" />
        <OutputClaim ClaimTypeReferenceId="tenantId" AlwaysUseDefaultValue="true" DefaultValue="{Policy:TenantObjectId}" />
      </OutputClaims>
      <SubjectNamingInfo ClaimType="sub" />
    </TechnicalProfile>
  </RelyingParty>
</TrustFrameworkPolicy>

Pokud chcete obsah zásad upravit místně, předejte výstup příkazu do souboru a otevřete ho v oblíbeném editoru.

Aktualizace existujících zásad

Po úpravě souboru zásad, který jste vytvořili nebo stáhli, můžete aktualizované zásady publikovat do Azure AD B2C pomocí příkazu Update-MgBetaTrustFrameworkPolicy .

Pokud příkaz vydáte Update-MgBetaTrustFrameworkPolicy s ID zásady, která už ve vašem tenantovi Azure AD B2C existuje, obsah této zásady se přepíše.

Update-MgBetaTrustFrameworkPolicy -TrustFrameworkPolicyId <policyId> -BodyParameter @{trustFrameworkPolicy = "<policy file path>"}

Příklad příkazu:

# Update an existing policy from file
Update-MgBetaTrustFrameworkPolicy -TrustFrameworkPolicyId B2C_1A_signup_signin -BodyParameter @{trustFrameworkPolicy = C:\B2C_1A_signup_signin.xml}

Nahrát novou politiku

Když provedete změnu vlastní zásady spuštěné v produkčním prostředí, můžete chtít publikovat více verzí zásad pro záložní scénáře nebo scénáře testování A/B. Nebo můžete chtít vytvořit kopii existující zásady, upravit ji několika malými změnami a pak ji nahrát jako novou zásadu pro použití jinou aplikací.

K nahrání nové zásady použijte příkaz New-MgBetaTrustFrameworkPolicy :

New-MgBetaTrustFrameworkPolicy -BodyParameter @{trustFrameworkPolicy = "<policy file path>"}

Příklad příkazu:

# Add new policy from file
New-MgBetaTrustFrameworkPolicy -BodyParameter @{trustFrameworkPolicy = C:\B2C_1A_signup_signin.xml }

Odstranit vlastní politiku

Aby byl váš provozní cyklus čistý, doporučujeme pravidelně odstraňovat nepoužívané vlastní zásady. Po provedení migrace do nové sady zásad a ověření funkčnosti nových zásad můžete například chtít odebrat staré verze zásad. Pokud se navíc pokusíte publikovat sadu vlastních zásad a zobrazí se chyba, může být vhodné odebrat zásady vytvořené v rámci neúspěšné verze.

Pomocí příkazu Remove-MgBetaTrustFrameworkPolicy odstraňte zásadu z vašeho tenanta.

Remove-MgBetaTrustFrameworkPolicy -TrustFrameworkPolicyId <policyId>

Příklad příkazu:

# Delete an existing policy
Remove-MgBetaTrustFrameworkPolicy -TrustFrameworkPolicyId B2C_1A_signup_signin

Řešení potíží s nahráváním zásad

Při pokusu o publikování nové vlastní zásady nebo aktualizaci existující zásady může nesprávné formátování XML a chyby v řetězu dědičnosti souborů zásad způsobit chyby ověření.

Informace o řešení potíží s vlastními zásadami najdete v tématu Řešení potíží s vlastními zásadami Azure AD B2C a architekturou prostředí identit.

Další kroky

Informace o použití PowerShellu k nasazení vlastních zásad v rámci kanálu kontinuální integrace/průběžného doručování (CI/CD) najdete v tématu Nasazení vlastních zásad z kanálu Azure DevOps.