API létrehozása a GraphQL-hez a Fabricben, és adatok hozzáadása
A GraphQL-hez készült Fabric API használatának első lépéseit egy API létrehozásával, majd egy adatforrás csatolásával teheti elérhetővé az API-n keresztül kiválasztott adatokat. A Fabric az adatok alapján automatikusan létrehozza a GraphQL-sémát, és az alkalmazások percek alatt készen állnak a csatlakozásra.
Előfeltételek
- Engedélyezze a "Felhasználók létrehozhatnak Fabric elemeket" bérlői rendszergazda beállítást.
API létrehozása a GraphQL-hez
API létrehozása a GraphQL-hez:
Válassza Új elem bármelyik munkaterületről. A megnyíló panelen, az Adatok fejlesztéseterületen válassza Api for GraphQLlehetőséget.
Adja meg az elem nevét, és válassza a Létrehozás lehetőséget.
Most már rendelkezik egy teljesen működőképes API-val az adatok eléréséhez a Fabricben.
Csatlakozás adatforráshoz és a séma létrehozása
Ezen a ponton az API készen áll, de nem ad ki adatokat. A GraphQL API-jait típusok és mezők szerint rendezett sémák határozzák meg egy erősen gépelt rendszerben. A Fabric automatikusan létrehozza a szükséges GraphQL-sémát a GraphQL-ügyfelek számára elérhetővé tenni kívánt adatok alapján.
Az új API-ban válasszon ki egy közzéteendő adatforrást az adatforrás kiválasztása lehetőséget választva.
Ezután válassza ki az API csatlakozási lehetőségét:
Itt megadhatja, hogy az API-ügyfelek hogyan férhetnek hozzá az API-hoz a GraphQL-kérések végrehajtásához két különböző beállítás alapján:
- Egyszeri bejelentkezés (SSO):az ügyfél hitelesítő adataival csatlakozhat adatforrásokhoz, ami azt jelenti, hogy a hitelesített API-felhasználónak hozzáféréssel kell rendelkeznie az alapul szolgáló adatforráshoz. Ha például Lakehouse-adatokat ad ki az API-ügyfeleknek, a hitelesített felhasználónak hozzá kell férnie az API-hoz és a Lakehouse-hoz is. Pontosabban a GraphQL API-ra vonatkozó engedélyek végrehajtása (Lekérdezések és mutációk futtatása lehetőség közvetlen hozzáférési engedélyek hozzáadásakor), valamint a választott adatforrásban szükséges olvasási vagy írási engedélyek végrehajtása. Másik lehetőségként a felhasználó hozzáadható munkaterület-tagként egy közreműködői szerepkörrel, ahol az API és az adatforrás elemei is találhatók, ami biztosítja a szükséges hozzáférést mindkét elemhez egyetlen helyről. További információt a munkaterületekhez való hozzáférés biztosítása a felhasználóknak című témakörben talál.
- Mentett hitelesítő adatok: mentett hitelesítő adatok használata az adatforrásokhoz való csatlakozáshoz, ami azt jelenti, hogy a hitelesített API-felhasználónak nincs szüksége közvetlen hozzáférésre az adatforráshoz. A mentett hitelesítő adatok meg lesznek osztva az API és az adatforrás mögöttes táblái közötti adatok eléréséhez. Ha például Lakehouse-adatokat ad ki az API-ügyfeleknek, a hitelesített felhasználónak csak közvetlen hozzáféréssel kell rendelkeznie az API-hoz (lekérdezések és mutációk futtatása közvetlen hozzáférési engedélyek hozzáadásakor), és nem a Lakehouse-hoz. A mentett hitelesítő adatok az API adatforráshoz való csatlakoztatására szolgálnak, és az összes hitelesített API-felhasználó megosztja őket. Ez a lehetőség akkor szükséges, ha Egy Azure-adatforrást, például egy Azure SQL-adatbázist a GraphQL-en keresztül ad ki. Az OK gombot választva a rendszer kérni fogja, hogy hozzon létre egy új mentett hitelesítő adatot, miután kiválasztott egy adatforrást a következő lépésben, ha még nincs megadva mentett hitelesítő adat.
Miután kiválasztotta ezeket a beállításokat, a rendszer kikényszeríti az API-hoz később hozzáadott összes adatforrás esetében. Nem lehet keverni az egyszeri bejelentkezést és a mentett hitelesítő adatokat ugyanabban az API-ban. Emellett, bár az API-hoz való csatlakozáshoz használhat egyszerű felhasználóneveket (UPN-eket) vagy egyszerű szolgáltatásneveket (SPN-eket), a szolgáltatásnevek jelenleg csak az egyszeri bejelentkezést (SSO) támogatják. A felhasználói tagok a biztonsági követelményektől függően használhatják az egyszeri bejelentkezést vagy a mentett hitelesítő adatokat.
Feljegyzés
A GraphQL API megköveteli, hogy az ügyfélalkalmazások a Microsoft Entra-azonosítót használják a hitelesítéshez. Az ügyfélalkalmazást megfelelően kell regisztrálni és konfigurálni ahhoz, hogy API-hívásokat hajtsanak végre a Fabricen. A Microsoft Entra ID-ban regisztrált alkalmazáshoz GraphQL.Execute.All API-engedélyek szükségesek a Power BI szolgáltatáshoz. A Connect Applications szolgáltatásnevekhez és a felhasználói tagokhoz tartozó utasításokat és mintakódot tartalmazó, végpontok közötti oktatóanyagot is találhat.
Megjelenik a OneLake-adatközpont; válassza ki azt az adatforrást, amelyhez csatlakozni szeretne. Az alábbi példában egy tükrözött adatbázishoz társított AdventureWorks SQL Analytics-végpontot választunk. Válassza a Szűrő lehetőséget, ha csak bizonyos típusú Háló-adatforrásokat szeretne látni, vagy egy adott kulcsszó alapján szeretne keresni. Ha elkészült, válassza a Csatlakozás lehetőséget.
Megjelenik az Adatok lekérése képernyő, ahol kiválaszthatja, hogy mely objektumok jelenjenek meg a GraphQL-sémában.
Jelölje be az egyes táblák vagy tárolt eljárások melletti jelölőnégyzeteket, amelyeket el szeretne helyezni az API-ban. Ha egy mappában lévő összes objektumot ki szeretné jelölni, jelölje be az adatforrás nevét tartalmazó jelölőnégyzetet a tetején.
A GraphQL-sémalétrehozási folyamat elindításához válassza a Betöltés lehetőséget.
A séma létrejön, és megkezdheti a GraphQL-lekérdezések (olvasás, lista) vagy mutációk (létrehozás, frissítés, törlés) prototípusát az adatok kezeléséhez.
A GraphQL-hez készült API készen áll a kapcsolatok és kérések elfogadására. Az API-szerkesztővel graphQL-lekérdezéseket tesztelhet és prototípusokat készíthet, valamint a Sémakezelővel ellenőrizheti az API-ban közzétett adattípusokat és mezőket.
Engedélyek összegzése
Az alábbi táblázat összefoglalja a GraphQL API-t elérő ügyfelek különböző támogatott permutációit és minimálisan szükséges engedélyeit:
API-hívó | Adatforrás-kapcsolatok | Szükséges GraphQL API-engedélyek | Szükséges adatforrás-engedélyek | Entra-alkalmazás hatóköre |
---|---|---|---|---|
Egyszerű felhasználó (UPN) | Egyszeri bejelentkezés (SSO) | Lekérdezések és mutációk futtatása API-szinten | Az UPN-nek adott megfelelő olvasási/írási engedélyek az adatforrásban | GraphQL.Execute.All |
Szolgáltatásnév (SPN) | Egyszeri bejelentkezés (SSO) | Lekérdezések és mutációk futtatása API-szinten | Az egyszerű szolgáltatásnévnek adott megfelelő olvasási/írási engedélyek az adatforrásban | GraphQL.Execute.All |
Egyszerű felhasználó (UPN) | Mentett hitelesítő adatok | Lekérdezések és mutációk futtatása API-szinten | Az adatforrás mentett hitelesítő adatainak (kapcsolatának) megfelelő olvasási/írási engedélyek | GraphQL.Execute.All |
Szolgáltatásnév (SPN) | Mentett hitelesítő adatok | Jelenleg nem támogatott | Jelenleg nem támogatott | Jelenleg nem támogatott |