Embed Token - Reports GenerateTokenInGroup
Gera um token de inserção para exibir ou editar o relatório especificado do workspace especificado.
Dica
Para criar tokens de inserção, é recomendável usar a API mais recente, Gerar Token. Gerar token dá suporte a funções adicionais, como a criação de um token para vários itens.
Importante
Essa chamada à API só é relevante para o cenário de inserção para seus clientes . Para saber mais sobre como usar essa API, consulte Considerações ao gerar um token de inserção.
Permissões
- Ao usar uma entidade de serviço para autenticação, consulte Inserir conteúdo do Power BI com a entidade de serviço e Considerações e limitações.
- Essa chamada à API pode ser chamada por um perfil de entidade de serviço. Para obter mais informações, consulte: Perfis de entidade de serviço no Power BI Embedded.
Escopo necessário
Tudo isso, a menos que um requisito não se aplique:
- Report.ReadWrite.All ou Report.Read.All
- Dataset.ReadWrite.All ou Dataset.Read.All
- Content.Create, necessário se o
allowSaveAs
sinalizador for especificado em GenerateTokenRequest
Limitações
Para relatórios de conexão dinâmica local do Azure Analysis Services ou do Analysis Services, gerar um token de inserção com segurança em nível de linha pode não funcionar por vários minutos após um Relatório Rebind.
POST https://api.powerbi.com/v1.0/myorg/groups/{groupId}/reports/{reportId}/GenerateToken
Parâmetros de URI
Nome | Em | Obrigatório | Tipo | Description |
---|---|---|---|---|
group
|
path | True |
string uuid |
A ID do workspace |
report
|
path | True |
string uuid |
A ID do relatório |
Corpo da solicitação
Nome | Tipo | Description |
---|---|---|
accessLevel |
O nível de acesso necessário para a geração de token de inserção |
|
allowSaveAs |
boolean |
Se um relatório inserido pode ser salvo como um novo relatório. O valor padrão é |
datasetId |
string |
A ID do conjunto de dados usada para a criação do relatório. Aplica-se somente quando você gera um token de inserção para criação de relatório. |
identities |
Uma lista de identidades a serem usadas para regras de segurança em nível de linha |
|
lifetimeInMinutes |
integer |
O tempo de vida máximo do token em minutos, começando a partir do momento em que ele foi gerado. Pode ser usado para reduzir o tempo de expiração de um token, mas não para estendê-lo. O valor deve ser um inteiro positivo. Zero (0) é equivalente a nulo e será ignorado, resultando no tempo de expiração padrão. |
Respostas
Nome | Tipo | Description |
---|---|---|
200 OK |
OK |
Exemplos
Generate a paginated report embed token using an effective identity example
Sample Request
POST https://api.powerbi.com/v1.0/myorg/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715/GenerateToken
{
"accessLevel": "View",
"identities": [
{
"username": "John Smith",
"reports": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Generate a report embed token for editing example. The embed token uses an effective identity.
Sample Request
POST https://api.powerbi.com/v1.0/myorg/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715/GenerateToken
{
"accessLevel": "Edit",
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Generate a report embed token for viewing a report and saving to a new report example
Sample Request
POST https://api.powerbi.com/v1.0/myorg/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715/GenerateToken
{
"accessLevel": "View",
"allowSaveAs": "true"
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Generate a report embed token using an effective identity example
Sample Request
POST https://api.powerbi.com/v1.0/myorg/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715/GenerateToken
{
"accessLevel": "View",
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Generate a report embed token using an effective identity with an identity blob example
Sample Request
POST https://api.powerbi.com/v1.0/myorg/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715/GenerateToken
{
"accessLevel": "View",
"identities": [
{
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
],
"identityBlob": {
"value": "eyJ0eX....AAA="
}
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Generate a report embed token using an effective identity with custom data for Azure Analysis Services example
Sample Request
POST https://api.powerbi.com/v1.0/myorg/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715/GenerateToken
{
"accessLevel": "View",
"identities": [
{
"username": "john@contoso.com",
"customData": "john_contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Generate a report embed token using an effective identity with multiple roles example
Sample Request
POST https://api.powerbi.com/v1.0/myorg/groups/f089354e-8366-4e18-aea3-4cb4a3a50b48/reports/5b218778-e7a5-4d73-8187-f10824047715/GenerateToken
{
"accessLevel": "View",
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales",
"marketing"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Definições
Nome | Description |
---|---|
Effective |
Define a identidade e as funções do usuário. Para obter mais informações, consulte Segurança em nível de linha com Power BI Embedded. |
Embed |
Um token de inserção do Power BI |
Generate |
Solicitação de geração de token do Power BI |
Identity |
Um blob para especificar uma identidade. Só há suporte para conjuntos de dados com uma conexão DirectQuery com SQL do Azure |
Token |
O nível de acesso necessário para a geração de token de inserção |
EffectiveIdentity
Define a identidade e as funções do usuário. Para obter mais informações, consulte Segurança em nível de linha com Power BI Embedded.
Nome | Tipo | Description |
---|---|---|
auditableContext |
string |
O contexto auditável EffectiveIdentity. Se esse parâmetro for fornecido e não estiver vazio, ele habilitará a auditoria da EffectiveIdentity e seu valor será definido como o nome de usuário no registro de auditoria. Caso contrário, o contexto EffectiveIdentity será omitido do registro de auditoria GenerateToken. |
customData |
string |
Dados personalizados usados para aplicar regras de segurança em nível de linha. Compatível apenas com a conexão dinâmica com modelos de Azure Analysis Services e modelos de nuvem. |
datasets |
string[] |
Uma matriz de conjuntos de dados para os quais essa identidade se aplica |
identityBlob |
Um blob que especifica uma identidade. Há suporte apenas para conjuntos de dados com uma conexão DirectQuery com SQL do Azure. |
|
reports |
string[] |
Uma matriz de relatórios para os quais essa identidade se aplica. Só há suporte para relatórios paginados. |
roles |
string[] |
Uma matriz de funções RLS (segurança em nível de linha) dentro de um token que aplica regras RLS. Uma identidade pode conter até 50 funções. Uma função pode conter qualquer caractere, exceto |
username |
string |
O nome de usuário efetivo em um token que aplica regras de segurança em nível de linha. Para um modelo local, o nome de usuário pode conter alfanumérico ou qualquer um dos seguintes caracteres |
EmbedToken
Um token de inserção do Power BI
Nome | Tipo | Description |
---|---|---|
expiration |
string |
A data e hora (UTC) da expiração do token |
token |
string |
O token de inserção |
tokenId |
string |
A ID do token exclusivo. Por meio de logs de auditoria, a ID do token pode ser usada para correlacionar operações que usam o token com a operação de geração. |
GenerateTokenRequest
Solicitação de geração de token do Power BI
Nome | Tipo | Description |
---|---|---|
accessLevel |
O nível de acesso necessário para a geração de token de inserção |
|
allowSaveAs |
boolean |
Se um relatório inserido pode ser salvo como um novo relatório. O valor padrão é |
datasetId |
string |
A ID do conjunto de dados usada para a criação do relatório. Aplica-se somente quando você gera um token de inserção para criação de relatório. |
identities |
Uma lista de identidades a serem usadas para regras de segurança em nível de linha |
|
lifetimeInMinutes |
integer |
O tempo de vida máximo do token em minutos, começando a partir do momento em que ele foi gerado. Pode ser usado para reduzir o tempo de expiração de um token, mas não para estendê-lo. O valor deve ser um inteiro positivo. Zero (0) é equivalente a nulo e será ignorado, resultando no tempo de expiração padrão. |
IdentityBlob
Um blob para especificar uma identidade. Só há suporte para conjuntos de dados com uma conexão DirectQuery com SQL do Azure
Nome | Tipo | Description |
---|---|---|
value |
string |
Um token de acesso OAuth 2.0 para SQL do Azure |
TokenAccessLevel
O nível de acesso necessário para a geração de token de inserção
Nome | Tipo | Description |
---|---|---|
Create |
string |
Indica que o token de inserção gerado concede permissão de criação. Aplica-se somente quando você gera um token de inserção para criação de relatório. |
Edit |
string |
Indica que o token de inserção gerado concede permissões de exibição e edição. Aplica-se somente quando você gera um token de inserção para inserção de relatório. |
View |
string |
Indica que o token de inserção gerado concede permissão somente exibição |