Sprawdzanie interfejsu API uprawnień
Jako deweloper wizualizacji usługi Power BI możesz opracowywać wizualizacje, które wymagają uprawnień dostępu do różnych zasobów. Zażądasz tych uprawnień w sekcji uprawnień w pliku capabilities.json . Te uprawnienia obejmują możliwość uzyskiwania dostępu:
- zasoby zdalne lub witryny internetowe
- magazyn lokalny do pobierania danych
Każdy administrator organizacji może zezwalać na te uprawnienia lub blokować je. Interfejs API sprawdzania uprawnień umożliwia wykonywanie zapytań dotyczących hosta w czasie wykonywania w celu określenia, które uprawnienia zostały przyznane. Te informacje umożliwiają zaprojektowanie wizualizacji, która będzie działać z różnymi ustawieniami uprawnień.
Interfejs API sprawdzania uprawnień zwraca stan każdej funkcji zapytania uprawnień:
/**
* 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,
}
Jak używać interfejsu API sprawdzania uprawnień
Każdy interfejs API uprawnień ma własną metodę zapytania, aby sprawdzić stan uprawnień. Stan uprawnień może być jednym z następujących elementów:
- Dozwolone
- Nie zadeklarowane
- Nieobsługiwane
- Wyłączone przez administratora
Web access
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>;
}
Eksportowanie zawartości
export interface IDownloadService {
/**
* Returns the availability status of the service.
*
* @returns the promise that resolves to privilege status of the service
*/
exportStatus(): IPromise<PrivilegeStatus>;
}