VMware Cloud Director 10.3.1 以降では、API アクセス トークンを生成して発行することができます。2 要素認証の使用など、セキュリティに関する独自のベスト プラクティスを使用して認証しているときに、API アクセス トークンを使用すると、VMware Cloud Director に対して自動化を構築する際のアクセス権を付与することができます。
アクセス トークンは、クライアント アプリケーションがユーザーに代わって API 要求を行う際に使用するアーティファクトです。アプリケーションで認証を行うには、アクセス トークンが必要になります。アクセス トークンの有効期限が切れた場合、アプリケーションは API トークンを使用することでアクセス トークンを取得できます。API トークンに有効期限はありません。
アクセス トークンを使用している場合、アプリケーションは次に示す特定のタスクを実行できません。
- ユーザー パスワードの変更
- ユーザー管理タスクの実行
- 他のトークンの作成
- 他のトークンの表示または取り消し
API アクセス トークンを使用して VMware Cloud Director にアクセスするアプリケーションには、次のリソースの表示権限のみがあります。
- ユーザー
- グループ
- ロール
- グローバル ロール
- 権限バンドル
API アクセス トークンを使用して
VMware Cloud Director にアクセスするアプリケーションには、次の権限がありません。
- トークン:管理
- トークン:すべての管理
ユーザー API トークンの生成と同様に、VMware Cloud Director API を使用してサービス アカウントを作成できます。サービス アカウントを作成するための API 要求では、ユーザー API トークンの作成時と同じ API エンドポイントが使用されますが、software_id
フィールドがある場合は、サービス アカウントを作成する目的が示されます。
前提条件
- ユーザー自身の API トークンの管理権限があることを確認します。
- API トークンを使用した認証では、OAuth 2.0 RFC 6749 セクション 6 で指定されている「アクセス トークンの更新」標準を使用して、VMware Cloud Director への OAuth アプリケーションとしてのアクセスを許可することができます。返されるアクセス トークンは、VMware Cloud Director のアクセス トークンと同じです。クライアント アプリケーションはこのトークンを使用して、VMware Cloud Director に対する以降の API 呼び出しを行うことができます。OAuth 2.0 の RFC 準拠の要求を行うには、アクセス トークンの更新に関するRequest for Comments (RFC) 6749 セクション 6の情報について詳細に確認してください。
手順
例
POST https://host_name/oauth/tenant/tenant_name/token Accept: application/json Content-Type: application/x-www-form-urlencoded Content-Length: 71 grant_type=refresh_token&refresh_token=Generated_API_Token応答:
HTTP/1.1 200 OK Content-Type: application/json { "access_token":"Generated_Access_Token", "token_type":"Bearer", "expires_in":2592000, "refresh_token":null }生成されたアクセス トークンを使用する要求:
GET https://host_name/api/org Accept: application/*+xml;version=36.1 Authorization: Bearer Generated_Access_Token応答:
HTTP/1.1 200 OK Content-Type: application/vnd.vmware.vcloud.orglist+xml;version=36.1 X-VMWARE-VCLOUD-REQUEST-EXECUTION-TIME: 41 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <OrgList xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:vmext="http://www.vmware.com/vcloud/extension/v1.5" xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1" xmlns:vssd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_VirtualSystemSettingData" xmlns:common="http://schemas.dmtf.org/wbem/wscim/1/common" xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData" xmlns:vmw="http://www.vmware.com/schema/ovf" xmlns:ovfenv="http://schemas.dmtf.org/ovf/environment/1" xmlns:ns9="http://www.vmware.com/vcloud/versions" href="https://host_name/api/org/" type="application/vnd.vmware.vcloud.orgList+xml"> <Org href="https://host_name/api/org/UUID_of_the_organization" type="application/vnd.vmware.vcloud.org+xml" name="Organization_name"/> </OrgList>
次のタスク
- トークンを取り消すには、[ユーザー環境設定] 画面に移動して、トークンの横にある縦方向の省略記号をクリックします。
- 組織管理者が組織内のすべてのテナント ユーザーのトークンを表示し、必要に応じてトークンを取り消す必要がある場合は、すべてのユーザーの API トークンの管理権限を付与するサービス プロバイダから要求することができます。他のユーザーのトークンを取り消す方法については、ユーザーのアクセス トークンの管理を参照してください。