Jaa


Todentamisen ohjelmointirajapinta

Todentamisen ohjelmointirajapinnan avulla visualisoinnit voivat hankkia Microsoft Entra -tunnuksen (aiemmalta nimeltään Azure AD) kirjautuneille käyttäjille, mikä helpottaa kertakirjautumisen todentamista.

Power BI -järjestelmänvalvojat voivat ottaa ohjelmointirajapinnan käyttöön tai poistaa sen käytöstä yleisellä valitsimella. Oletusarvoiset asetuslohkot (poistaa käytöstä) ohjelmointirajapinnan.

Ohjelmointirajapintaa voidaan käyttää vain AppSource-visualisointeihin, ei yksityisiin visualisointeihin. Kehitteillä olevat visualisoinnit voidaan testata virheenkorjaustilassa ennen niiden julkaisemista.

Tuetut ympäristöt

Seuraavia ympäristöjä tuetaan:

  • Verkko
  • Työpöytä
  • RS Desktop
  • Mobiili

Ympäristöt, joita ei tueta

Seuraavia ympäristöjä ei vielä tueta:

  • RS-palvelu
  • Upotettu analytiikka
  • Teams

Todentamisen ohjelmointirajapinnan käyttäminen

Lisää capabilities.json-tiedostoon "AADAuthentication"-oikeus ja Microsoft Entra ID -rekisteröity sovellus-URI kullekin tuetulle pilvipalvelulle. Fabric luo tunnuksen nykyiselle pilvipalvelulle määritetyn yleisön mukaan ja toimittaa sen visualisointiin.
Visualisointi voi sitten todentautua tunnuksen avulla kohdeyleisöä vastaan edustaen sen taustapalvelua:

"privileges": [
    {
        "name": "AADAuthentication",
        "parameters": {
            "COM": "https://contoso.com",
            "CN": "https://contoso.cn"
        }
    }
]

Määritä pbiviz.json-tiedostossa ohjelmointirajapinnan versioksi 5.9.1 tai uudempi:

Äskettäin julkaistu AcquireAADTokenService sisältää kaksi menetelmää:

  • acquireAADToken: Palauttaa todennustunnuksen hyötykuorman, jonka tyyppi AcquireAADTokenResult on visualisoinnille, tai tyhjäarvon, jos sitä ei voi noutaa.

     /**
     * Enum representing the various clouds supported by the Authentication API.
     */
    export const enum CloudName {
        COM = "COM",         // Commercial Cloud
        CN = "CN",           // China Cloud
        GCC = "GCC",         // US Government Community Cloud
        GCCHIGH = "GCCHIGH", // US Government Community Cloud High
        DOD = "DOD",         // US Department of Defense Cloud
    }
    
    /**
     * Interface representing information about the user associated with the token.
     */
    export interface AcquireAADTokenUserInfo {
        userId?: string;   // Unique identifier for the user
        tenantId?: string; // Unique identifier for the tenant
    }
    
    /**
     * Interface representing information about the fabric environment.
     */
    export interface AcquireAADTokenFabricInfo {
        cloudName?: CloudName; // Name of the cloud environment
    }
    
    /**
     * Interface representing the result of acquiring a Microsoft Entra ID token.
     */
    export interface AcquireAADTokenResult {
        accessToken?: string;       // Access token issued by Microsoft Entra ID
        expiresOn?: number;         // Expiration time of the access token
        userInfo?: AcquireAADTokenUserInfo;     // Information about the user associated with the token
        fabricInfo?: AcquireAADTokenFabricInfo; // Information about the fabric environment
    }
    
  • acquireAADTokenstatus: Palauttaa jonkin seuraavista tunnuksen hankkimiseen liittyvistä oikeustilasta.

    • Sallittu: Käyttöoikeus sallitaan nykyisessä ympäristössä.
    • NotDeclared: Etuoikeuden määritys puuttuu visualisoinnin ominaisuuksien osasta.
    • Ei tueta: -oikeuksia ei tueta nykyisessä ympäristössä.
    • DisabledBy Hallinta: Fabric-järjestelmänvalvoja kielsi käyttöoikeuksien käytön.

Seuraava mallikoodi esittelee, miten voit hankkia Microsoft Entra ID -tunnuksen ohjelmointirajapinnan avulla:

    // Step 1: Check the status of AAD token acquisition 
    const acquireTokenStatus = await this.acquireAADTokenService.acquireAADTokenstatus(); 

    // Step 2: Verify if acquiring the token is allowed 
    if (acquireTokenStatus === PrivilegeStatus.Allowed) { 

       // Step 3: Acquire the Microsoft Entra ID token
       const acquireAADTokenResult: AcquireAADTokenResult = await this.acquireAADTokenService.acquireAADToken(); 

       // Step 4: Confirm successful acquisition of the access token
       if (acquireAADTokenResult.accessToken) { 

            // Step 5: Call your backend API with the obtained token 
        } 
    } 

    // Step 6: Handle unsuccessful AAD token acquisition 

Huomioitavat asiat ja rajoitukset

Tunnuksen hankinta estetään, jos jokin seuraavista ehdoista pätee:

  • Vuokraajakytkin on poistettu käytöstä.

  • Käyttäjä ei ole kirjautunut sisään (Desktopissa).

  • ISV ei ole valtuuttanut Power BI -sovellusta valmiiksi.

  • AADAuthentication-oikeusparametrin muoto on virheellinen.

  • Visualisointia ei hyväksytä julkisesti tai se ei ole virheenkorjausvisualisointi.

  • Visualisoinnin taustapalvelulla, jonka visualisointi määrittää yleisön mukaan, ei ole asianmukaisia suostumusta Graph-ohjelmointirajapinnalle kuluttajavuokraajassa visualisointia käyttämällä. Lisätietoja suostumuksesta on vuokraajan järjestelmänvalvojan suostumuksessa.

Microsoft Entra ID -sovelluksen määritys