Aracılığıyla paylaş


Test Altyapısı için Power Apps kimlik doğrulama kılavuzu (önizleme)

Not

Önizleme özellikleri, üretimde kullanıma yönelik değildir ve sınırlı işlevselliğe sahip olabilir. Bu özellikler, müşterilerin erken erişim elde etmesi ve geri bildirim sağlaması amacıyla resmi sürümden önce kullanıma sunulur.

Bu kılavuz, Test Altyapısı'nda kimlik doğrulamasını ayarlamak için adım adım yönergeler sağlar. Kimlik doğrulama seçeneklerine hızlı bir genel bakış için, bkz: Test Motorunda Kimlik Doğrulama.

Kimlik doğrulamasını kullanmaya başlama

Test Altyapısı, tuval ve model yönetimli uygulamalar için web tabanlı testler için iki kimlik doğrulama yöntemini destekler:

  • StorageState - Varsayılan, bireysel geliştirme için kolay kurulum (web tabanlı tuval ve model yönetimli uygulama testleri için)
  • Dataverse - Test kullanıcılarını ve CI/CD'yi paylaşmak için ekip tabanlı yaklaşım (web tabanlı tuval ve model yönetimli uygulama testleri için)

Kimlik doğrulaması, PowerFx sağlayıcısı ve doğrudan Dataverse testler için farklı şekilde ele alınır. Bu testler, kaynak erişim belirteçlerini almak için komutları kullanarak az doğrudan oturum açtığınız Azure CLI oturumunuzdan erişim belirteçlerini alır. Bu tür testleri çalıştırmadan önce oturum açtığınızdan az login --allow-no-subscriptions emin olun.

Hızlı kurulum: StorageState kimlik doğrulaması

StorageState kimlik doğrulaması, kullanmaya başlamanın en basit yoludur. Kimlik doğrulama belirteçlerini yerel makinenizde güvenli bir şekilde depolamak için Windows Veri Koruma API'sini kullanır.

1. Adım: Testinizi varsayılan kimlik doğrulamasıyla çalıştırın

ile your başlayan parametreleri değiştirerek aşağıdaki PowerShell komutunu çalıştırın.

pac test run `
   --provider canvas `
   --test-plan-file your-test-plan.yaml `
   --tenant your-tenant-id `
   --environment-id your-environment-id

Not

pac test run--user-auth parametresi bu örnekte kullanılmamıştır çünkü varsayılan sağlayıcı vardır StorageState. Dilerseniz dahil edebilirsiniz.

2. Adım: Etkileşimli oturum açma işlemini tamamlayın

Test kullanıcı hesabı kimlik bilgilerinizi girin

  1. Otomatik olarak bir tarayıcı penceresi açılır
  2. Test kullanıcı hesabınızla oturum açın
  3. İstenirse, MFA'yı ve onay istemlerini onaylayın
  4. İstendiğinde "Oturum açık kalsın"ı seçin

Kimlik doğrulamanız artık kaydedilmiştir.

  • Test Engine, kimlik doğrulamanızı güvenli bir şekilde saklar
  • Gelecekteki test çalıştırmaları, oturum açmaya gerek kalmadan kaydedilmiş durumu kullanır
  • İhtiyaç duyulduğunda belirteçler otomatik olarak yenilenir

Takım kurulumu: Dataverse kimlik doğrulama

Dataverse kimlik doğrulaması, ekipler ve CI/CD işlem hatları için mükemmeldir. Kimliği doğrulanmış kullanıcı durumlarını X.509 sertifikalarıyla şifrelenmiş olarak güvenli bir Dataverse şekilde depolar.

1. Adım: Test Altyapısı çözümünü indirin ve içeri aktarın

  1. Çözümü şuradan Power Platform https://aka.ms/TestEngineAuth indirin: .
  2. Power Apps'te oturum açın.
  3. Hedef ortamınızı seçin.
  4. Çözümler'e gidin ve Çözümü içeri aktar'ı seçin.
  5. Test Altyapısı çözümünü karşıya yüklemek ve yüklemek için sihirbazı izleyin.

2. Adım: Şifreleme için bir sertifika oluşturun

Otomatik olarak imzalanan bir sertifika (yalnızca geliştirme) için aşağıdaki PowerShell betiğini çalıştırın:

$Params = @{
  DnsName = @("testengine", "testengine")
  CertStoreLocation = "Cert:\CurrentUser\My"
  NotAfter = (Get-Date).AddMonths(6)
  KeyAlgorithm = "RSA"
  KeyLength = 2048
}
New-SelfSignedCertificate @Params

Üretim için, kuruluş sertifika yetkilinizden bir sertifika kullanın.

3. Adım: Test kullanıcınızı ayarlayın

Test kullanıcınızı ayarlamak için aşağıdaki adımları tamamlayın:

  1. Terminalinizi açın ve mevcut oturumları kapatın:

    # Clear Power Platform CLI credentials
    pac auth clear
    
    # Clear Azure CLI credentials
    az logout
    
  2. Azure CLI ile oturum açın (kimlik doğrulaması için Dataverse gereklidir):

    az login --allow-no-subscriptions
    
  3. Sertifika adınızı şu şekilde bir PowerShell ortam değişkeni olarak DataProtectionCertificateNameayarlayın:

    $env:DataProtectionCertificateName = "CN=testengine"
    
  4. Testinizi kimlik doğrulaması ile Dataverse çalıştırın:

    pac test run `
       --provider canvas `
       --user-auth Dataverse `
       --auth Certstore `
       --test-plan-file testplan.yaml `
       --tenant your-tenant-id `
       --environment-id your-environment-id
    

    Not

    StorageState'ten farklı olarak , bu durumda parametresinişu değerle --user-auth kullanmanız Dataverse gerekir:

  5. İstendiğinde etkileşimli oturum açma işlemini tamamlayın.

Hizmet sorumlularını ayarlama (CI/CD için)

CI/CD işlem hatlarında otomatik test için etkileşimli kullanıcı hesapları yerine hizmet sorumlularını kullanabilirsiniz.

1. Adım: Kimlikte Microsoft Entra bir uygulama kaydı oluşturun

ID'de Microsoft Entra bir uygulama kaydı oluşturmak için aşağıdaki adımları tamamlayın.

  1. Microsoft Entra Yönetim merkezinde oturum açın
  2. Uygulamalar Uygulama kayıtları'na>gidin
  3. Yeni kayıt'ı seçin
  4. Bir ad girin (Örneğin, "Test Motoru Otomasyonu")
  5. Varsayılan seçenekleri koruyun ve Kaydol'u seçin
  6. Oluşturulduktan sonra Uygulama (istemci) Kimliği ve Dizin (kiracı) Kimliği'ni not edin

2. Adım: Şunun için API izinlerini yapılandırın: Dataverse

API izinlerini yapılandırmak için aşağıdaki adımları tamamlayın Dataverse.

  1. Uygulama kaydınızda API izinleri'ne gidin
  2. İzin ekle'yi seçin
  3. Kuruluşumun kullandığı API'leri seçme
  4. Arayın ve seçin Dataverse
  5. Temsilci izinleri'ni seçin
  6. user_impersonation kontrol edin
  7. İzin ekle'yi seçin
  8. Yönetici onayı ver'i seçin

3. Adım: İstemci gizli anahtarı oluşturma

İstemci gizli anahtarı oluşturmak için aşağıdaki adımları tamamlayın.

  1. Sertifikalar ve gizli diziler'e gidin
  2. Yeni istemci parolası'nı seçin
  3. Bir açıklama ekleyin ve bir son kullanma tarihi seçin
  4. Gizli Değeri hemen kopyalayın (bir daha göremezsiniz)

4. Adım: Uygulama kullanıcısını şuraya ekleyin: Dataverse

Uygulama kullanıcısını eklemek için Dataverse aşağıdaki adımları tamamlayın.

  1. Yönetim Merkezi'ni Power Platform açın
  2. Ortamınızı eçin
  3. Ayarlar Kullanıcılar + izinler'e>>gidin Uygulama kullanıcıları
  4. + Yeni uygulama kullanıcısı'nı seçin
  5. Uygulamanızı arayın ve seçin
  6. Uygun departman ve güvenlik rolleri atayın ("Test Altyapısı Kullanıcısı" rolünü dahil edin)
  7. Değişiklikleri kaydetme

5. Adım: CI/CD işlem hattınızı yapılandırma

Bu değişkenleri işlem hattınıza ekleyin:

AZURE_CLIENT_ID: (your application ID)
AZURE_CLIENT_SECRET: (your client secret)
AZURE_TENANT_ID: (your tenant ID)
DataProtectionCertificateValue: (base64 encoded certificate)
ENVIRONMENT_URL: (your Dataverse environment URL)

Bu nedenle Azure DevOps, bunları uygun izinlere sahip Değişken Gruplarında güvenli bir şekilde saklayın.

PowerFx ve doğrudan Dataverse test kimlik doğrulaması

PowerFx sağlayıcı testleri ve doğrudan Dataverse testler için kimlik doğrulaması, web tabanlı testlerden farklı çalışır.

PowerFx/Dataverse kimlik doğrulaması nasıl çalışır?

  1. Test Altyapısı, kaynağa özgü bir erişim belirteci almak için Azure CLI kullanır
  2. Belirteç, doğrudan API'lerle Dataverse kimlik doğrulaması yapmak için kullanılır
  3. Tarayıcı veya web tabanlı kimlik doğrulama söz konusu değildir

PowerFx/Dataverse kimlik doğrulamasını ayarlama

  1. Azure CLI'nin yüklü ve güncel olduğundan emin olun:

    winget install -e --id Microsoft.AzureCLI
    # Or update it if already installed
    az upgrade
    
  2. Azure CLI ile oturum açın:

    # The --allow-no-subscriptions flag is important as you may not have Azure subscriptions
    az login --allow-no-subscriptions
    
  3. Testinizi PowerFx sağlayıcısıyla çalıştırın:

    pac test run `
       --provider powerfx `
       --test-plan-file testplan.yaml `
       --tenant your-tenant-id `
       --environment-id your-environment-id `
       --domain "https://your-environment.crm.dynamics.com"
    

Kimlik doğrulama sorunlarını giderme

Bu bölüm, Test Altyapısı ile kimlik doğrulama sorunlarını giderme hakkında bilgi içerir.

StorageState ile ilgili sık karşılaşılan sorunlar

  • Sorun: Her çalıştırmada kimlik doğrulama istemi görünüyor.

    • Çözüm: Oturum açma sırasında Oturum açık kalsın seçeneğini belirleyip seçmediğinizi kontrol edin.
  • Sorun: Cannot access secure storage hata.

    • Çözüm: Kullanıcı profili klasörünüze uygun erişiminiz olduğundan emin olun.

Kimlik doğrulamasıyla ilgili Dataverse yaygın sorunlar

  • Sorun: Certificate not found hata.

    • Çözüm: Sertifika adının, sertifika deponuzdakiyle tam olarak eşleştiğini doğrulayın.
  • Sorun: Unable to connect to Dataverse hata.

    • Çözüm: Azure CLI ile az login --allow-no-subscriptions oturum açılıp açılmadığını denetleyin.
  • Sorun: Access denied hizmet sorumlusu ile ilgili hata.

    • Çözüm: Uygulamanın doğru izinlere Dataverse ve uygun güvenlik rollerine sahip olduğunu doğrulayın.

PowerFx/Dataverse kimlik doğrulaması ile ilgili sık karşılaşılan sorunlar

  • Sorun: Unable to obtain access token hata

    • Çözüm: kullanarak Azure CLI ile oturum açtığınızı doğrulayın az account get-access-token
  • Sorun: Access denied için Dataverse

    • Çözüm: Oturum açmış kullanıcınızın ortamda uygun izinlere Dataverse sahip olduğundan emin olun
  • Sorun: Uzun test çalıştırmaları sırasında belirtecin sona ermesi

    • Çözüm: Belirteç süre sonu daha uzun olan bir hizmet sorumlusu kullanın veya test adımlarında yeniden kimlik doğrulamasını işleyin

Kimlik doğrulama güvenlik mimarisi
Tuval uygulamalarını test etme
Model yönetimli uygulamaları test etme
Test Dataverse uzantıları