OpenAPI ベースの AEM API の設定

AEM as a Cloud Service 環境を設定して、OpenAPI ベースの AEM API へのアクセスを有効にする方法を学びます。

この例では、サーバー間認証を使用する AEM Assets API を使った設定プロセスを示します。他の OpenAPI ベースの AEM API でも、同じ手順に従います。

高度な設定プロセスには、次の手順が含まれます。

  1. AEM as a Cloud Service 環境の最新化。
  2. AEM API アクセスの有効化。
  3. Adobe Developer Console(ADC)プロジェクトの作成。
  4. ADC プロジェクトの設定。
  5. ADC プロジェクト通信を有効にする AEM インスタンスの設定。

AEM as a Cloud Service 環境の最新化。 modernization-of-aem-as-a-cloud-service-environment

AEM as a Cloud Service 環境の最新化は、次の手順を含む環境アクティビティごとに 1 回行われます。

  • AEM リリース(2024.10.18459.20241031T210302Z)以降に更新します。
  • リリース(2024.10.18459.20241031T210302Z)より前に環境が作成された場合は、新しい製品プロファイルを追加します。

AEM インスタンスの更新 update-aem-instance

AEM インスタンスを更新するには、「Adobe Cloud Manager」の「環境」セクションで、環境名の横にある​ 省略記号 ​アイコンを選択し、「更新」オプションを選択します。

AEM インスタンスの更新

次に、「送信」ボタンをクリックし、推奨 ​フルスタックパイプラインを実行します。

最新の AEM リリースバージョンの選択

この場合、フルスタックパイプラインの名前は Dev :: Fullstack-Deploy で、AEM 環境の名前は wknd-program-dev です。名前が異なる場合があります。

新しい製品プロファイルの追加 add-new-product-profiles

AEM インスタンスに新しい製品プロファイルを追加するには、「Adobe Cloud Manager」の「環境」セクションで、環境名の横にある​ 省略記号 ​アイコンを選択し、「製品プロファイルの追加」オプションを選択します。

新しい製品プロファイルの追加

環境名の横にある​ 省略記号 ​アイコンをクリックし、アクセスを管理プロファイルの作成 ​を選択すると、新しく追加された製品プロファイルを確認できます。

Admin Console ウィンドウに、新しく追加された製品プロファイルが表示されます。

新しい製品プロファイルの確認

上記の手順で、AEM as a Cloud Service 環境の最新化が完了します。

AEM API アクセスの有効化 enable-aem-apis-access

新しい製品プロファイル ​が存在すると、Adobe Developer Console(ADC)で OpenAPI ベースの AEM API アクセスが可能になります。Adobe Developer Console(ADC)は、Adobe API、SDK、リアルタイムイベント、サーバーレス関数などにアクセスするための開発者ハブです。

新しく追加された製品プロファイルは、サービス ​に関連付けられています。これは、事前定義されたアクセス制御リスト(ACL)を持つ AEM ユーザーグループ ​を表します。サービス ​は、AEM API へのアクセスレベルを制御するために使用されます。

また、製品プロファイルに関連付けられた​ サービス ​を選択または選択解除して、アクセスレベルを増減することもできます。

製品プロファイル名の横にある​ 詳細を表示 ​アイコンをクリックして、関連付けを確認します。

製品プロファイルに関連付けられたサービスの確認

AEM API アクセスを有効にする enable-aem-assets-apis-access

デフォルトでは、AEM Assets API Users Service は製品プロファイルに関連付けられていません。新しく追加された AEM Assets 共同作業者ユーザー - オーサー - プログラム XXX - 環境 XXX 製品プロファイルまたはAEM Assets API アクセスに使用するその他の製品プロファイルに関連付けましょう。

AEM Assets API Users Service を製品プロファイルを関連付ける

サーバー間認証を有効にする

目的の AEM API に対するサーバー間認証を有効にするには、Adobe Developer Console(ADC)を使用して統合を設定しているユーザーを、サービスが関連付けられている製品プロファイルに開発者として追加する必要があります。

例えば、AEM Assets API に対してサーバー間認証を有効にするには、ユーザーを開発者として AEM Assets 共同作業者ユーザー - オーサー - プログラム XXX - 環境 XXX 製品ファイルに追加する必要があります。

開発者を製品プロファイルに関連付ける

この関連付けの後、ADC プロジェクトの Asset Author API で目的のサーバー間認証を設定し、ADC プロジェクトの認証アカウント(次の手順で作成)を製品プロファイルに関連付けることができます。

IMPORTANT
上記の手順は、目的の AEM API のサーバー間認証を有効にするために重要です。この関連付けがないと、AEM API をサーバー間認証で使用することができません。

Adobe Developer Console(ADC)プロジェクトの作成。 adc-project

ADC プロジェクトを使用して、目的の API を追加し、その認証を設定して、認証アカウントを製品プロファイルに関連付けます。

ADC プロジェクトを作成するには、次の手順に従います。

  1. Adobe ID を使用して Adobe Developer Console にログインします。

    Adobe Developer Console

  2. クイックスタート」セクションで、「新規プロジェクトの作成」ボタンをクリックします。

    新規プロジェクトの作成

  3. これにより、デフォルトの名前で新しいプロジェクトが作成されます。

    新しいプロジェクトが作成されました

  4. 右上隅の「プロジェクトを編集」ボタンをクリックして、プロジェクト名を編集します。わかりやすい名前を指定し、「保存」をクリックします。

    プロジェクト名の編集

ADC プロジェクトの設定 configure-adc-project

ADC プロジェクトを作成したら、目的の AEM API を追加し、その認証を設定して、認証アカウントを製品プロファイルに関連付ける必要があります。

  1. AEM API を追加するには、「API を追加」ボタンをクリックします。

    API の追加

  2. API を追加 ​ダイアログで、Experience Cloud でフィルタリングし、目的の AEM API を選択します。例えば、この場合、「Asset Author API」が選択されます。

    AEM API の追加

    note tip
    TIP
    必要な AEM API カード ​が無効になっている場合と、無効になっている理由 ​情報に「ライセンスが必要です」というメッセージが表示される場合、理由の 1 つは、AEM as a Cloud Service環境を最新化していないことが考えられます。詳しくは、AEM as a Cloud Service 環境の最新化を参照してください。
  3. 次に、API を設定 ​ダイアログで、目的の認証オプションを選択します。例えば、この場合、「サーバー間」認証オプションが選択されます。

    認証の選択

    サーバー間認証は、ユーザーインタラクションなしで API アクセスが必要なバックエンドサービスに最適です。Web アプリと単一ページアプリの認証オプションは、ユーザーの代わりに API アクセスを必要とするアプリケーションに適しています。詳しくは、OAuth サーバー間資格情報と、web アプリ間資格情報と単一ページアプリ資格情報の違いを参照してください。

    note tip
    TIP
    サーバー間認証オプションが表示されない場合は、統合を設定するユーザーが、サービスが関連付けられている製品プロファイルに開発者として追加されていないということを意味します。詳しくは、サーバー間認証を有効にするを参照してください。
  4. 必要に応じて、識別しやすくするために API の名前を変更できます。デモ用には、デフォルト名が使用されます。

    資格情報の名前の変更

  5. この場合、認証方法は OAuth サーバー間 ​なので、認証アカウントを製品プロファイルに関連付ける必要があります。AEM Assets 共同作業者ユーザー - オーサー - プログラム XXX - 環境 XXX 製品プロファイルを選択し、「保存」をクリックします。

    製品プロファイルの選択

  6. AEM API と認証設定を確認します。

    AEM API 設定

    認証設定

OAuth Web アプリ ​または OAuth 単一ページアプリ ​の認証方法を選択した場合、製品プロファイルの関連付けは表示されませんが、アプリケーションリダイレクト URI が必要です。アプリケーションリダイレクト URI は、認証コードによる認証後にユーザーをアプリケーションにリダイレクトするために使用されます。関連するユースケースのチュートリアルでは、このような認証固有の設定について概説しています。

ADC プロジェクト通信を有効にする AEM インスタンスの設定 configure-aem-instance

AEM インスタンスと通信する ADC プロジェクトのクライアント ID を有効にするには、AEM インスタンスを設定する必要があります。

それには、API 設定を YAML ファイルで定義し、Cloud Manager の設定パイプラインを使用してデプロイします。YAML ファイルには、AEM インスタンスと通信できる ADC プロジェクトの許可されたクライアント ID が定義されています。

  1. AEM プロジェクトで、config フォルダーから api.yaml ファイルを見つけるか作成します。

    API YAML を見つける {width="500"}

  2. 次の設定を api.yaml ファイルに追加します。

    code language-yaml
    kind: "API"
    version: "1.0"
    metadata:
        envTypes: ["dev", "stage", "prod"]
    data:
        allowedClientIDs:
            author:
            - "<ADC Project's Credentials ClientID>"
    

    <ADC Project's Credentials ClientID> を ADC プロジェクトの資格情報値の実際のクライアント ID に置き換えます。このチュートリアルで使用する API エンドポイントはオーサー層でのみ使用できますが、その他の API の場合、yaml 設定に publish または preview ノードを含めることもできます。

    note caution
    CAUTION
    デモ目的では、すべての環境で同じクライアント ID が使用されます。セキュリティと制御の強化に、環境(開発、ステージ、実稼動)ごとに個別のクライアント ID を使用することをお勧めします。
  3. 設定変更をコミットし、Cloud Manager パイプラインが接続されているリモート Git リポジトリに変更をプッシュします。

  4. Cloud Manager の設定パイプラインを使用して、上記の変更をデプロイします。 また、api.yaml ファイルは、コマンドラインツールを使用して RDE にインストールすることもできます。

    YAML のデプロイ

次の手順

AEM インスタンスを設定して ADC プロジェクト通信を有効にすると、OpenAPI ベースの AEM API の使用を開始できます。様々な OAuth 認証方法を使用して、OpenAPI ベースの AEM API を使用する方法を学びます。

サーバー間認証を使用した API の呼び出し

サーバー間認証を使用した API の呼び出し

OAuth サーバー間認証を使用して、カスタム NodeJS アプリケーションから OpenAPI ベースの AEM API を呼び出す方法を説明します。

詳細情報

Web アプリ認証を使用した API の呼び出し

Web アプリ認証を使用した API の呼び出し

OAuth web アプリ認証を使用して、カスタム web アプリケーションから OpenAPI ベースの AEM API を呼び出す方法を説明します。

詳細情報

単一ページアプリ認証を使用した API の呼び出し

単一ページアプリ認証を使用した API の呼び出し

OAuth 2.0 PKCE フローを使用して、カスタム単一ページアプリ(SPA)から OpenAPI ベースの AEM API を呼び出す方法を説明します。

詳細情報

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69