Dokuda GraphQL için API oluşturma ve veri ekleme
GraphQL için Doku API'sini kullanmaya başlamak için bir API oluşturun ve ardından api aracılığıyla seçtiğiniz verileri kullanıma sunma amacıyla bir veri kaynağını bağlayın. Doku, verilerinize göre GraphQL şemasını otomatik olarak oluşturur ve uygulamalar dakikalar içinde bağlanmaya hazırdır.
Önkoşullar
- "Kullanıcılar Doku öğeleri oluşturabilir" ayarını yöneticisi kiracı ayarı olarak etkinleştirin.
GraphQL için API oluşturma
GraphQL için API oluşturmak için:
Herhangi bir çalışma alanından Yeni öğe seçin. Açılan panelde, Geliştir verileraltında, GraphQL için API'yi seçin.
Öğeniz için bir Ad girin ve Oluştur'u seçin.
Artık Doku'daki verilerinize erişmek için tam işlevsel bir API'niz var.
Veri kaynağına bağlanma ve şemanızı oluşturma
Bu noktada API hazır ancak herhangi bir veri göstermiyor. GraphQL API'leri, türleri ve alanları bakımından düzenlenmiş bir şemada, kesin olarak belirlenmiş bir sistemde tanımlanır. Doku, GraphQL istemcilerine göstermeyi seçtiğiniz verileri temel alarak gerekli GraphQL şemasını otomatik olarak oluşturur.
Yeni API'nizde Veri kaynağı seç'i seçerek kullanıma sunmanız gereken bir veri kaynağı seçin.
Ardından API'niz için bağlantı seçeneğini belirleyin:
Burada API istemcilerinin iki farklı seçeneğe göre GraphQL isteklerini yürütmek için API'ye nasıl erişebileceğini tanımlayabilirsiniz:
- Çoklu oturum açma (SSO):Veri kaynaklarına bağlanmak için istemci kimlik bilgilerini kullanın; bu da kimliği doğrulanmış API kullanıcısının temel alınan veri kaynağına erişimi olması gerektiği anlamına gelir. Örneğin, Lakehouse verilerini API istemcilerinize açıklıyorsanız, kimliği doğrulanmış kullanıcının hem API'ye hem de Lakehouse'a erişimi olmalıdır. Daha açık belirtmek gerekirse GraphQL API'sine izinleri yürüt (Doğrudan erişim izinleri eklerken Sorguları ve Mutasyonları Çalıştır seçeneği) ve tercih edilen veri kaynağında gerekli olan okuma veya yazma izinlerini buna uygun olarak yürütebilirsiniz. Alternatif olarak, kullanıcı hem API'nin hem de veri kaynağı öğelerinin bulunduğu katkıda bulunan rolüne sahip çalışma alanı üyesi olarak eklenebilir ve bu da tek bir konumdan her iki öğeye de gerekli erişimi verir. Daha fazla bilgi için bkz . Kullanıcılara çalışma alanlarına erişim verme.
- Kayıtlı kimlik bilgileri: Veri kaynaklarına bağlanmak için kaydedilmiş kimlik bilgilerini kullanın. Bu, kimliği doğrulanmış API kullanıcısının veri kaynağına doğrudan erişim gerektirmediği anlamına gelir. Kaydedilen kimlik bilgileri, API ile veri kaynağındaki temel tablolar arasındaki verilere erişmek için paylaşılır. Örneğin, Lakehouse verilerini API istemcilerinize gösteriyorsanız, kimliği doğrulanmış kullanıcının Lakehouse'a değil API'ye doğrudan erişimi olmalıdır (Doğrudan erişim izinleri eklerken Sorguları ve Mutasyonları Çalıştır seçeneği). Kaydedilmiş kimlik bilgileri, API'yi veri kaynağına bağlamak için kullanılır ve kimliği doğrulanmış tüm API kullanıcıları tarafından paylaşılır. GraphQL aracılığıyla Azure SQL veritabanı gibi bir Azure veri kaynağını ortaya çıkartıyorsanız bu seçenek gereklidir. Tamam'ı seçtikten sonra, bir sonraki adımda bir veri kaynağı seçtikten sonra kaydedilmiş bir kimlik bilgisi yoksa yeni bir kaydedilmiş kimlik bilgisi oluşturmanız istenir.
Bu seçenekler seçildikten sonra API'ye eklenen tüm veri kaynakları için uygulanır. Aynı API'de çoklu oturum açma ve kaydedilmiş kimlik bilgilerini karıştırmak mümkün değildir. Ayrıca, API'nize bağlanmak için Kullanıcı Asıl Adları (UPN' ler) veya Hizmet Asıl Adları (SPN) kullanabilirsiniz ancak hizmet sorumluları şu anda yalnızca çoklu oturum açmayı (SSO) destekler. Kullanıcı sorumluları, güvenlik gereksinimlerinize bağlı olarak SSO veya kaydedilmiş kimlik bilgilerini kullanabilir.
Not
GraphQL api'si, istemci uygulamalarının kimlik doğrulaması için Microsoft Entra Id kullanmasını gerektirir. İstemci uygulamanızın Fabric'e karşı API çağrılarını yürütmek için yeterli şekilde kaydedilmesi ve yapılandırılması gerekir. Microsoft Entra ID'ye kaydedilen uygulama, Power BI hizmeti için GraphQL.Execute.All API izinleri gerektirir. Connect Applications'ta hem kullanıcı sorumluları hem de hizmet sorumluları için yönergeler ve örnek kod içeren uçtan uca bir öğretici bulabilirsiniz.
OneLake veri hub'ı görünür; bağlanmak istediğiniz veri kaynağını seçin. Aşağıdaki örnek için yansıtılmış veritabanına bağlı bir AdventureWorks SQL analiz uç noktası seçiyoruz. Yalnızca belirli doku veri kaynağı türlerini görmek için Filtrele'yi seçin veya belirli bir anahtar sözcükle arama yapın. Hazır olduğunuzda Bağlan'ı seçin.
GraphQL şemanızda hangi nesnelerin görünmesini istediğinizi seçebileceğiniz Veri al ekranı görüntülenir.
API'de göstermek istediğiniz tek tek tabloların veya saklı yordamların yanındaki onay kutularını seçin. Bir klasördeki tüm nesneleri seçmek için üst kısımda veri kaynağı adı bulunan onay kutusunu seçin.
GraphQL şema oluşturma işlemini başlatmak için Yükle'yi seçin.
Şema oluşturulur ve verilerinizle etkileşim kurmak için GraphQL sorgularının (okuma, listeleme) veya mutasyonların (oluşturma, güncelleştirme, silme) prototipini oluşturmaya başlayabilirsiniz.
GraphQL API'niz artık bağlantıları ve istekleri kabul etmeye hazırdır. GraphQL sorgularını test etmek ve prototipini yapmak için API düzenleyicisini ve API'de kullanıma sunulan veri türlerini ve alanları doğrulamak için Şema gezginini kullanabilirsiniz.
İzin özeti
Aşağıdaki tabloda GraphQL API'sine erişen istemciler için desteklenen farklı permütasyonlar ve gereken en düşük izinler özetlenmektedir:
API Çağıranı | Veri kaynağı bağlantısı | Gerekli GraphQL API izinleri | Gerekli Veri Kaynağı izinleri | Uygulama kapsamını daraltma |
---|---|---|---|---|
Kullanıcı Sorumlusu (UPN) | Çoklu oturum açma (SSO) | Sorguları ve Mutasyonları API düzeyinde çalıştırma | Veri kaynağında UPN'ye verilen uygun Okuma/Yazma izinleri | GraphQL.Execute.All |
Hizmet Sorumlusu (SPN) | Çoklu oturum açma (SSO) | Sorguları ve Mutasyonları API düzeyinde çalıştırma | Veri kaynağında SPN'ye verilen uygun Okuma/Yazma izinleri | GraphQL.Execute.All |
Kullanıcı Sorumlusu (UPN) | Kaydedilen kimlik bilgileri | Sorguları ve Mutasyonları API düzeyinde çalıştırma | Veri kaynağındaki kayıtlı kimlik bilgilerine (bağlantı) verilen uygun Okuma/Yazma izinleri | GraphQL.Execute.All |
Hizmet Sorumlusu (SPN) | Kaydedilen kimlik bilgileri | Şu anda desteklenmiyor | Şu anda desteklenmiyor | Şu anda desteklenmiyor |