Embed Token - Reports GenerateTokenInGroup

Vygeneruje token pro vložení pro zobrazení nebo úpravu zadané sestavy z zadaného pracovního prostoru.

Tip

Pokud chcete vytvořit tokeny pro vložení, doporučujeme použít nejnovější rozhraní API vygenerovat token. Generování tokenu podporuje další funkce, například vytvoření tokenu pro více položek.

Důležité

Toto volání rozhraní API je relevantní pouze pro scénář vložení pro vaše zákazníky . Další informace o používání tohoto rozhraní API najdete v tématu Důležité informace o generování tokenu pro vložení.

Oprávnění

Požadovaný obor

Pokud se na to nevztahuje požadavek, platí všechny následující:

  • Report.ReadWrite.All nebo Report.Read.All
  • Dataset.ReadWrite.All nebo Dataset.Read.All
  • Content.Create, povinné, pokud allowSaveAs je příznak zadaný v GenerateTokenRequest.

Omezení

V případě sestav živého připojení Azure Analysis Services nebo služby Analysis Services nemusí generování tokenu pro vložení se zabezpečením na úrovni řádků několik minut po vytvoření sestavy rebind fungovat.

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

Parametry identifikátoru URI

Name V Vyžadováno Typ Description
groupId
path True

string

uuid

ID pracovního prostoru

reportId
path True

string

uuid

ID sestavy

Text požadavku

Name Typ Description
accessLevel

TokenAccessLevel

Požadovaná úroveň přístupu pro generování tokenů pro vložení

allowSaveAs

boolean

Určuje, jestli lze vloženou sestavu uložit jako novou sestavu. Výchozí hodnota je false. Platí pouze v případě, že vygenerujete token pro vložení sestavy.

datasetId

string

ID datové sady použité k vytvoření sestavy Platí pouze v případě, že vygenerujete token pro vložení pro vytvoření sestavy.

identities

EffectiveIdentity[]

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 jeho vygenerování. Dá se použít ke zkrácení doby vypršení platnosti tokenu, ale ne k jejímu prodloužení. Hodnota musí být kladné celé číslo. Nula (0) je ekvivalentní hodnotě null a bude ignorována, což vede k výchozí době vypršení platnosti.

Odpovědi

Name Typ Description
200 OK

EmbedToken

OK

Příklady

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

Definice

Name Description
EffectiveIdentity

Definuje identitu a role uživatele. Další informace najdete v tématu Zabezpečení na úrovni řádků s Power BI Embedded.

EmbedToken

Token pro vložení Power BI

GenerateTokenRequest

Žádost o vygenerování tokenu Power BI

IdentityBlob

Objekt blob pro zadání identity. Podporováno pouze pro datové sady s připojením DirectQuery k Azure SQL

TokenAccessLevel

Požadovaná úroveň přístupu pro generování tokenů pro vložení

EffectiveIdentity

Definuje identitu a role uživatele. Další informace najdete v tématu Zabezpečení na úrovni řádků s Power BI Embedded.

Name Typ Description
auditableContext

string

Auditovatelný kontext EffectiveIdentity. Pokud je tento parametr zadaný a není prázdný, povolí auditování hodnoty EffectiveIdentity a jeho hodnota se nastaví na uživatelské jméno v záznamu auditu. V opačném případě se kontext EffectiveIdentity ze záznamu auditu GenerateToken vynechá.

customData

string

Vlastní data , která se používají k použití pravidel zabezpečení na úrovni řádků. Podporováno pouze pro ž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

IdentityBlob

Objekt blob, který určuje identitu. Podporováno pouze u datových sad s připojením DirectQuery k Azure SQL.

reports

string[]

Pole sestav, pro které se tato identita vztahuje. Podporováno pouze pro stránkované sestavy.

roles

string[]

Pole rolí zabezpečení na úrovni řádků (RLS) v rámci tokenu, který používá pravidla zabezpečení na úrovni řádků. Identita může obsahovat až 50 rolí. Role může obsahovat libovolný znak s výjimkou ,a její délka nesmí překročit 50 znaků.

username

string

Platné uživatelské jméno v tokenu, který používá pravidla zabezpečení na úrovni řádků. V případě místního modelu může uživatelské jméno obsahovat alfanumerické znaky nebo některý z následujících znaků ., -, _, , !#, ^~, \\, . @ U cloudových modelů může uživatelské jméno obsahovat libovolný znak ASCII. U obou modelů nesmí délka uživatelského jména překročit 256 znaků a uživatelské jméno by nemělo obsahovat mezery.

EmbedToken

Token pro vložení Power BI

Name Typ Description
expiration

string

Datum a čas (UTC) vypršení platnosti tokenu

token

string

Token pro vložení

tokenId

string

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í.

GenerateTokenRequest

Žádost o vygenerování tokenu Power BI

Name Typ Description
accessLevel

TokenAccessLevel

Požadovaná úroveň přístupu pro generování tokenů pro vložení

allowSaveAs

boolean

Určuje, jestli lze vloženou sestavu uložit jako novou sestavu. Výchozí hodnota je false. Platí pouze v případě, že vygenerujete token pro vložení sestavy.

datasetId

string

ID datové sady použité k vytvoření sestavy Platí pouze v případě, že vygenerujete token pro vložení pro vytvoření sestavy.

identities

EffectiveIdentity[]

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 jeho vygenerování. Dá se použít ke zkrácení doby vypršení platnosti tokenu, ale ne k jejímu prodloužení. Hodnota musí být kladné celé číslo. Nula (0) je ekvivalentní hodnotě null a bude ignorována, což vede k výchozí době vypršení platnosti.

IdentityBlob

Objekt blob pro zadání identity. Podporováno pouze pro datové sady s připojením DirectQuery k Azure SQL

Name Typ Description
value

string

Přístupový token OAuth 2.0 pro Azure SQL

TokenAccessLevel

Požadovaná úroveň přístupu pro generování tokenů pro vložení

Name Typ Description
Create

string

Označuje, že vygenerovaný token pro vložení uděluje oprávnění k vytvoření. Platí pouze v případě, že vygenerujete token pro vložení pro vytvoření sestavy.

Edit

string

Označuje, že vygenerovaný token pro vložení uděluje oprávnění k zobrazení a úpravám. Platí pouze v případě, že vygenerujete token pro vložení sestavy.

View

string

Označuje, že vygenerovaný token pro vložení uděluje oprávnění jen pro zobrazení.