Del via


Opprette en API for GraphQL i Fabric og legge til data

Kom i gang med Fabric API for GraphQL ved å opprette en API, og koble deretter til en datakilde for å vise dataene du valgte gjennom API-en. Fabric bygger GraphQL-skjemaet automatisk basert på dataene dine, og programmene er klare til å koble til på få minutter.

Hvem bør lage GraphQL-API-er

Creating GraphQL APIs in Fabric er designet for:

  • Dataingeniører eksponerer Fabric lakehouse- og warehouse-data gjennom moderne API-er for applikasjonsbruk
  • Fabric workspace-bidragsytere som ønsker å raskt lage API-er for datatilgang uten å skrive backend-kode
  • BI-utviklere som bygger skreddersydde analyseapplikasjoner som trenger programmatisk tilgang til Fabric-data
  • Integrasjonsutviklere som lager datatilgangslag for tilpassede applikasjoner og automatiserte arbeidsflyter
  • Utviklingsteam som foretrekker GraphQLs fleksible, typesikre tilnærming fremfor direkte databasetilkoblinger

Bruk denne guiden når du trenger å lage et nytt GraphQL API som eksponerer Fabric-lakehouse-, lager- eller databasedata for applikasjoner.

Forutsetning

For å lage et API for GraphQL trenger du:

Dine tillatelser:

  • Bli medlem av Fabric-arbeidsområdet der du ønsker å opprette API-et
  • Ha minst bidragsyterrollen i det arbeidsområdet (eller høyere: Administrator, Medlem)

Organisasjonsoppsett:

  • En Fabric-administrator eller kapasitetsadministrator må aktivere leietakerinnstillingen "Brukere kan opprette Fabric-elementer"

    Skjermbilde av leietakerinnstillingene og hvor du kan aktivere alternativet Brukere kan opprette Fabric-elementer.

  • Arbeidsområdet må støttes av en Fabric-kapasitet (Premium, Trial eller Fabric-kapasitet)

Datakildetilgang (for senere trinn):

  • Lesetillatelser på datakildene du planlegger å eksponere gjennom GraphQL API-et
  • Tillatelsene kan gis gjennom medlemskap i arbeidsområdet eller direkte datakildetillatelser
  • I denne guiden bruker vi et AdventureWorks SQL-analyseendepunkt koblet til en speilet database som eksempeldatakilde. For å hente AdventureWorks-eksempeldataene, se Last inn AdventureWorks-eksempeldata i SQL-databasen din.

Opprette en API for GraphQL

Slik oppretter du en API for GraphQL:

  1. Gå til Fabric-portalen og https://fabric.microsoft.com logg inn med din organisasjonskonto.

  2. Velg et arbeidsområde hvor du vil opprette API-et, og velg deretter Nytt element. Velg API for GraphQLunder Utvikle datai panelet som åpnes.

    Skjermbilde av verktøylinjen for arbeidsområdet, som viser hvor du velger Alternativet Nytt.

  3. Skriv inn et navn på ditt nye API for GraphQL-elementet og velg Create.

Du har nå et aktivt GraphQL API-endepunkt i Fabric. På dette tidspunktet kan du kopiere endepunkts-URL-en fra Fabric-portalen, velge Generer kode for å hente kodeeksempler, og API-et er klart til å motta forespørsler. I neste avsnitt kobler vi datakilder for å bygge skjemaet ditt, men selve endepunktet er allerede funksjonelt.

Koble til en datakilde, og bygg skjemaet

På dette tidspunktet er API-endepunktet klart, men det eksponerer ennå ingen data. API-er for GraphQL er definert i et skjema organisert i form av typer og felt, i et sterkt skrevet system. Fabric genererer automatisk det nødvendige GraphQL-skjemaet basert på dataene du velger å vise til GraphQL-klienter.

For å koble en datakilde og bygge skjemaet ditt:

  1. Sørg for at du har valgt det nye GraphQL API-elementet i arbeidsområdet ditt.

  2. Under Legg til data i API-et for GraphQL , velg flisen Velg datakilde .

    Skjermbilde av Select-datakildeflisen.

  3. Velg deretter tilkoblingsalternativet for API-en:

    Skjermbilde av valget Velg tilkoblingsvalg.

    Her kan du definere hvordan API-klienter kan få tilgang til API-en for å utføre GraphQL-forespørsler basert på to forskjellige alternativer:

    • Single sign-on (SSO): Du kan bruke klientinformasjon for å koble til datakilder. Den autentiserte API-brukeren må ha tilgang til de underliggende tabellene i datakilden.

      Hvis du for eksempel eksponerer Lakehouse-data til API-klientene dine, må den godkjente brukeren ha tilgang til både API-en og Lakehouse. Mer spesifikt, Utføre tillatelser til GraphQL API (Kjør spørringer og mutasjoner alternativet når du legger til direkte tilgangstillatelser) og lese- eller skrivetillatelser som kreves i den valgte datakilden, tilsvarende. Alternativt kan brukeren legges til som arbeidsområdemedlem med en bidragsyterrolle hvor både API- og datakildeelementer er plassert, noe som gir nødvendig tilgang til begge elementene fra ett enkelt sted. Hvis du vil ha mer informasjon, kan du se Gi brukere tilgang til arbeidsområder.

    • Lagrede legitimasjoner: Du kan bruke lagrede legitimasjoner for å koble til datakilder. Den autentiserte API-brukeren trenger ikke direkte tilgang til dataene. En lagret legitimasjon deles for å få tilgang til dataene mellom API-en og underliggende tabeller i datakilden.

      For eksempel, hvis du eksponerer Lakehouse-data for API-klientene dine, trenger den autentiserte brukeren bare å ha direkte tilgang til API-et (Run Queries and Mutations-alternativet når du legger til direkte tilgangstillatelser) og ikke Lakehouse. En lagret legitimasjon brukes til å koble API-en til datakilden og deles av alle godkjente API-brukere. Dette alternativet kreves hvis du eksponerer en Azure-datakilde, for eksempel en Azure SQL-database via GraphQL.

    Når de er valgt, håndheves disse alternativene for alle datakilder som senere legges til API-et. Det er ikke mulig å blande enkel pålogging og lagret legitimasjon i samme API. Du kan bruke User Principal Names (UPNs) eller Service Principal Names (SPNs) for å koble til API-et ditt, enten ved å bruke SSO eller lagrede legitimasjoner avhengig av dine sikkerhetskrav.

    For en detaljert oversikt over tillatelseskrav for ulike autentiseringsscenarier, se Autentiserings- og tillatelsesoppsummering.

    Merk

    API for GraphQL krever at klientprogrammer bruker Microsoft Entra ID for godkjenning. Klientprogrammet må være registrert og konfigurert tilstrekkelig til å utføre API-kall mot Fabric. Appen som er registrert i Microsoft Entra ID, krever GraphQLApi.Execute.All API-tillatelser for Power BI-tjenesten. Du finner en ende-til-ende-opplæring med instruksjoner og eksempelkode for både brukerkontohavere og tjenestekontohavere hos Connect Applications.

  4. Fra OneLake-katalogen velger du datakilden du vil koble til. Velg Filter for å se bare bestemte typer Fabric-datakilder, eller søk etter et bestemt nøkkelord. Når du er klar, velger du Koble til.

    Skjermbilde av OneLake-datahuben, som viser tilgjengelige datakildealternativer for et arbeidsområde.

    I dette eksempelet valgte vi et SQL-analyseendepunkt koblet til en speilet database som inneholder AdventureWorks-eksempeldataene.

  5. Hvis du tidligere valgte lagrede legitimasjoner , og det ikke allerede finnes en lagret legitimasjon for GraphQL-API-et ditt, blir du bedt om å opprette en ny lagret legitimasjon.

  6. Velg data-siden vises, hvor du kan velge hvilke objekter du vil ha eksponert i GraphQL-skjemaet ditt.

  7. Merk av for de individuelle tabellene, visningene eller de lagrede prosedyrene du vil vise i API-en. Hvis du vil merke alle objektene i en mappe, merker du av i avmerkingsboksen med datakildenavnet øverst.

    Skjermbilde av datautforskeren med en mappe valgt, som automatisk velger alle elementene i den mappen.

  8. Velg Last inn for å starte genereringsprosessen for GraphQL-skjema.

  9. Skjemaet genereres, og du kan begynne å skrive GraphQL-spørringer (lese, liste) eller mutasjoner (opprette, oppdatere, slette) for å samhandle med dataene dine.

    Skjermbilde av skjermbildet Skjemautforsker.

    Tip

    Skriv inn Ctrl/Cmd + mellomromstasten for å få forslag mens du skriver spørringene dine i editoren.

    For mer informasjon om bruk av API-editoren, se Fabric API for GraphQL-editoren.

Sammendrag

Det var det! Du klarte å lage et GraphQL-API i Fabric, koblet datakilden din til og genererte et skjema. API-et ditt er nå klart til å akseptere tilkoblinger og forespørsler fra klientapplikasjoner. Du kan bruke API-editoren til å teste og prototype GraphQL-spørringer, og bruke Schema-utforskeren for å verifisere datatypene og feltene som er eksponert i API-et.