接続アプリケーションを使用したクライアントアプリケーションの作成

自動化のユースケースでは、接続アプリケーションを使用してクライアントアプリケーションの作成と管理ができます。

接続アプリケーションは、機密情報を共有したりサードパーティにアプリケーションの完全な制御権を付与したりすることなく、ユーザーが自分のアクセスを委任するのに役立ちます。接続アプリケーションによって実行されたアクションは監査され、ユーザーはいつでもアクセスを取り消すことができます。

接続アプリケーションの作成

接続アプリケーションを作成するには、「開発者向けの接続アプリケーション」を参照してください。

クライアントアプリケーションを管理する接続アプリケーションを作成する場合、必ず以下の操作を行います。

  1. [Type (種別)]​ で ​[App acts on its own behalf (client credentials) (アプリケーションが自身のために行動する (クライアントログイン情報))]​ を選択します。

  2. [Application Creator (アプリケーション作成者)]​ スコープを追加します。

「App acts on its own behalf (client credentials) (アプリケーションが自身のために行動する (クライアントログイン情報))」 と 「Application Creator (アプリケーション作成者)」 の場所を示しているスクリーンショット
1 [App acts on its own behalf (client credentials) (アプリケーションが自身ために行動する (クライアントログイン情報))]​ 種別
2 [Application Creator (アプリケーション作成者)]​ スコープを追加するための ​[Add Scopes (スコープを追加)]​ ボタン

新しい接続アプリケーションでクライアントアプリケーションを作成し、作成したクライアントアプリケーションを管理できるようになりました。

クライアントアプリケーション管理

接続アプリケーションでクライアントアプリケーションを作成すると、接続アプリケーションのオーナーが新しいクライアントアプリケーションのオーナーになります。このオーナーは、API Manager を使用して他のユーザーをオーナーとして追加することができます。

接続アプリケーションでは、作成したクライアントアプリケーションを管理できるほか、次のアクションを実行できます。

  • ユーザーをクライアントアプリケーションのオーナーとして追加する

  • API インスタンスへのアクセス権を要求する

  • 層の変更を要求する

  • クライアントアプリケーションのシークレットをリセットする

接続アプリケーションをクライアントアプリケーションのオーナーとして追加することはできません。接続アプリケーションでは、接続アプリケーションで作成したクライアントアプリケーションのみを管理できます。

API Manager API を使用したクライアントアプリケーションの作成

接続アプリケーションを作成したら、API Manager API に対して要求を実行してクライアントアプリケーションを作成および管理できます。

このセクションでは、クライアントアプリケーションの作成方法のみが示されています。クライアントアプリケーションを管理するための API Manager API 要求についての詳細は、 API Manager API のドキュメント​を参照してください。

API Manager API を使用してクライアントアプリケーションを作成する手順は、次のとおりです。

  1. 次の情報を収集して認証トークンを取得します。

    • <connected-app-client-id>​: 接続アプリケーションの ​ID

    • <connected-app-client-secret>​: 接続アプリケーションの​シークレット​。

  2. プレースホルダーを次の内容に置き換えたら、次の要求を実行して認証トークンを取得します。

    curl --location --request POST 'https://anypoint.mulesoft.com/accounts/api/v2/oauth2/token' \
    --header 'Content-Type: application/json' \
    --data-raw '{
     "grant_type": "client_credentials",
     "client_id": "<connected-app-client-id>",
     "client_secret": "<connected-app-client-secret>"
    }'
  3. 次の情報を収集してクライアントアプリケーションを作成します。

    • <your-org-id>​: 接続アプリケーションを作成する組織の​組織 ID

    • <instance-id>​: クライアントアプリケーションを作成している API インスタンスの API インスタンス ID

    • クライアントアプリケーションパラメーター:

      • name​: アプリケーションの名前

      • description​: アプリケーションの説明

      • url​: アプリケーションの URL

      • redirectURI​: リダイレクト URI の配列

      • grantTypes​: 許可種別の配列 (例: 「password」​、​「implicit」​、​「client_credentials」​、​「authorization_code」​、​「refresh_token」​)

      • apiEndpoints​: リダイレクト URI を自動的に登録するかどうかを示す「true」または「false」の値。

  4. プレースホルダーを次の内容に置き換えたら、次の要求を実行してクライアントアプリケーションを作成します。

    curl --X POST 'https://anypoint.mulesoft.com/apiplatform/repository/v2/organizations/<your-org-id>/applications?apiVersionId=<instance-id>' \
    --header 'Authorization: bearer <anypoint_token>' \
    --header 'Content-Type: application/json' \
    --data '{
         "redirectUri": ["http://example.com/"],
         "apiEndpoints": false,
         "name": "Sample Client Apps Name",
         "description": "Create this App for Sample Client Apps via API 1",
         "url": "https://www.example.com/app-test1"
    } '