Embed Token - Reports GenerateTokenInGroup
指定したワークスペースから指定したレポートを表示または編集するための埋め込みトークンを生成します。
ヒント
埋め込みトークンを作成するには、最新の API である トークンの生成を使用することをお勧めします。 トークンの生成では、複数の項目のトークンの作成など、追加の関数がサポートされています。
重要
この API 呼び出しは、 顧客向けの埋め込み シナリオにのみ関連します。 この API の使用の詳細については、「 埋め込みトークンを生成するときの考慮事項」を参照してください。
アクセス許可
- 認証にサービス プリンシパルを使用する場合は、「サービス プリンシパルを使用して Power BI コンテンツを埋め込む」と「考慮事項と制限事項」を参照してください。
- この API 呼び出しは、サービス プリンシパル プロファイルによって呼び出すことができます。 詳細については、「Power BI Embeddedのサービス プリンシパル プロファイル」を参照してください。
必要なスコープ
要件が適用されない場合を除き、次のすべて。
- Report.ReadWrite.All または Report.Read.All
- Dataset.ReadWrite.All または Dataset.Read.All
- Content.Create。GenerateTokenRequest でフラグが指定されている場合
allowSaveAs
は必須
制限事項
Azure Analysis Servicesまたは Analysis Services オンプレミスのライブ接続レポートの場合、レポートの再バインド後、行レベルのセキュリティで埋め込みトークンを生成できない場合があります。
POST https://api.powerbi.com/v1.0/myorg/groups/{groupId}/reports/{reportId}/GenerateToken
URI パラメーター
名前 | / | 必須 | 型 | 説明 |
---|---|---|---|---|
group
|
path | True |
string uuid |
ワークスペース ID |
report
|
path | True |
string uuid |
レポート ID |
要求本文
名前 | 型 | 説明 |
---|---|---|
accessLevel |
埋め込みトークン生成に必要なアクセス レベル |
|
allowSaveAs |
boolean |
埋め込みレポートを新しいレポートとして保存できるかどうか。 既定値は |
datasetId |
string |
レポートの作成に使用されるデータセット ID。 レポート作成用の埋め込みトークンを生成する場合にのみ適用されます。 |
identities |
行レベルのセキュリティ規則に使用する ID の一覧 |
|
lifetimeInMinutes |
integer |
生成された時刻から始まる、トークンの最大有効期間 (分単位)。 トークンの有効期限を短縮するために使用できますが、それを拡張することはできません。 この値は、正の整数にする必要があります。 ゼロ (0) は null に相当し、無視され、既定の有効期限になります。 |
応答
名前 | 型 | 説明 |
---|---|---|
200 OK |
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 |
ユーザー ID とロールを定義します。 詳細については、「Power BI Embeddedを使用した行レベルのセキュリティ」を参照してください。 |
Embed |
Power BI 埋め込みトークン |
Generate |
Power BI のトークン生成要求 |
Identity |
ID を指定するための BLOB。 Azure SQL への DirectQuery 接続を持つデータセットでのみサポートされます |
Token |
埋め込みトークン生成に必要なアクセス レベル |
EffectiveIdentity
ユーザー ID とロールを定義します。 詳細については、「Power BI Embeddedを使用した行レベルのセキュリティ」を参照してください。
名前 | 型 | 説明 |
---|---|---|
auditableContext |
string |
EffectiveIdentity 監査可能なコンテキスト。 このパラメーターが指定され、空でない場合は、EffectiveIdentity の監査が有効になり、その値は監査レコードのユーザー名に設定されます。 それ以外の場合は、GenerateToken 監査レコードから EffectiveIdentity コンテキストが省略されます。 |
customData |
string |
行レベルのセキュリティ規則を適用するために使用されるカスタム データ。 Azure Analysis Services モデルとクラウド モデルへのライブ接続でのみサポートされます。 |
datasets |
string[] |
この ID が適用されるデータセットの配列 |
identityBlob |
ID を指定する BLOB。 Azure SQLへの DirectQuery 接続を持つデータセットでのみサポートされます。 |
|
reports |
string[] |
この ID が適用されるレポートの配列。 ページ分割されたレポートでのみサポートされます。 |
roles |
string[] |
RLS ルールを適用するトークン内の行レベル セキュリティ (RLS) ロールの配列。 ID には、最大 50 個のロールを含めることができます。 ロールには を除く |
username |
string |
行レベルのセキュリティ規則を適用するトークン内の有効なユーザー名。 オンプレミス モデルの場合、ユーザー名には英数字または次の文字 |
EmbedToken
Power BI 埋め込みトークン
名前 | 型 | 説明 |
---|---|---|
expiration |
string |
トークンの有効期限の日付と時刻 (UTC) |
token |
string |
埋め込みトークン |
tokenId |
string |
一意のトークン ID。 監査ログを使用すると、トークン ID を使用して、トークンを使用する操作を生成操作と関連付けることができます。 |
GenerateTokenRequest
Power BI のトークン生成要求
名前 | 型 | 説明 |
---|---|---|
accessLevel |
埋め込みトークン生成に必要なアクセス レベル |
|
allowSaveAs |
boolean |
埋め込みレポートを新しいレポートとして保存できるかどうか。 既定値は |
datasetId |
string |
レポートの作成に使用されるデータセット ID。 レポート作成用の埋め込みトークンを生成する場合にのみ適用されます。 |
identities |
行レベルのセキュリティ規則に使用する ID の一覧 |
|
lifetimeInMinutes |
integer |
生成された時刻から始まる、トークンの最大有効期間 (分単位)。 トークンの有効期限を短縮するために使用できますが、それを拡張することはできません。 この値は、正の整数にする必要があります。 ゼロ (0) は null に相当し、無視され、既定の有効期限になります。 |
IdentityBlob
ID を指定するための BLOB。 Azure SQL への DirectQuery 接続を持つデータセットでのみサポートされます
名前 | 型 | 説明 |
---|---|---|
value |
string |
Azure SQLの OAuth 2.0 アクセス トークン |
TokenAccessLevel
埋め込みトークン生成に必要なアクセス レベル
名前 | 型 | 説明 |
---|---|---|
Create |
string |
生成された埋め込みトークンが作成アクセス許可を付与することを示します。 レポート作成用の埋め込みトークンを生成する場合にのみ適用されます。 |
Edit |
string |
生成された埋め込みトークンによって、ビューと編集のアクセス許可が付与されることを示します。 レポート埋め込み用の埋め込みトークンを生成する場合にのみ適用されます。 |
View |
string |
生成された埋め込みトークンがビューのみのアクセス許可を付与することを示します |