Embed Token - Reports GenerateTokenInGroup
Создает маркер внедрения для просмотра или редактирования указанного отчета из указанной рабочей области.
Совет
Для создания токенов внедрения рекомендуется использовать последнюю версию API Generate Token. Создание маркера поддерживает дополнительные функции, такие как создание маркера для нескольких элементов.
Важно!
Этот вызов API относится только к сценарию внедрения для клиентов . Дополнительные сведения об использовании этого API см. в разделе Рекомендации по созданию токена внедрения.
Разрешения
- При использовании субъекта-службы для проверки подлинности см. раздел Внедрение содержимого Power BI с помощью субъекта-службы и Рекомендации и ограничения.
- Этот вызов API может вызываться профилем субъекта-службы. Дополнительные сведения см. в статье Профили субъектов-служб в Power BI Embedded.
Требуемая область
Все перечисленные ниже действия, если не применяются требования:
- Report.ReadWrite.All или Report.Read.All
- Dataset.ReadWrite.All или Dataset.Read.All
- Content.Create, требуется, если
allowSaveAs
флаг указан в GenerateTokenRequest.
Ограничения
Для Azure Analysis Services или локальных отчетов о динамическом подключении служб Analysis Services создание маркера внедрения с безопасностью на уровне строк может не работать в течение нескольких минут после повторной привязки отчета.
POST https://api.powerbi.com/v1.0/myorg/groups/{groupId}/reports/{reportId}/GenerateToken
Параметры URI
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
group
|
path | True |
string uuid |
идентификатор рабочей области; |
report
|
path | True |
string uuid |
Идентификатор отчета |
Текст запроса
Имя | Тип | Описание |
---|---|---|
accessLevel |
Необходимый уровень доступа для создания токена внедрения |
|
allowSaveAs |
boolean |
Можно ли сохранить внедренный отчет в виде нового отчета. Значение по умолчанию — |
datasetId |
string |
Идентификатор набора данных, используемый для создания отчета. Применяется только при создании маркера внедрения для создания отчета. |
identities |
Список удостоверений, используемых для правил безопасности на уровне строк |
|
lifetimeInMinutes |
integer |
Максимальное время существования маркера в минутах, начиная с момента его создания. Можно использовать для сокращения срока действия маркера, но не для его продления. Значение должно быть положительным целым числом. Ноль (0) эквивалентен значению NULL и будет игнорироваться, что приводит к истечению срока действия по умолчанию. |
Ответы
Имя | Тип | Описание |
---|---|---|
200 OK |
ОК |
Примеры
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"
}
Определения
Имя | Описание |
---|---|
Effective |
Определяет удостоверение пользователя и роли. Дополнительные сведения см. в статье Безопасность на уровне строк с помощью Power BI Embedded. |
Embed |
Токен внедрения Power BI |
Generate |
Power BI Generate Token Request |
Identity |
Большой двоичный объект для указания удостоверения. Поддерживается только для наборов данных с подключением DirectQuery к Azure SQL |
Token |
Необходимый уровень доступа для создания токена внедрения |
EffectiveIdentity
Определяет удостоверение пользователя и роли. Дополнительные сведения см. в статье Безопасность на уровне строк с помощью Power BI Embedded.
Имя | Тип | Описание |
---|---|---|
auditableContext |
string |
Контекст, доступный для аудита EffectiveIdentity. Если этот параметр указан и не пуст, он включает аудит EffectiveIdentity, а его значение будет равно имени пользователя в записи аудита. В противном случае контекст EffectiveIdentity будет пропущен из записи аудита GenerateToken. |
customData |
string |
Пользовательские данные , используемые для применения правил безопасности на уровне строк. Поддерживается только для динамического подключения к Azure Analysis Services моделям и облачным моделям. |
datasets |
string[] |
Массив наборов данных, к которым применяется это удостоверение. |
identityBlob |
Большой двоичный объект, указывающий удостоверение. Поддерживается только для наборов данных с подключением DirectQuery к Azure SQL. |
|
reports |
string[] |
Массив отчетов, к которым применяется это удостоверение. Поддерживается только для отчетов с разбивкой на страницы. |
roles |
string[] |
Массив ролей безопасности на уровне строк (RLS) в маркере, который применяет правила RLS. Удостоверение может содержать до 50 ролей. Роль может содержать любой символ, кроме |
username |
string |
Действующее имя пользователя в токене, применяющем правила безопасности на уровне строк. Для локальной модели имя пользователя может содержать буквенно-цифровые или любой из следующих символов |
EmbedToken
Токен внедрения Power BI
Имя | Тип | Описание |
---|---|---|
expiration |
string |
Дата и время окончания срока действия маркера (UTC) |
token |
string |
Токен внедрения |
tokenId |
string |
Уникальный идентификатор маркера. С помощью журналов аудита идентификатор маркера можно использовать для сопоставления операций, использующих маркер, с операцией создания. |
GenerateTokenRequest
Power BI Generate Token Request
Имя | Тип | Описание |
---|---|---|
accessLevel |
Необходимый уровень доступа для создания токена внедрения |
|
allowSaveAs |
boolean |
Можно ли сохранить внедренный отчет в виде нового отчета. Значение по умолчанию — |
datasetId |
string |
Идентификатор набора данных, используемый для создания отчета. Применяется только при создании маркера внедрения для создания отчета. |
identities |
Список удостоверений, используемых для правил безопасности на уровне строк |
|
lifetimeInMinutes |
integer |
Максимальное время существования маркера в минутах, начиная с момента его создания. Можно использовать для сокращения срока действия маркера, но не для его продления. Значение должно быть положительным целым числом. Ноль (0) эквивалентен значению NULL и будет игнорироваться, что приводит к истечению срока действия по умолчанию. |
IdentityBlob
Большой двоичный объект для указания удостоверения. Поддерживается только для наборов данных с подключением DirectQuery к Azure SQL
Имя | Тип | Описание |
---|---|---|
value |
string |
Маркер доступа OAuth 2.0 для Azure SQL |
TokenAccessLevel
Необходимый уровень доступа для создания токена внедрения
Имя | Тип | Описание |
---|---|---|
Create |
string |
Указывает, что созданный маркер внедрения предоставляет разрешение на создание. Применяется только при создании маркера внедрения для создания отчета. |
Edit |
string |
Указывает, что созданный маркер внедрения предоставляет разрешения на просмотр и изменение. Применяется только при создании маркера внедрения для внедрения отчета. |
View |
string |
Указывает, что созданный маркер внедрения предоставляет разрешение только для просмотра. |