Поделиться через


Проверка API разрешений

Разработчик визуальных элементов Power BI позволяет разрабатывать визуальные элементы, которым требуется разрешение на доступ к различным ресурсам. Вы запрашиваете эти разрешения в разделе привилегий файла capabilities.json . Эти привилегии включают возможность доступа:

  • удаленные ресурсы или веб-сайты
  • локальное хранилище для скачивания данных

Администратор каждой организации может разрешить или заблокировать эти разрешения. API проверки разрешений позволяет запрашивать узел во время выполнения, чтобы определить, какие разрешения предоставляются. Эти сведения можно использовать для разработки визуального элемента, который будет работать с различными параметрами разрешений.

API проверки разрешений возвращает состояние каждой функции запроса разрешений:

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

Использование API проверки разрешений

Каждый API привилегий имеет собственный метод запроса для проверки состояния разрешения. Состояние разрешения может быть одним из следующих.

  • Допустимо
  • Не объявлен
  • Не поддерживается
  • Отключено администратором

Веб-доступ

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

Экспорт содержимого

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 визуальных элементов Power BI