Fabric Uygulamaları için kimlik doğrulaması

Fabric Uygulamaları, kullanıcıların oturumunu açıp oturumlarını yöneten ve uygulamanızın yaptığı her veri ve depolama çağrısına kimliklerini ekleyen yerleşik bir kimlik doğrulama hizmeti içerir. Bu makalede, projeniz için kimlik doğrulamasını yapılandırmadan önce anlamanız gereken kavramlar açıklanmaktadır.

Uygulama ayrıntıları için bkz:

Kimlik doğrulama modları

Dağıtılan Fabric uygulamaları, Microsoft Entra ID ile kimlik doğrulaması yapar. Uygulamanın nerede çalıştığına ve Entra token'ını kimin edindiğine göre entegrasyon yolunu seçin:

Environment Desteklenen yöntem Ne zaman kullanılır?
Fabric portalını kullanan tarayıcı uygulaması Fabric SSO açılır pencere veya gömülü aktarım Fabric'in etkileşimli oturum açma işlemini gerçekleştirmesine izin verin veya Fabric içine gömülü bir uygulama içinde oturum açın.
Zaten devredilmiş bir Entra tokenı olan tarayıcı veya Node.js uygulaması signInWithEntraToken() Sağlanan tokenı, açılır pencere veya yönlendirme olmadan bir Rayfin oturumuyla değiş tokuş edin.
Harici ana portala gömülü uygulama createEmbedHost() ebeveyn sistemde ve initEmbeddedAuth() iframe'de Entra tarafından kimliği doğrulanmış güvenilir bir üst aracının, tokenını iframe'e göndermeden bir aktarımı gerçekleştirmesine izin verin.
Yerel bir arka uç ile yerel geliştirme E-posta ve parola Yerel bir arka uçla test yapın; bu yöntem dağıtılmış bir Fabric backend'inde çalışmaz.

Temel kavramlar:

  • Fabric SSO, tarayıcı kullanıcısını doğrulamak için Fabric portalını kullanır. Uygulama, Fabric içinde çalışabilir veya dağıtılmış bir arka ucu hedefleyen yerel bir ön yüz dahil olmak üzere bağımsız bir sayfadan açılır pencere kullanabilir.
  • Doğrudan Entra exchange ve external-parent-host handoff, rastgele kimlik sağlayıcıları veya yalnızca uygulamaya özel hizmet sorumlusu oturum açma desteği değildir; ek Microsoft Entra yollarıdır.
  • E-posta ve parola yalnızca yerel geliştirme için tasarlanmıştır. Dağıtımdan sonra çalışmaz.
  • İlk kez oturum açıldığında kullanıcı hesabı oluşturulur. Fabric SSO ile ayrı bir kaydolma adımı yoktur; kullanıcılar ilk kez oturum açtıklarında otomatik olarak oluşturulur.
  • Fabric dağıtımları için kimlik doğrulaması gereklidir. services.auth.enabled öğesinin false olarak ayarlanması, npx rayfin up öğesinin başarısız olmasına neden olur.

Token gereksinimleri ve uygulama örnekleri için Direct Entra token sign-in ve Harici bir üst portala gömme bölümlerine bakınız.

Oturumlar ve kimlik

Kullanıcı oturum açtıktan sonra SDK, oturum açmış kullanıcıyı temsil eden bir oturum oluşturur. Oturumlar opaktır; uygulamanız temel belirteçleri incelememelidir. Bunun yerine uygulamanız küçük bir üst düzey özellik kümesi okur:

  • Oturumun şu anda kimlik doğrulaması yapılıp yapılmadığı.
  • Kullanıcının id ve email.
  • rayfin.yml içinde yapılandırdığınız özel talepler.

Kullanıcının oturumunu açan aynı istemci örneği, kullanıcının kimliğini her veri ve depolama çağrısına otomatik olarak ekler. Token’ları manuel olarak iletmeniz gerekmez.

Oturumlar değişiklik olaylarını da tetikler, böylece kullanıcı sayfayı yeniden yüklemeden oturum açtığında veya oturumu kapattığında kullanıcı arabiriminiz tepki verebilir.

Sunucu tarafı entegrasyonları için, her kullanıcı için ayrı bir istemci ve yalnızca bellekte tutulan Auth oturum kullanın (authStorage: false üzerinde RayfinClient veya Auth üzerinde { storage: false }). Kullanıcılar arasında değiştirilebilir oturum açmış istemci paylaşmayın. İsteği veya kullanıcıya özgü kapsamı sona erdiğinde auth örneğini yok edin.

Projenizde kimlik doğrulamasını etkinleştirme

Kimlik doğrulaması rayfin/rayfin.yml içinde yapılandırılır. Aşağıdaki örnek hem Fabric SSO (dağıtılan uygulamalar için) hem de e-posta/parolayla oturum açmayı (yerel geliştirme için) etkinleştirir:

services:
  auth:
    enabled: true
    allowedRedirectUris:
      - http://localhost:5173
    fabric:
      enabled: true
      externalEntraExchange: true
    password:
      enabled: true  # Local development only

Her ayar neleri denetler:

  • services.auth.enabled – Kimlik doğrulama hizmetini açar. Tüm Fabric dağıtımları için gereklidir.
  • allowedRedirectUris – Oturum açtıktan sonra kullanıcının yönlendirilebileceği origin’ler. Yerel geliştirme URL'nizi buraya ekleyin. npx rayfin up dağıtılan uygulama kaynağını otomatik olarak ekler.
  • fabric.enabled – Fabric SSO’yu etkinleştirir. Dağıtılan uygulamalar için gereklidir.
  • fabric.externalEntraExchange – Doğrudan devredilmiş Entra belirteci değişimini ve harici-ebeveyn-host devretmeyi mümkün kılar. Hedef Fabric ortamı da Exchange’i desteklemelidir.
  • password.enabled – Yerel geliştirme için e-posta ve parolayla oturum açmayı etkinleştirir.

Important

Fabric dağıtımları için kimlik doğrulamasının etkinleştirilmesi gerekir. npx rayfin up, services.auth.enabled olarak ayarlandığında false başarısız olur.

rayfin.yml düzenledikten sonra, değişikliği uygulamak için yerel arka ucu yeniden başlatın veya npx rayfin up komutunu çalıştırın.

Dışarıdan edinilen Entra tokenları için ön koşullar

Doğrudan değiş tokuş ve harici üst ana bilgisayar kimlik doğrulaması, hedef dağıtım tarafından kabul edilen Fabric/Power BI kitlesi için, öğenin sahibi kiracıda verilen Item.Execute.All ile birlikte devredilmiş bir kullanıcı belirteci gerektirir. Kullanıcının uygulama öğesi üzerinde Execute iznine sahip olması gerekir. Sadece uygulama için kullanılan tokenlar bu giriş yolları tarafından desteklenmiyor.

Kimlik kitaplığınız belirteci edinir ve onay sürecini yönetir. Rayfin SDK, bunu bir Rayfin oturumuyla değiş tokuş eder; Entra belirtecini edinmez. Tarayıcıdan çağrı yapan istemciler için ayrıca servisin CORS politikasının kaynağa ve Yetkilendirme üstbilgisine izin vermesi gerekir.

Özel talepler

Özel talepler, kiracı adı, özellik bayrağı veya uygulama sürümü gibi her oturuma uygulamaya özgü meta veriler eklemenize olanak tanır. Bunlar, veri modelinizi değiştirmeden rol tabanlı erişim denetimi ve özellik geçişi için kullanışlıdır.

services:
  auth:
    enabled: true
    customClaims:
      tenant: default
      app_version: 1.0.0

Özel talepler oturum nesnesinin içinde görünür ve veri izin kurallarınızdan başvurulabilir.

SDK'nın sağladığı bilgiler

RayfinClient kullandığınızda, kimlik doğrulama hizmeti client.auth üzerinde kullanılabilir. Kavramsal düzeyde şunları sağlar:

  • Yerel geliştirme sırasında e-posta ve parola ile kaydolun ve oturum açın.
  • Fabric SSO ile oturum açma ve kaydolma işlemi, dağıtılan uygulamalar için. Aynı çağrı hem yeni hem de dönen kullanıcıları işler.
  • Tarayıcı veya Node.js kodunda doğrudan devredilen Entra belirteci değişimi, ayrıca gömülü uygulamalar için güvenilen dış üst ana bilgisayara devretme sağlanır.
  • Geçerli oturumu sonlandırmak için oturumu kapatın.
  • Oturum okuma ve abonelikler , kullanıcı arabiriminizin kullanıcının kimlik doğrulama durumuyla eşitlenmiş durumda kalmasını sağlar.

Bu özellikleri gerçek bir uygulamaya entegre eden kod için Fabric uygulamanız için Fabric SSO kimlik doğrulamasını yapılandırma bölümüne bakın. Geri çağırma ve aktarım izin verilenler listesiyle ilgili yönergeler için Kimlik doğrulama yeniden yönlendirme URI’lerini yapılandırın bölümüne bakın.