Embed Token - Generate Token
Vygeneruje token pro vložení pro více sestav, datových sad a cílových pracovních prostorů.
- Sestavy a datové sady nemusí souviset.
- Sestavu můžete při vkládání svázat s datovou sadou.
- Sestavu můžete vytvořit pouze v pracovních prostorech určených parametrem
targetWorkspaces
.
Důležité
Toto volání rozhraní API je relevantní jenom pro vložení pro zákazníky scénář. Další informace o používání tohoto rozhraní API najdete v tématu Důležité informace o generování tokenu pro vložení.
Dovolení
- Při použití instančního objektu pro ověřování se podívejte na Vložení obsahu Power BI s instančního objektu a důležité informace a omezení.
- U sestav Power BI se stránkovaným vizuálem zahrňte DO volání rozhraní API ID stránkované sestavy. Další informace najdete v příkladu.
- Toto volání rozhraní API může volat instanční profil. Další informace najdete v tématu: profily instančního objektu v Power BI Embedded.
Požadovaný obor
Pokud se požadavek nevztahuje, platí toto:
- Content.Create, povinné, pokud je cílový pracovní prostor zadaný v GenerateTokenRequestV2.
- Report.ReadWrite.All nebo Report.Read.All, vyžaduje se, pokud je sestava zadána v GenerateTokenRequestV2.
- Report.ReadWrite.All, vyžaduje se, pokud je příznak
allowEdit
zadán alespoň pro jednu sestavu v GenerateTokenRequestV2. - Dataset.ReadWrite.All nebo Dataset.Read.All
Omezení
- Sestavu můžete vytvořit pouze v pracovních prostorech určených parametrem
targetWorkspaces
. - Všechny sestavy a datové sady se musí nacházet v pracovním prostoru V2.
- Všechny cílové pracovní prostory musí být pracovních prostorů verze 2.
- Maximálně 50 sestav.
- Maximálně 50 datových sad.
- Maximálně 50 cílových pracovních prostorů.
- V případě sestav místního živého připojení služby Azure Analysis Services nebo Analysis Services nemusí generování tokenu pro vložení se zabezpečením na úrovni řádků (RLS) fungovat několik minut po opětovné vazby.
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
Text požadavku
Name | Typ | Description |
---|---|---|
datasets |
Seznam datových sad |
|
datasourceIdentities |
Seznam identit, které se mají použít při připojování ke zdrojům dat s povoleným jednotným přihlašováním (Single Sign-On). |
|
identities |
Seznam identit, které se mají použít pro pravidla zabezpečení na úrovni řádků |
|
lifetimeInMinutes |
integer |
Maximální životnost tokenu v minutách počínaje časem vygenerování tokenu. Dá se použít ke zkrácení doby vypršení platnosti tokenu, ale ne k jeho rozšíření. Hodnota musí být kladné celé číslo. Nula ( |
reports |
Seznam sestav |
|
targetWorkspaces |
Seznam pracovních prostorů, do které bude token pro vložení umožňovat ukládání |
Odpovědi
Name | Typ | Description |
---|---|---|
200 OK |
OK |
Příklady
Example of generating an embed token for a dataset and two reports example. Only one of the reports can be edited.
Ukázkový požadavek
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"allowEdit": true,
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
},
{
"id": "759908bb-ead8-4a43-9645-7ffbf921c68d"
}
]
}
Ukázková odpověď
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Example of generating an embed token for a paginated report which has a Power BI dataset as a datasource. The ID of the dataset must be specified in the request. The report and dataset can each have its own identity
Ukázkový požadavek
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"xmlaPermissions": "ReadOnly"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
},
{
"username": "john@contoso.com",
"reports": [
"b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
]
}
]
}
Ukázková odpověď
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
Example of generating an embed token for a paginated report with a data source identity
Ukázkový požadavek
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
}
],
"identityBlob": "eyJ0eX....AAA="
}
]
}
Ukázková odpověď
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
Example of generating an embed token for a paginated report with multiple data source identities and a single identity blob
Ukázkový požadavek
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
},
{
"datasourceType": "MySql",
"connectionDetails": {
"server": "New-MySql-Server",
"database": "New-MySql-Database"
}
}
],
"identityBlob": "eyJ0eX....AAA="
}
]
}
Ukázková odpověď
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
Example of generating an embed token for a paginated report with multiple data source identities and multiple identity blobs
Ukázkový požadavek
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
}
],
"identityBlob": "eyJ0eX....AAA="
},
{
"datasources": [
{
"datasourceType": "MySql",
"connectionDetails": {
"server": "New-MySql-Server",
"database": "New-MySql-Database"
}
}
],
"identityBlob": "eyJ0dW....AAA="
}
]
}
Ukázková odpověď
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
Example of generating an embed token for a Power BI report with a dataset which is connected with DirectQuery to another Power BI dataset. All related dataset IDs must be specified in the request with 'xmlaPermissions' set to 'ReadOnly'. IdentityBlobs for all SSO-enabled data sources must be provided in the 'datasourceIdentities' array
Ukázkový požadavek
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd",
"xmlaPermissions": "ReadOnly"
},
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"xmlaPermissions": "ReadOnly"
}
],
"reports": [
{
"id": "f904e89a-7ebe-4aa0-8647-e409063b4850"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "Best-Sql-Server",
"database": "Database3"
}
}
],
"identityBlob": "eyJ0eX....AAA="
}
]
}
Ukázková odpověď
{
"token": "H4sI....AAA=",
"tokenId": "ab4d49ae-c054-4c29-af52-93b5c80619ff",
"expiration": "2022-06-10T12:41:11Z"
}
Example of generating an embed token for a Power BI report with a paginated visual. The paginated report ID ('...4850') of the paginated visual must be included in the 'reports' section of the request.
Ukázkový požadavek
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
},
{
"id": "f904e89a-7ebe-4aa0-8647-e409063b4850"
}
]
}
Ukázková odpověď
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Example of generating an embed token for two datasets with RLS identities and a single report with read-only permissions. The embed token lets you view the report, which is dynamically bound to two different datasets.
Ukázkový požadavek
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
{
"id": "e75afc47-1150-45e0-aba7-4eb04e4876e5"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
},
{
"username": "iris@contoso.com",
"roles": [
"executive"
],
"datasets": [
"e75afc47-1150-45e0-aba7-4eb04e4876e5"
]
}
]
}
Ukázková odpověď
{
"token": "H4sI....AAA=",
"tokenId": "4b76f5ed-5a06-4150-8d1b-60f8e4c186f4",
"expiration": "2028-07-29T17:58:19Z"
}
Example of generating an embed token that expires no later than ten minutes from the API call
Ukázkový požadavek
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
],
"lifetimeInMinutes": 10
}
Ukázková odpověď
{
"token": "H4sI....AAA=",
"tokenId": "4b76f5ed-5a06-4150-8d1b-60f8e4c186f4",
"expiration": "2028-07-29T17:58:19Z"
}
Definice
Name | Description |
---|---|
Datasource |
Podrobnosti o připojení ke zdroji dat Power BI Příklady najdete v tématu Získat zdroje dat nebo Získat zdroje dat ve skupině. |
Datasource |
Platná identita pro připojení zdrojů dat DirectQuery s povoleným jednotným přihlašováním |
Datasource |
Objekt, který jednoznačně identifikuje jeden zdroj dat jeho podrobnostmi o připojení. |
Effective |
Definuje identitu a role uživatele. Další informace najdete v tématu zabezpečení na úrovni řádků pomocíPower BI Embedded . |
Embed |
Token pro vložení Power BI |
Generate |
Power BI Generate Token Request V2 |
Generate |
Objekt datové sady v GenerateTokenRequestV2 |
Generate |
|
Generate |
Objekt pracovního prostoru v GenerateTokenRequestV2 |
Identity |
Objekt blob pro zadání identity. Podporuje se jenom u datových sad s připojením DirectQuery k Azure SQL. |
Xmla |
Oprávnění XMLA |
DatasourceConnectionDetails
Podrobnosti o připojení ke zdroji dat Power BI Příklady najdete v tématu Získat zdroje dat nebo Získat zdroje dat ve skupině.
Name | Typ | Description |
---|---|---|
account |
string |
Účet připojení |
classInfo |
string |
Informace o třídě připojení |
database |
string |
Databáze připojení |
domain |
string |
Doména připojení |
emailAddress |
string |
E-mailová adresa připojení |
kind |
string |
Druh připojení |
loginServer |
string |
Přihlašovací server připojení |
path |
string |
Cesta připojení |
server |
string |
Server připojení |
url |
string |
Adresa URL připojení |
DatasourceIdentity
Platná identita pro připojení zdrojů dat DirectQuery s povoleným jednotným přihlašováním
Name | Typ | Description |
---|---|---|
datasources |
Pole zdrojů dat, na které se tato identita vztahuje. |
|
identityBlob |
string |
Objekt blob pro zadání identity. |
DatasourceSelector
Objekt, který jednoznačně identifikuje jeden zdroj dat jeho podrobnostmi o připojení.
Name | Typ | Description | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
connectionDetails |
Podrobnosti o připojení ke zdroji dat Podrobnosti o připojení můžete získat pomocí Získat zdroje dat pro stránkované sestavy a Získat zdroje dat pro sestavy Powerbi rozhraní API. |
||||||||||||||||||||||||||||||||||||||||||||||||||||
datasourceType |
string |
Typ zdroje dat.
|
EffectiveIdentity
Definuje identitu a role uživatele. Další informace najdete v tématu zabezpečení na úrovni řádků pomocíPower BI Embedded .
Name | Typ | Description |
---|---|---|
auditableContext |
string |
Auditovatelný kontext EffectiveIdentity. Pokud je tento parametr zadaný a není prázdný, povolí auditování EffectiveIdentity a jeho hodnota se nastaví na uživatelské jméno v záznamu auditu. V opačném případě bude kontext EffectiveIdentity vynechán ze záznamu auditu GenerateToken. |
customData |
string |
vlastních dat, která slouží k použití pravidel zabezpečení na úrovni řádků. Podporuje se pouze živé připojení k modelům azure Analysis Services a cloudovým modelům. |
datasets |
string[] |
Pole datových sad, pro které se tato identita vztahuje |
identityBlob |
Objekt blob, který určuje identity. Podporuje se jenom u datových sad s připojením DirectQuery k Azure SQL. |
|
reports |
string[] |
Pole sestav, pro které tato identita platí. Podporuje se jenom pro stránkované sestavy. |
roles |
string[] |
Pole rolí zabezpečení na úrovni řádků (RLS) v tokenu, který používá pravidla zabezpečení na úrovni řádků. Identita může obsahovat až 50 rolí. Role může obsahovat libovolný znak kromě |
username |
string |
Efektivní uživatelské jméno v tokenu, které používá pravidla zabezpečení na úrovni řádků. U místního modelu může uživatelské jméno obsahovat alfanumerické nebo libovolné z následujících znaků |
EmbedToken
Token pro vložení Power BI
Name | Typ | Description |
---|---|---|
expiration |
string (date-time) |
Datum a čas (UTC) vypršení platnosti tokenu |
token |
string |
Token pro vložení |
tokenId |
string (uuid) |
Jedinečné ID tokenu. Prostřednictvím protokolů auditu lze ID tokenu použít ke korelaci operací, které token používají s operací generování. |
GenerateTokenRequestV2
Power BI Generate Token Request V2
Name | Typ | Description |
---|---|---|
datasets |
Seznam datových sad |
|
datasourceIdentities |
Seznam identit, které se mají použít při připojování ke zdrojům dat s povoleným jednotným přihlašováním (Single Sign-On). |
|
identities |
Seznam identit, které se mají použít pro pravidla zabezpečení na úrovni řádků |
|
lifetimeInMinutes |
integer |
Maximální životnost tokenu v minutách počínaje časem vygenerování tokenu. Dá se použít ke zkrácení doby vypršení platnosti tokenu, ale ne k jeho rozšíření. Hodnota musí být kladné celé číslo. Nula ( |
reports |
Seznam sestav |
|
targetWorkspaces |
Seznam pracovních prostorů, do které bude token pro vložení umožňovat ukládání |
GenerateTokenRequestV2Dataset
Objekt datové sady v GenerateTokenRequestV2
Name | Typ | Description |
---|---|---|
id |
string |
ID datové sady |
xmlaPermissions |
Oprávnění XMLA |
GenerateTokenRequestV2Report
Objekt sestavy v GenerateTokenRequestV2
Name | Typ | Description |
---|---|---|
allowEdit |
boolean |
Určuje, jestli vygenerovaný token pro vložení podporuje úpravy sestavy. |
id |
string (uuid) |
ID sestavy |
GenerateTokenRequestV2TargetWorkspace
Objekt pracovního prostoru v GenerateTokenRequestV2
Name | Typ | Description |
---|---|---|
id |
string (uuid) |
ID pracovního prostoru |
IdentityBlob
Objekt blob pro zadání identity. Podporuje se jenom u datových sad s připojením DirectQuery k Azure SQL.
Name | Typ | Description |
---|---|---|
value |
string |
Přístupový token OAuth 2.0 pro Azure SQL |
XmlaPermissions
Oprávnění XMLA
Hodnota | Description |
---|---|
Off |
Označuje, že vygenerovaný token pro vložení neuděluje přístupová oprávnění ke koncovému bodu XMLA datové sady. |
ReadOnly |
Označuje, že vygenerovaný token pro vložení uděluje oprávnění ke čtení přístupu ke koncovému bodu XMLA datové sady. |