Embed Token - Generate Token
Menghasilkan token semat untuk beberapa laporan, himpunan data, dan ruang kerja target.
- Laporan dan himpunan data tidak harus terkait.
- Anda dapat mengikat laporan ke himpunan data selama penyematan.
- Anda hanya dapat membuat laporan di ruang kerja yang ditentukan oleh
targetWorkspaces
parameter .
Penting
Panggilan API ini hanya relevan dengan sematan untuk skenario pelanggan Anda . Untuk mempelajari selengkapnya tentang menggunakan API ini, lihat Pertimbangan saat membuat token semat.
Izin
- Saat menggunakan perwakilan layanan untuk autentikasi, lihat Menyematkan konten Power BI dengan perwakilan layanan dan Pertimbangan dan batasan.
- Untuk laporan Power BI dengan visual yang dipaginasi, sertakan ID laporan yang dipaginasi dalam panggilan API. Untuk informasi selengkapnya, lihat contoh.
- Panggilan API ini dapat dipanggil oleh profil perwakilan layanan. Untuk informasi selengkapnya lihat: Profil perwakilan layanan di Power BI Embedded.
Cakupan yang Diperlukan
Semua hal berikut, kecuali persyaratan tidak berlaku:
- Content.Create, diperlukan jika ruang kerja target ditentukan dalam GenerateTokenRequestV2.
- Report.ReadWrite.All atau Report.Read.All, diperlukan jika laporan ditentukan dalam GenerateTokenRequestV2.
- Report.ReadWrite.All, diperlukan jika
allowEdit
bendera ditentukan untuk setidaknya satu laporan di GenerateTokenRequestV2. - Dataset.ReadWrite.All atau Dataset.Read.All
Batasan
- Anda hanya dapat membuat laporan di ruang kerja yang ditentukan oleh
targetWorkspaces
parameter . - Semua laporan dan himpunan data harus berada di ruang kerja V2 .
- Semua ruang kerja target harus ruang kerja V2 .
- Maksimum 50 laporan.
- Maksimum 50 himpunan data.
- Maksimum 50 ruang kerja target.
- Untuk Azure Analysis Services atau laporan koneksi langsung lokal Analysis Services, menghasilkan token semat dengan keamanan tingkat baris (RLS) mungkin tidak berfungsi selama beberapa menit setelah pengikatan ulang.
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
Isi Permintaan
Nama | Jenis | Deskripsi |
---|---|---|
datasets |
Daftar himpunan data |
|
datasourceIdentities |
Daftar identitas yang akan digunakan saat menyambungkan ke sumber data dengan single Sign-On (SSO) diaktifkan. |
|
identities |
Daftar identitas yang akan digunakan untuk aturan keamanan tingkat baris |
|
lifetimeInMinutes |
integer |
Masa pakai maksimum token dalam hitungan menit, mulai dari waktu pembuatannya. Dapat digunakan untuk mempersingkat waktu kedaluwarsa token, tetapi tidak untuk memperpanjangnya. Nilai harus berupa bilangan bulat positif. Nol ( |
reports |
Daftar laporan |
|
targetWorkspaces |
Daftar ruang kerja yang akan diizinkan untuk disimpan oleh token semat |
Respons
Nama | Jenis | Deskripsi |
---|---|---|
200 OK |
OK |
Contoh
Example of generating an embed token for a dataset and two reports example. Only one of the reports can be edited.
Permintaan sampel
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"
}
]
}
Respon sampel
{
"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
Permintaan sampel
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"
]
}
]
}
Respon sampel
{
"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
Permintaan sampel
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="
}
]
}
Respon sampel
{
"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
Permintaan sampel
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="
}
]
}
Respon sampel
{
"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
Permintaan sampel
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="
}
]
}
Respon sampel
{
"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
Permintaan sampel
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="
}
]
}
Respon sampel
{
"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.
Permintaan sampel
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"
}
]
}
Respon sampel
{
"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.
Permintaan sampel
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"
]
}
]
}
Respon sampel
{
"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
Permintaan sampel
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
}
Respon sampel
{
"token": "H4sI....AAA=",
"tokenId": "4b76f5ed-5a06-4150-8d1b-60f8e4c186f4",
"expiration": "2028-07-29T17:58:19Z"
}
Definisi
Nama | Deskripsi |
---|---|
Datasource |
Detail koneksi sumber data Power BI. Lihat contoh di Dapatkan Sumber Data atau Dapatkan Sumber Data Dalam Grup. |
Datasource |
Identitas efektif untuk menghubungkan sumber data DirectQuery dengan akses menyeluruh (SSO) diaktifkan. |
Datasource |
Objek yang secara unik mengidentifikasi satu sumber data dengan detail koneksinya. |
Effective |
Menentukan identitas dan peran pengguna. Untuk informasi selengkapnya, lihat Keamanan tingkat baris dengan Power BI Embedded. |
Embed |
Token semat Power BI |
Generate |
Power BI Menghasilkan Permintaan Token V2 |
Generate |
Objek himpunan data di GenerateTokenRequestV2 |
Generate |
Objek laporan di GenerateTokenRequestV2 |
Generate |
Objek ruang kerja di GenerateTokenRequestV2 |
Identity |
Blob untuk menentukan identitas. Hanya didukung untuk himpunan data dengan koneksi DirectQuery ke Azure SQL |
Xmla |
Izin XMLA |
DatasourceConnectionDetails
Detail koneksi sumber data Power BI. Lihat contoh di Dapatkan Sumber Data atau Dapatkan Sumber Data Dalam Grup.
Nama | Jenis | Deskripsi |
---|---|---|
account |
string |
Akun koneksi |
classInfo |
string |
Informasi kelas koneksi |
database |
string |
Database koneksi |
domain |
string |
Domain koneksi |
emailAddress |
string |
Alamat email koneksi |
kind |
string |
Jenis koneksi |
loginServer |
string |
Server masuk koneksi |
path |
string |
Jalur koneksi |
server |
string |
Server koneksi |
url |
string |
URL koneksi |
DatasourceIdentity
Identitas efektif untuk menghubungkan sumber data DirectQuery dengan akses menyeluruh (SSO) diaktifkan.
Nama | Jenis | Deskripsi |
---|---|---|
datasources |
Array sumber data tempat identitas ini berlaku. |
|
identityBlob |
string |
Blob untuk menentukan identitas. |
DatasourceSelector
Objek yang secara unik mengidentifikasi satu sumber data dengan detail koneksinya.
Nama | Jenis | Deskripsi | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
connectionDetails |
Detail koneksi sumber data. Anda dapat memperoleh detail koneksi menggunakan Get Datasources untuk laporan paginasi dan Dapatkan Datasources untuk API laporan powerbi . |
||||||||||||||||||||||||||||||||||||||||||||||||||||
datasourceType |
string |
Jenis sumber data.
|
EffectiveIdentity
Menentukan identitas dan peran pengguna. Untuk informasi selengkapnya, lihat Keamanan tingkat baris dengan Power BI Embedded.
Nama | Jenis | Deskripsi |
---|---|---|
auditableContext |
string |
Konteks yang dapat diaudit EffectiveIdentity. Jika parameter ini disediakan dan tidak kosong, parameter ini akan mengaktifkan audit EffectiveIdentity dan nilainya akan diatur ke nama pengguna dalam catatan audit. Jika tidak, konteks EffectiveIdentity akan dihilangkan dari catatan audit GenerateToken. |
customData |
string |
Data kustom yang digunakan untuk menerapkan aturan keamanan tingkat baris. Didukung untuk koneksi langsung ke model Azure Analysis Services dan model cloud saja. |
datasets |
string[] |
Array himpunan data tempat identitas ini berlaku |
identityBlob |
Blob yang menentukan identitas. Hanya didukung untuk himpunan data dengan koneksi DirectQuery ke Azure SQL. |
|
reports |
string[] |
Array laporan tempat identitas ini berlaku. Hanya didukung untuk laporan paginasi. |
roles |
string[] |
Array peran keamanan tingkat baris (RLS) dalam token yang menerapkan aturan RLS. Identitas dapat berisi hingga 50 peran. Peran dapat berisi karakter apa pun kecuali |
username |
string |
Nama pengguna yang efektif dalam token yang menerapkan aturan keamanan tingkat baris. Untuk model lokal, nama pengguna dapat berisi alfanumerik atau salah satu karakter |
EmbedToken
Token semat Power BI
Nama | Jenis | Deskripsi |
---|---|---|
expiration |
string |
Tanggal dan waktu (UTC) kedaluwarsa token |
token |
string |
Token yang disematkan |
tokenId |
string |
ID token unik. Melalui log audit, ID token dapat digunakan untuk menghubungkan operasi yang menggunakan token dengan operasi hasilkan. |
GenerateTokenRequestV2
Power BI Menghasilkan Permintaan Token V2
Nama | Jenis | Deskripsi |
---|---|---|
datasets |
Daftar himpunan data |
|
datasourceIdentities |
Daftar identitas yang akan digunakan saat menyambungkan ke sumber data dengan Single Sign-On (SSO) diaktifkan. |
|
identities |
Daftar identitas yang digunakan untuk aturan keamanan tingkat baris |
|
lifetimeInMinutes |
integer |
Masa pakai maksimum token dalam hitungan menit, mulai dari waktu pembuatannya. Dapat digunakan untuk mempersingkat waktu kedaluwarsa token, tetapi tidak untuk memperpanjangnya. Nilai harus berupa bilangan bulat positif. Nol ( |
reports |
Daftar laporan |
|
targetWorkspaces |
Daftar ruang kerja yang akan diizinkan untuk disimpan oleh token semat |
GenerateTokenRequestV2Dataset
Objek himpunan data di GenerateTokenRequestV2
Nama | Jenis | Deskripsi |
---|---|---|
id |
string |
ID himpunan data |
xmlaPermissions |
Izin XMLA |
GenerateTokenRequestV2Report
Objek laporan di GenerateTokenRequestV2
Nama | Jenis | Deskripsi |
---|---|---|
allowEdit |
boolean |
Apakah token semat yang dihasilkan mendukung pengeditan laporan |
id |
string |
ID laporan |
GenerateTokenRequestV2TargetWorkspace
Objek ruang kerja di GenerateTokenRequestV2
Nama | Jenis | Deskripsi |
---|---|---|
id |
string |
ID ruang kerja |
IdentityBlob
Blob untuk menentukan identitas. Hanya didukung untuk himpunan data dengan koneksi DirectQuery ke Azure SQL
Nama | Jenis | Deskripsi |
---|---|---|
value |
string |
Token akses OAuth 2.0 untuk Azure SQL |
XmlaPermissions
Izin XMLA
Nilai | Deskripsi |
---|---|
Off |
Menunjukkan bahwa token semat yang dihasilkan tidak memberikan izin akses ke titik akhir XMLA himpunan data. |
ReadOnly |
Menunjukkan bahwa token semat yang dihasilkan memberikan izin akses Baca ke titik akhir XMLA himpunan data. |