JWTユーザー・アサーションを使用した開発者APIのコール
完了するための前提条件
JWTユーザー・アサーションを使用してOracle Integration開発者APIをコールする前に、機密クライアント・アプリケーションを作成し、その他の前提条件を実行する必要があります。機密クライアント・アプリケーションを構成してロールを割り当てるには、OCIテナントおよびドメイン管理者である必要があります。
手順は次を参照してください。- アイデンティティ・ドメインにアクセスします。
- 付与タイプの前提条件を構成します。
必要な情報
| 必要な情報 | 場所 |
|---|---|
| ユースケースに応じたデザインタイムURLまたはランタイムURL | 「設計時またはランタイムURLを使用しますか。」を参照してください。
デザインタイムURLの例: ランタイムURLの例: |
|
ドメイン・ホスト |
アイデンティティ・ドメイン・ホストは、現在のドメインの「ドメインURL」フィールドから取得できます。 ドメインへのアクセス手順は、アイデンティティ・ドメインへのアクセスを参照してください。 ![]() |
|
クライアントID クライアント・シークレット |
構成した機密アプリケーションのクライアントIDを追加します。 機密アプリケーションを検索するには、アイデンティティ・ドメインにアクセスし、「統合アプリケーション」を選択してアプリケーションを選択し、OAuth構成、「クライアントID」および「クライアント・シークレット」を探します。 手順については、アイデンティティ・ドメインへのアクセスを参照してください。 |
|
スコープ |
機密アプリケーションに追加した範囲と同じ範囲を追加します。 機密アプリケーションに追加したスコープは、機密アプリケーションの詳細の「トークン発行ポリシー」にあります。 機密アプリケーションを検索するには、アイデンティティ・ドメインにアクセスし、「統合アプリケーション」を選択してアプリケーションを選択し、OAuth構成、「クライアントID」および「クライアント・シークレット」を探します。 手順については、アイデンティティ・ドメインへのアクセスを参照してください。 このスコープにより、ユーザーは統合エンドポイントとOracle Integration Developer APIの両方にアクセスできます: このスコープにより、ユーザーはOracle Integration Developer APIにのみアクセスできます: |
|
統合インスタンス |
統合インスタンスの名前。 |
JWTユーザー・アサーションのPostmanの構成
JWTユーザー・アサーションは、Postmanでは直接サポートされていません。 アサーションを生成するスクリプトを定義する必要があります。 詳細およびサンプル・スクリプトについては、ブログ「OICでのJWTユーザー・アサーションの使用に関するOAuthの説明」を参照してください。
JWTユーザー・アサーションのcURLコマンド
- JWTユーザー・アサーションを生成したら、アクセス・トークンを生成します。
構文:
curl -i -H 'Authorization: Basic <base64Encoded clientid:secret>' -H 'Content-Type: application/x-www-form-urlencoded;charset=UTF-8' --request POST https://<Identity_Domain_Service_Instance>.identity.oraclecloud.com/oauth2/v1/token -d 'grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Ajwt-bearer&assertion=<user assertion>&scope=<app_scope>'説明:grant_type- urn:ietf:params:oauth:grant-type:jwt-bearer<base64-clientid-secret>- ベース64エンコードclientId:ClientSecret<user assertion>- ユーザー・アサーションが生成されました<app scope>- クライアント構成セクションでアプリケーションを作成中に追加されたスコープ(urn:opc:resource:consumer::allで終わる)
- レスポンスから
access_tokenを取得します。{ "access_token": "eyJ4NXQjG...dfsdfsFgets2ed", "token_type": "Bearer", "expires_in": 3600 } - 認可ヘッダーの
access_tokenを使用して、Oracle Integration Developer APIを呼び出します。curl --location --request GET 'https://OIC host/ic/api/integration/v1/connections' \ --header 'Authorization: Bearer eyJ4NXQjG...dfsdfsFgets2ed'
-
<oic_host>は、設計時URLホスト名またはランタイムURLホスト名です。 「設計時またはランタイムURLを使用しますか。」を参照してください。ノート:
ランタイムURLホスト名を使用する場合は、-lオプションを使用して認可ヘッダーを転送する必要があります。これは、デザインタイム・ホストに自動的にリダイレクトされるためです。
