API zum Überprüfen von Berechtigungen

Als Entwickler von Power BI-Visuals können Sie Visuals entwickeln, die für den Zugriff auf verschiedene Ressourcen Berechtigungen benötigen. Sie fordern diese Berechtigungen im Abschnitt „privileges“ der Datei capabilities.json an. Diese Berechtigungen umfassen die Möglichkeit des Zugriffs auf Folgendes:

  • Remoteressourcen oder Websites
  • Lokalen Speicher zum Herunterladen von Daten

Der Administrator einer Organisation kann diese Berechtigungen erteilen oder blockieren. Mit der API zum Überprüfen von Berechtigungen können Sie den Host zur Laufzeit abfragen, um festzustellen, welche Berechtigungen erteilt werden. Sie können anhand dieser Informationen ein Visual entwerfen, das mit verschiedenen Berechtigungseinstellungen funktioniert.

Die API zum Überprüfen von Berechtigungen gibt den Status jeder Berechtigungsabfragefunktion zurück:

/**
 * 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,
}

Verwenden der API zum Überprüfen von Berechtigungen

Jede Berechtigungs-API verfügt über eine eigene Methode zum Abfragen des Berechtigungsstatus. Der Berechtigungsstatus kann eine der folgenden Angaben sein:

  • Zulässig
  • Nicht deklariert
  • Nicht unterstützt
  • Durch Administrator deaktiviert

Webzugriff

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>;
}

Inhalt exportieren

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

Nächste Schritte

Benutzerdefiniertes Visual-API für Power BI