Compartir a través de


Embed Token - Reports GenerateTokenInGroup

Genera un token de inserción para ver o editar el informe especificado desde el área de trabajo especificada.

Sugerencia

Para crear tokens de inserción, se recomienda usar la API más reciente, Generar token. Generar token admite funciones adicionales, como crear un token para varios elementos.

Importante

Esta llamada API solo es relevante para el escenario de inserción para los clientes . Para más información sobre el uso de esta API, consulte Consideraciones al generar un token de inserción.

Permisos

Ámbito requerido

Todo lo siguiente, a menos que no se aplique un requisito:

  • Report.ReadWrite.All o Report.Read.All
  • Dataset.ReadWrite.All o Dataset.Read.All
  • Content.Create, necesario si la allowSaveAs marca se especifica en GenerateTokenRequest

Limitaciones

Para Azure Analysis Services o los informes de conexión dinámica locales de Analysis Services, puede que la generación de un token de inserción con seguridad de nivel de fila no funcione durante varios minutos después de un informe reenlace.

POST https://api.powerbi.com/v1.0/myorg/groups/{groupId}/reports/{reportId}/GenerateToken

Parámetros de identificador URI

Nombre En Requerido Tipo Description
groupId
path True

string

uuid

Identificador del área de trabajo

reportId
path True

string

uuid

El identificador del informe

Cuerpo de la solicitud

Nombre Tipo Description
accessLevel

TokenAccessLevel

Nivel de acceso necesario para la generación de tokens de inserción

allowSaveAs

boolean

Si un informe incrustado se puede guardar como un nuevo informe. El valor predeterminado es false. Solo se aplica cuando se genera un token de inserción para la inserción de informes.

datasetId

string

Identificador del conjunto de datos usado para la creación de informes. Solo se aplica cuando se genera un token de inserción para la creación de informes.

identities

EffectiveIdentity[]

Lista de identidades que se van a usar para las reglas de seguridad de nivel de fila

lifetimeInMinutes

integer

Duración máxima del token en minutos, a partir del momento en que se generó. Se puede usar para acortar el tiempo de expiración de un token, pero no para ampliarlo. El valor debe ser un entero positivo. Cero (0) es equivalente a NULL y se omitirá, lo que dará lugar a la hora de expiración predeterminada.

Respuestas

Nombre Tipo Description
200 OK

EmbedToken

Aceptar

Ejemplos

Generate a paginated report embed token using an effective identity example
Generate a report embed token for editing example. The embed token uses an effective identity.
Generate a report embed token for viewing a report and saving to a new report example
Generate a report embed token using an effective identity example
Generate a report embed token using an effective identity with an identity blob example
Generate a report embed token using an effective identity with custom data for Azure Analysis Services example
Generate a report embed token using an effective identity with multiple roles example

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

Definiciones

Nombre Description
EffectiveIdentity

Define la identidad y los roles de usuario. Para obtener más información, consulte Seguridad de nivel de fila con Power BI Embedded.

EmbedToken

Un token de inserción de Power BI

GenerateTokenRequest

Solicitud de generación de tokens de Power BI

IdentityBlob

Un blob para especificar una identidad. Solo se admite para conjuntos de datos con una conexión directQuery a Azure SQL

TokenAccessLevel

Nivel de acceso necesario para la generación de tokens de inserción

EffectiveIdentity

Define la identidad y los roles de usuario. Para obtener más información, consulte Seguridad de nivel de fila con Power BI Embedded.

Nombre Tipo Description
auditableContext

string

Contexto auditable EffectiveIdentity. Si se proporciona este parámetro y no está vacío, habilitará la auditoría de EffectiveIdentity y su valor se establecerá en el nombre de usuario en el registro de auditoría. De lo contrario, se omitirá el contexto EffectiveIdentity del registro de auditoría GenerateToken.

customData

string

Datos personalizados que se usan para aplicar reglas de seguridad de nivel de fila. Solo se admite para la conexión dinámica a modelos de Azure Analysis Services y modelos en la nube.

datasets

string[]

Matriz de conjuntos de datos para los que se aplica esta identidad

identityBlob

IdentityBlob

Un blob que especifica una identidad. Solo se admite para conjuntos de datos con una conexión directQuery a Azure SQL.

reports

string[]

Matriz de informes para los que se aplica esta identidad. Solo se admite para informes paginados.

roles

string[]

Matriz de roles de seguridad de nivel de fila (RLS) dentro de un token que aplica reglas de RLS. Una identidad puede contener hasta 50 roles. Un rol puede contener cualquier carácter excepto ,, y su longitud no debe superar los 50 caracteres.

username

string

Nombre de usuario efectivo dentro de un token que aplica reglas de seguridad de nivel de fila. Para un modelo local, el nombre de usuario puede contener caracteres alfanuméricos o cualquiera de los caracteres .siguientes, , _-, !, #^, , ~, , . @\\ En el caso de los modelos en la nube, el nombre de usuario puede contener cualquier carácter ASCII. Para cualquiera de los modelos, la longitud del nombre de usuario no debe superar los 256 caracteres y el nombre de usuario no debe contener espacios.

EmbedToken

Un token de inserción de Power BI

Nombre Tipo Description
expiration

string

Fecha y hora (UTC) de expiración del token

token

string

Token de inserción

tokenId

string

Identificador de token único. A través de los registros de auditoría, el identificador del token se puede usar para correlacionar las operaciones que usan el token con la operación de generación.

GenerateTokenRequest

Solicitud de generación de tokens de Power BI

Nombre Tipo Description
accessLevel

TokenAccessLevel

Nivel de acceso necesario para la generación de tokens de inserción

allowSaveAs

boolean

Si un informe incrustado se puede guardar como un nuevo informe. El valor predeterminado es false. Solo se aplica cuando se genera un token de inserción para la inserción de informes.

datasetId

string

Identificador del conjunto de datos usado para la creación de informes. Solo se aplica cuando se genera un token de inserción para la creación de informes.

identities

EffectiveIdentity[]

Lista de identidades que se van a usar para las reglas de seguridad de nivel de fila

lifetimeInMinutes

integer

Duración máxima del token en minutos, a partir del momento en que se generó. Se puede usar para acortar el tiempo de expiración de un token, pero no para ampliarlo. El valor debe ser un entero positivo. Cero (0) es equivalente a NULL y se omitirá, lo que dará lugar a la hora de expiración predeterminada.

IdentityBlob

Un blob para especificar una identidad. Solo se admite para conjuntos de datos con una conexión directQuery a Azure SQL

Nombre Tipo Description
value

string

Un token de acceso de OAuth 2.0 para Azure SQL

TokenAccessLevel

Nivel de acceso necesario para la generación de tokens de inserción

Nombre Tipo Description
Create

string

Indica que el token de inserción generado concede permiso de creación. Solo se aplica cuando se genera un token de inserción para la creación de informes.

Edit

string

Indica que el token de inserción generado concede permisos de vista y edición. Solo se aplica cuando se genera un token de inserción para la inserción de informes.

View

string

Indica que el token de inserción generado concede permiso de solo vista.