機械翻訳について

リソース所有者のパスワード資格証明を使用した開発者APIのコール

完了するための前提条件

リソース所有者パスワード資格証明を使用してOracle Integration Developer APIをコールする前に、機密クライアント・アプリケーションを作成し、その他の前提条件を実行する必要があります。 手順は次を参照してください。
  1. アイデンティティ・ドメインにアクセスします
  2. 「クライアント資格証明およびリソース所有者のパスワード資格証明の前提条件」権限付与タイプの前提条件を構成します。

必要な情報

次に、クライアントを介してリクエストを送信するために必要な情報を示します。
必要な情報 場所
ユースケースに応じたデザインタイムURLまたはランタイムURL 「設計時またはランタイムURLを使用しますか。」を参照してください。

デザインタイムURLの例:

https://design-integration-region.ocp.oraclecloud.com/

ランタイムURLの例:

https://myInstance-integration-region.ocp.oraclecloud.com/

ドメイン・ホスト

アイデンティティ・ドメイン・ホストは、現在のドメインの「ドメインURL」フィールドから取得できます。 ドメインへのアクセス手順は、アイデンティティ・ドメインへのアクセスを参照してください。

「ドメインの詳細」ページ。「アイデンティティ」、「ドメイン」を選択してアクセスし、「ドメインURL」フィールドが強調表示されている

クライアントID

クライアント・シークレット

構成した機密アプリケーションのクライアントIDを追加します。

機密アプリケーションを検索するには、アイデンティティ・ドメインにアクセスし、「統合アプリケーション」を選択してアプリケーションを選択し、OAuth構成「クライアントID」および「クライアント・シークレット」を探します。 手順については、アイデンティティ・ドメインへのアクセスを参照してください。

スコープ

機密アプリケーションに追加した範囲と同じ範囲を追加します。 機密アプリケーションに追加したスコープは、機密アプリケーションの詳細の「トークン発行ポリシー」にあります。

機密アプリケーションを検索するには、アイデンティティ・ドメインにアクセスし、「統合アプリケーション」を選択してアプリケーションを選択し、OAuth構成「クライアントID」および「クライアント・シークレット」を探します。 手順については、アイデンティティ・ドメインへのアクセスを参照してください。

このスコープにより、ユーザーは統合エンドポイントとOracle Integration Developer APIの両方にアクセスできます:

https://69415C303.integration.ocp.oraclecloud.com:443urn:opc:resource:consumer::all

このスコープにより、ユーザーはOracle Integration Developer APIにのみアクセスできます:

https://415C303.integration.ocp.oraclecloud.com:443/ic/api/

統合インスタンス

統合インスタンスの名前。

リソース所有者のパスワード資格証明のPostmanの構成

「Postman Configuration」ページでは、「Authorization」タブが選択されており、上から下に入力する必要があるフィールドは、「Grant Type Password Credentials」、「Access Token URL」、「Client ID」、「Client Secret」、「User name」、「Password」、「Scope」、「Client Authentication」です。 「新規アクセス・トークンの取得」ボタンもあります
  1. ユースケースに応じて、デザインタイムURLまたはランタイムURLを使用します。 「デザインタイムURLまたはランタイムURLを使用しますか。」を参照してください。

    接続用のOracle Integration Developer APIへのコールを含む設計時URLの例:

    https://design-integration-region.oraclecloud.com/ic/api/integration/v1/connections

    ランタイムURLの例:

    https://myInstance-integration-region.oraclecloud.com/ic/api/integration/v1/connections

    ノート:

    ランタイムURLを使用する場合は、リクエスト設定でPostmanを「Follow Authorization Header」に構成する必要があります。 これは、ランタイムURLを使用してOracle Integration Developer APIをコールすると、Oracle IntegrationによってDeveloper APIの設計時URLにリダイレクトされ、リクエスト・ヘッダーに認可ヘッダーがない場合、コールは失敗するためです。

    cURLで、-lオプションを使用して、リダイレクション中に認可ヘッダーを転送します。

    ランタイムURLの使用時に認可ヘッダーを転送するようにPostmanを構成するには:
    1. リクエストで、「設定」をクリックし、「認可ヘッダーに従う」を有効にします。「Postman Settings」タブが選択され、「Follow Authorization」ヘッダーが強調表示されて「ON」に設定されます。
  2. 「承認」タブで、必須フィールドに入力します。
    フィールド 入力内容

    認可タイプ

    OAuth 2.0

    権限付与タイプ

    パスワード資格証明

    アクセス・トークンURL

    ドメインURLから識別したアイデンティティ・ドメイン・ホストを使用します。

    例: https://<identity_domain_host>/oauth2/v1/token

    クライアントID

    構成した機密アプリケーションのクライアントIDを追加します。

    クライアント・シークレット

    構成した機密アプリケーションのクライアント・シークレットを追加します。

    ユーザー名およびパスワード 有効なユーザー名とパスワードを指定します。 これにより、リソース所有者のパスワード資格証明を使用してトークンが生成されます。

    スコープ

    機密アプリケーションに追加した範囲と同じ範囲を追加します。

    クライアント認証

    ここで何でも選べますが、当てはまりません。
  3. 「新規アクセス・トークンの取得」をクリックします。
  4. ユーザー名とパスワードを入力するように要求されます。

    このユーザーは、IAMドメインに作成されている必要があります。 これは別の認証方法であるため、シングル・サインオン・ユーザー名およびパスワードは使用できません。 インスタンスのシングル・サインオンがある場合は、IDCSで同じユーザーをコピーし、ローカルIAMアクセス用に個別のパスワードを保持する必要があります。

  5. 「トークンの使用」をクリックします。

    トークンが「ヘッダー」セクションでリクエストに添付されています。

  6. 「送信」をクリックして、APIをコールします。 接続のリストを取得する必要があります。

リソース所有者パスワード資格証明のcURLコマンド

  1. アクセス・クライアントをフェッチするには、ペイロードでユーザー名とパスワードを使用してリクエストします。 たとえば:
    curl -i -H 'Authorization: Basic OGQyM...ZDA0Mjcz' -H 'Content-Type: application/x-www-form-urlencoded;charset=UTF-8' --request POST https://<identity_domain_host>/oauth2/v1/token -d 'grant_type=password&username=sampleUser&password=SamplePassword&scope=https://<Resource_APP_Audience>urn:opc:resource:consumer::all%20offline_access'
    構文:
    
    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=password&username=<user-name>&password=<password>&scope=<App_Scope>%20offline_access'
    説明:
    • <base64-clientid-secret> - ベース64エンコードclientId:ClientSecret
    • <username> - トークンのユーザーを発行する必要があります(serviceinvokerロールである必要があります)。
    • <password>- 上記のユーザーのパスワード
    • <app_scope> - クライアント構成セクションでアプリケーションを作成中に追加されたスコープ(urn:opc:resource:consumer::allで終わる)
  2. レスポンスからaccess_tokenおよびrefresh_tokenを取得します。
    {
        "access_token": "eyJ4NXQjG...dfsdfsFgets2ed",
        "token_type": "Bearer",
        "expires_in": 3600,
        "refresh_token": "AQAgY2MzNjVlOTVhOTRh...vM5S0MkrFSpzc="
    }
  3. 認可ヘッダーのaccess_tokenを使用して、Oracle Integrationトリガー・エンドポイントを起動します。
    curl --location --request GET 'https://OIC host/OIC endpoint' \
    --header 'Authorization: Bearer eyJ4NXQjG...dfsdfsFgets2ed'
  4. アクセス・トークンを更新するには、リフレッシュ・トークンを使用してリクエストします。
  5. レスポンスからaccess_tokenおよびrefresh_tokenを取得して、さらに使用します。 たとえば:
    curl -i -H 'Authorization: Basic OGQyM...ZDA0Mjcz' -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=refresh_token&refresh_token=AQAgY2MzNjVlOTVhOTRh...vM5S0MkrFSpzc='
    構文:
    curl -i -H 'Authorization: Basic <base64-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=refresh_token&refresh_token=<refresh_token>'