Aracılığıyla paylaş


Microsoft Graph PowerShell ile Azure AD B2C özel ilkelerini yönetme

Önemli

1 Mayıs 2025 tarihinden itibaren Azure AD B2C artık yeni müşteriler için satın alınamayacak. SSS bölümünden daha fazla bilgi edinebilirsiniz.

Microsoft Graph PowerShell, Azure AD B2C kiracınızda komut satırı ve betik tabanlı özel ilke yönetimi için çeşitli cmdlet'ler sağlar. Microsoft Graph PowerShell SDK'sını kullanarak şunları yapmayı öğrenin:

  • Azure AD B2C kiracısında özel ilkeleri listeleme
  • Bir kiracıdan politika indir
  • Mevcut bir politikayı içeriğini değiştirerek güncelleştirin
  • Azure AD B2C kiracınıza yeni bir ilke yükleyin
  • Kiracıdan özel bir politikayı sil

Önkoşullar

PowerShell oturumunu B2C kiracısına bağla

Azure AD B2C kiracınızda özel ilkelerle çalışmak için önce Connect-MgGraph komutunu kullanarak PowerShell oturumunuzu kiracıya bağlamanız gerekir.

Aşağıdaki komutu yürütür. Dizinde B2C IEF İlkesi Yöneticisi rolü atanmış bir hesapla oturum açın.

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

Başarılı bir oturum açmayı gösteren örnek komut çıktısı:

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.

Kiracıdaki tüm özel politikaları listele

Özel ilkeleri keşfetmek, Azure AD B2C yöneticisinin işlemlerini gözden geçirmesine, yönetmesine ve işlemlerine iş mantığı eklemesine olanak tanır. Azure AD B2C kiracısındaki özel ilkelerin kimliklerinin listesini döndürmek için Get-MgBetaTrustFrameworkPolicy komutunu kullanın.

Get-MgBetaTrustFrameworkPolicy

Örnek komut çıktısı:

Id
--
B2C_1A_TrustFrameworkBase
B2C_1A_TrustFrameworkExtensions
B2C_1A_signup_signin
B2C_1A_ProfileEdit
B2C_1A_PasswordReset

Politika indir

İlke kimliklerinin listesini gözden geçirdikten sonra, içeriğini indirmek için Get-MgBetaTrustFrameworkPolicy ile belirli bir ilkeyi hedefleyebilirsiniz.

Get-MgBetaTrustFrameworkPolicy [-TrustFrameworkPolicyId <policyId>]

Bu örnekte kimlik B2C_1A_signup_signin içeren ilke indirilir:

<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>

İlke içeriğini yerel olarak düzenlemek için komut çıkışını bir dosyaya aktarın ve dosyayı sık kullandığınız düzenleyicide açın.

Mevcut ilkeyi güncelleştirme

Oluşturduğunuz veya indirdiğiniz bir ilke dosyasını düzenledikten sonra Update-MgBetaTrustFrameworkPolicy komutunu kullanarak güncelleştirilmiş ilkeyi Azure AD B2C'de yayımlayabilirsiniz.

Azure AD B2C kiracınızda hâlihazırda mevcut bir ilkenin kimliğiyle Update-MgBetaTrustFrameworkPolicy komutunu verirseniz, bu ilkenin içeriğinin üzerine yazılır.

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

Örnek komut:

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

Yeni ilkeyi karşıya yükleme

Üretimde çalışan bir özel ilkede değişiklik yaptığınızda, geri dönüş veya A/B test senaryoları için ilkenin birden çok sürümünü yayımlamak isteyebilirsiniz. Alternatif olarak, var olan bir ilkenin kopyasını oluşturmak, birkaç küçük değişiklikle değiştirmek ve ardından farklı bir uygulama tarafından kullanılmak üzere yeni bir ilke olarak karşıya yüklemek isteyebilirsiniz.

Yeni bir ilkeyi karşıya yüklemek için New-MgBetaTrustFrameworkPolicy komutunu kullanın:

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

Örnek komut:

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

Özel ilke silme

Temiz bir işlem yaşam döngüsünü korumak için kullanılmayan özel ilkeleri düzenli aralıklarla kaldırmanızı öneririz. Örneğin, yeni bir ilke kümesine geçiş yaptıktan ve yeni ilkelerin işlevselliğini doğruladıktan sonra eski ilke sürümlerini kaldırmak isteyebilirsiniz. Ayrıca, bir dizi özel ilke yayımlamayı dener ve bir hata alırsanız, başarısız sürümün bir parçası olarak oluşturulan ilkeleri kaldırmak mantıklı olabilir.

Kiracınızdan bir ilkeyi silmek için Remove-MgBetaTrustFrameworkPolicy komutunu kullanın.

Remove-MgBetaTrustFrameworkPolicy -TrustFrameworkPolicyId <policyId>

Örnek komut:

# Delete an existing policy
Remove-MgBetaTrustFrameworkPolicy -TrustFrameworkPolicyId B2C_1A_signup_signin

İlke yükleme sorunlarını giderme

Yeni bir özel ilke yayımlamaya veya var olan bir ilkeyi güncelleştirmeye çalıştığınızda, ilke dosyası devralma zincirindeki hatalı XML biçimlendirmesi ve hataları doğrulama hatalarına neden olabilir.

Özel ilkelerin sorunlarını giderme hakkında bilgi için bkz. Azure AD B2C özel ilkeleri ve Kimlik Deneyimi Çerçevesi sorunlarını giderme.

Sonraki Adımlar

Sürekli tümleştirme/sürekli teslim (CI/CD) işlem hattının parçası olarak özel ilkeler dağıtmak için PowerShell kullanma hakkında bilgi için bkz. Azure DevOps işlem hattından özel ilkeler dağıtma.