Controllare l'API delle autorizzazioni

Gli sviluppatori di oggetti visivi di Power BI possono sviluppare oggetti visivi che necessitano dell'autorizzazione per accedere a varie risorse. Queste autorizzazioni vengono richieste nella sezione privilegi del file capabilities.json . Questi privilegi includono la possibilità di accedere:

  • risorse remote o siti Web
  • archiviazione locale per il download dei dati

L'amministratore di ogni organizzazione può consentire o bloccare queste autorizzazioni. L'API check permissions consente di eseguire query sull'host in fase di esecuzione per determinare quali autorizzazioni vengono concesse. È possibile usare queste informazioni per progettare un oggetto visivo che funzionerà con varie impostazioni di autorizzazione.

L'API check permissions restituisce lo stato di ogni funzione di query di autorizzazione:

/**
 * Represents a return type for privilege status query methods
 */
export const enum PrivilegeStatus {
    /**
     * The privilege is allowed in the current environment
     */
    Allowed,

    /**
     * The privilege declaration is missing in visual capabilities section
     */
    NotDeclared,

    /**
     * The privilege is not supported in the current environment
     */
    NotSupported,

    /**
     * The privilege usage was denied by tenant administrator
     */
    DisabledByAdmin,
}

Come usare l'API check permissions

Ogni API con privilegi ha un proprio metodo di query per verificare lo stato delle autorizzazioni. Lo stato delle autorizzazioni può essere uno dei seguenti:

  • Consentito
  • Non dichiarato
  • Non supportato
  • Disabilitato da Amministrazione

Accesso Web

export interface IWebAccessService {
    /**
     * Returns the availability status of the service for specified url.
     * 
     * @param url - the URL to check status for
     * @returns the promise that resolves to privilege status of the service
     */
    webAccessStatus(url: string): IPromise<PrivilegeStatus>;
}

Esportare il contenuto

export interface IDownloadService {
    /**
     * Returns the availability status of the service.
     * 
     * @returns the promise that resolves to privilege status of the service
     */
    exportStatus(): IPromise<PrivilegeStatus>;
}

API visiva personalizzata di Power BI