VercelのDeployment ProtectionをContent SDKアプリに使う

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

デプロイメント保護は、開発者や編集者がサイト展開へのアクセスを制限できるVercelの機能です。

これを有効にするには、Content SDKアプリの設定に基づいていくつかの変更を加える必要があります:

  1. VercelでProtection Bypassトークンを設定してください。

  2. レンダリングホストの設定にバイパストークンを追加してください:

    1. SitecoreAIでコンテンツエディターを開き、/sitecore/system/Settings/Services/Rendering Hosts/にあるレンダリングホストの定義に移動します。例えば、定義がvercelと名付けられた場合、開 /sitecore/system/Settings/Services/Rendering Hosts/vercel。

    2. 以下のフィールドのURLにx-vercel-protection-bypass=<bypass_token> クエリ文字列パラメータを追加してください。 <bypass_token> をVercelのバイパストークン値に置き換えてください:

      • サーバーサイドレンダリングエンジンエンドポイントURL
      • サーバー側レンダリングエンジンアプリケーションURL
      • サーバー側レンダリングエンジンの設定URL

      以下の例は 、サーバー側レンダリングエンジンアプリケーションURLの更新URLを示しています:

      https://<vercel_deployment_url>/?x-vercel-protection-bypass=<bypass_token>

  3. もしVercelを編集ホストとして使っているなら、SitecoreAIのコンテンツエディター内で、サーバーサイドレンダリングエンジンのアプリケーションURLに以下のクエリ文字列パラメータを追加してください:

    x-vercel-set-bypass-cookie=samesitenone

    例えば:

    https://<vercel_deployment_url>/?x-vercel-protection-bypass=<bypass_token>&x-vercel-set-bypass-cookie=samesitenone

  4. 自動生成URL以外の展開URLでデプロイメント保護が有効で、そのURLをレンダリングホストエンドポイントとして使用している場合は、Vercelで以下の手順を実行します。

    1. 環境変数 PUBLIC_URL 追加します。
    2. 新しい変数の値は、レンダリングホストの設定で使われているプロトコルとホスト名(例: https://<vercel_deployment_url>)に設定してください。
  5. PagesでSitecoreAIフォームやBYOCコンポーネントを使用したい場合は、Componentsアプリケーション内でレンダリングホストを設定する必要があります。以下のように:

    1. SitecoreAIダッシュボードからコンポーネントアプリにアクセスしてください。

    2. 設定タブの**「Rendering host」の「Rendering host」**欄で、VercelデプロイメントのURLを入力し、以下のクエリ文字列パラメータを入力してください:

      • x-vercel-protection-bypass、バイパストークンに設定します。
      • x-vercel-set-bypass-cookie、 samesitenoneに設定されています。

      更新されたレンダリングホストURLの例は以下の通りです:

      https://<vercel_deployment_url>/?x-vercel-protection-bypass=<bypass_token>&x-vercel-set-bypass-cookie=samesitenone

!重要通常モードでプロテクションバイパストークンを使ってサイトにアクセスする場合は、すべての静的資産を正しくレンダリングするために、x-vercel-protection-bypassヘッダーとx-vercel-set-bypass-cookieヘッダーの両方を使うか、クエリ文字列パラメータを使う必要があります。

この記事を改善するための提案がある場合は、 お知らせください!