Udostępnij za pośrednictwem


Embed Token - Reports GenerateTokenInGroup

Generuje token osadzania, aby wyświetlić lub edytować określony raport z określonego obszaru roboczego.

Porada

Aby utworzyć tokeny osadzania, zaleca się użycie najnowszego interfejsu API Generowanie tokenu. Generowanie tokenu obsługuje dodatkowe funkcje, takie jak tworzenie tokenu dla wielu elementów.

Ważne

To wywołanie interfejsu API ma zastosowanie tylko do scenariusza osadzania dla klientów . Aby dowiedzieć się więcej na temat korzystania z tego interfejsu API, zobacz Zagadnienia dotyczące generowania tokenu osadzania.

Uprawnienia

Wymagany zakres

Wszystkie następujące elementy, chyba że wymaganie nie ma zastosowania:

  • Report.ReadWrite.All lub Report.Read.All
  • Dataset.ReadWrite.All lub Dataset.Read.All
  • Content.Create, wymagane, jeśli flaga jest określona allowSaveAs w generateTokenRequest

Ograniczenia

W przypadku Azure Analysis Services lub lokalnych raportów połączeń na żywo usługi Analysis Services generowanie tokenu osadzania z zabezpieczeniami na poziomie wiersza może nie działać przez kilka minut po ponownym połączeniu raportu.

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

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
groupId
path True

string

uuid

Identyfikator obszaru roboczego

reportId
path True

string

uuid

Identyfikator raportu

Treść żądania

Nazwa Typ Opis
accessLevel

TokenAccessLevel

Wymagany poziom dostępu do generowania tokenu osadzania

allowSaveAs

boolean

Czy osadzony raport można zapisać jako nowy raport. Wartość domyślna to false. Ma zastosowanie tylko w przypadku generowania tokenu osadzania raportu.

datasetId

string

Identyfikator zestawu danych używany do tworzenia raportu. Ma zastosowanie tylko w przypadku generowania tokenu osadzania na potrzeby tworzenia raportu.

identities

EffectiveIdentity[]

Lista tożsamości do użycia dla reguł zabezpieczeń na poziomie wiersza

lifetimeInMinutes

integer

Maksymalny okres istnienia tokenu w minutach, począwszy od czasu wygenerowania. Można użyć do skrócenia czasu wygaśnięcia tokenu, ale nie do jego rozszerzenia. Wartość musi być dodatnią liczbą całkowitą. Zero (0) jest równoważne wartości null i zostanie zignorowane, co spowoduje domyślny czas wygaśnięcia.

Odpowiedzi

Nazwa Typ Opis
200 OK

EmbedToken

OK

Przykłady

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

Definicje

Nazwa Opis
EffectiveIdentity

Definiuje tożsamość użytkownika i role. Aby uzyskać więcej informacji, zobacz Zabezpieczenia na poziomie wiersza z Power BI Embedded.

EmbedToken

Token osadzania usługi Power BI

GenerateTokenRequest

Żądanie generowania tokenu w usłudze Power BI

IdentityBlob

Obiekt blob określający tożsamość. Obsługiwane tylko w przypadku zestawów danych z połączeniem DirectQuery z Azure SQL

TokenAccessLevel

Wymagany poziom dostępu do generowania tokenu osadzania

EffectiveIdentity

Definiuje tożsamość użytkownika i role. Aby uzyskać więcej informacji, zobacz Zabezpieczenia na poziomie wiersza z Power BI Embedded.

Nazwa Typ Opis
auditableContext

string

Kontekst z możliwością inspekcji EffectiveIdentity. Jeśli ten parametr jest podany i nie jest pusty, włączy inspekcję wartości EffectiveIdentity, a jej wartość zostanie ustawiona na nazwę użytkownika w rekordzie inspekcji. W przeciwnym razie kontekst EffectiveIdentity zostanie pominięty z rekordu inspekcji GenerateToken.

customData

string

Niestandardowe dane używane do stosowania reguł zabezpieczeń na poziomie wiersza. Obsługiwane w przypadku połączeń na żywo tylko z modelami Azure Analysis Services i modelami w chmurze.

datasets

string[]

Tablica zestawów danych, dla których ta tożsamość ma zastosowanie

identityBlob

IdentityBlob

Obiekt blob określający tożsamość. Obsługiwane tylko w przypadku zestawów danych z połączeniem DirectQuery z Azure SQL.

reports

string[]

Tablica raportów, dla których ta tożsamość ma zastosowanie. Obsługiwane tylko w przypadku raportów podzielonych na strony.

roles

string[]

Tablica ról zabezpieczeń na poziomie wiersza (RLS) w tokenie, który stosuje reguły zabezpieczeń na poziomie wiersza. Tożsamość może zawierać maksymalnie 50 ról. Rola może zawierać dowolny znak z wyjątkiem ,znaku , a jego długość nie może przekraczać 50 znaków.

username

string

Obowiązująca nazwa użytkownika w tokenie, który stosuje reguły zabezpieczeń na poziomie wiersza. W przypadku modelu lokalnego nazwa użytkownika może zawierać alfanumeryczne lub dowolne z następujących znaków., , #-~_@!^\\. W przypadku modeli w chmurze nazwa użytkownika może zawierać dowolny znak ASCII. W przypadku obu modeli długość nazwy użytkownika nie może przekraczać 256 znaków, a nazwa użytkownika nie powinna zawierać spacji.

EmbedToken

Token osadzania usługi Power BI

Nazwa Typ Opis
expiration

string

Data i godzina wygaśnięcia tokenu (UTC)

token

string

Token osadzania

tokenId

string

Unikatowy identyfikator tokenu. Za pomocą dzienników inspekcji identyfikator tokenu może służyć do korelowania operacji, które używają tokenu z operacją generowania.

GenerateTokenRequest

Żądanie generowania tokenu w usłudze Power BI

Nazwa Typ Opis
accessLevel

TokenAccessLevel

Wymagany poziom dostępu do generowania tokenu osadzania

allowSaveAs

boolean

Czy osadzony raport można zapisać jako nowy raport. Wartość domyślna to false. Ma zastosowanie tylko w przypadku generowania tokenu osadzania raportu.

datasetId

string

Identyfikator zestawu danych używany do tworzenia raportu. Ma zastosowanie tylko w przypadku generowania tokenu osadzania na potrzeby tworzenia raportu.

identities

EffectiveIdentity[]

Lista tożsamości do użycia dla reguł zabezpieczeń na poziomie wiersza

lifetimeInMinutes

integer

Maksymalny okres istnienia tokenu w minutach, począwszy od czasu wygenerowania. Można użyć do skrócenia czasu wygaśnięcia tokenu, ale nie do jego rozszerzenia. Wartość musi być dodatnią liczbą całkowitą. Zero (0) jest równoważne wartości null i zostanie zignorowane, co spowoduje domyślny czas wygaśnięcia.

IdentityBlob

Obiekt blob określający tożsamość. Obsługiwane tylko w przypadku zestawów danych z połączeniem DirectQuery z Azure SQL

Nazwa Typ Opis
value

string

Token dostępu OAuth 2.0 dla Azure SQL

TokenAccessLevel

Wymagany poziom dostępu do generowania tokenu osadzania

Nazwa Typ Opis
Create

string

Wskazuje, że wygenerowane token osadzania przyznaje uprawnienie do tworzenia. Ma zastosowanie tylko w przypadku generowania tokenu osadzania na potrzeby tworzenia raportu.

Edit

string

Wskazuje, że wygenerowany token osadzania przyznaje uprawnienia do wyświetlania i edytowania. Ma zastosowanie tylko w przypadku generowania tokenu osadzania raportu.

View

string

Wskazuje, że wygenerowane token osadzania przyznaje uprawnienie tylko do wyświetlania