Compartilhar via


API de verificar permissões

Como desenvolvedor de visuais do Power BI, você pode desenvolver visuais que precisam de permissão para acessar vários recursos. Você solicita essas permissões na seção de privilégios do arquivo capabilities.json. Esses privilégios incluem a capacidade de acessar:

  • recursos remotos ou sites da Web
  • armazenamento local para baixar dados

O administrador de cada organização pode permitir ou bloquear essas permissões. A API de verificar permissões permite consultar o host em runtime para determinar quais permissões são concedidas. Você pode usar essas informações para criar um visual que funcionará com várias configurações de permissão.

A API de verificar permissões retorna o status de cada função de consulta de permissões:

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

Como usar a API de verificar permissões

Cada API de privilégios tem seu próprio método de verificar o status de permissões. Esse status pode ser um dos seguintes:

  • Permitido
  • Não declarado
  • Sem suporte
  • Desabilitado pelo administrador

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

Exportar conteúdo

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

Próximas etapas

API de visual personalizado do Power BI