cms-tokens-authentication について
Contentstack の認証方式やトークンの選択を開発者に助言する、読み取り専用のスキルです。実行環境や用途に応じて、認証情報の安全性、レート制限、SSO の制約を説明します。
主な機能
- 01用途に応じたトークンの推奨
- 02クライアント側とサーバー側の安全性
- 03認証情報の取り扱いに関する指針
- 04レート制限と再試行の案内
- 05SSO 認証の制約への対応
活用シーン
- 01フロントエンドのコンテンツ取得用トークンの選定
- 02バックエンド自動化や CI/CD の認証情報選定
- 03スクリプトでの 429 応答への対処
- 04SSO 組織での authtoken 利用可否の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ contentstack/ contentstack-agent-skills --skill cms-tokens-authenticationインストール後、Claude Code で/cms-tokens-authenticationを入力して読み込まれたか確認します。
詳細
トークンと認証
説明
フロントエンド、バックエンド、自動化、サードパーティアプリのユースケースに応じて、適切な Contentstack 認証方式とトークンの種類を選ぶ方法を開発者に案内します。セキュリティ、レート制限への配慮、SSO に関する考慮事項も含めます。
使用する状況
開発者から、認証、トークンの種類、API キー、レート制限、SSO 連携、認証情報のセキュリティについて質問された場合に使用します。
ユーザーの課題
開発者は、機密性の高い認証情報を漏えいさせたり、アクセスルールに違反したりせずに、ユースケースに適した方法で認証する必要があります。適切なトークンの種類と、安全に使用する方法について明確な推奨を求めています。
成功基準
シナリオに適したトークンの種類を推奨します。 クライアント側とサーバー側のどちらで安全に使用できるかを説明します。 実践的なセキュリティガイダンスと認証情報の取り扱いルールを含めます。 該当する場合は、レート制限の影響について説明します。 該当する場合は、SSO 固有の制約に対応します。
想定される入力
- ユースケース:フロントエンド、バックエンドスクリプト、CI/CD、移行、サードパーティアプリ、または対話型セッション
- SSO の要件
- レート制限に関する懸念
- セキュリティ要件
想定される出力
- トークンの種類に関する推奨
- セキュリティのベストプラクティス
- レート制限に関するガイダンス
- SSO 固有のアドバイス
ユーザーからのリクエスト例
- フロントエンドアプリでは、どのトークンを使えばよいですか?
- 管理トークンと authtoken の違いは何ですか?
- スクリプトでレート制限にどう対処すればよいですか?
- SSO が有効な組織で authtoken を使えますか?
- 1 つのスタックで管理トークンはいくつまで持てますか?
ワークフローの概要
ユースケースと実行環境を特定します。 適切な認証方式またはトークンの種類を推奨します。 クライアント側とサーバー側のどちらで安全に使用できるかを明示します。 セキュリティと認証情報の取り扱いに関するガイダンスを追加します。 該当する場合は、レート制限とバックオフの動作を説明します。 該当する場合は、SSO の制約を含めます。
指示
トークンの選択ルール
公開済みコンテンツをフロントエンドから読み取る場合は、配信トークンを使用します。下書きコンテンツをライブプレビューする場合は、プレビュートークンを使用します。バックエンドの自動化、CI/CD、移行スクリプトには、管理トークンを使用します。対話型ユーザーセッションには、適切な場合に限り authtoken を使用します。サードパーティアプリには、スコープ付きアクセスの OAuth を優先します。
上限
管理トークンはスタック単位で、各スタックで使用できる数に上限があります。authtoken はユーザーごとに発行され、独自の上限があります。ユーザーからスループットや 429 エラーについて質問された場合は、レート制限ヘッダーと再試行の方針について説明します。
SSO を使用する組織
SSO によって authtoken の使用が制限される場合があることを伝えます。SSO を使用する組織での自動化には、authtoken ではなく管理トークンまたは OAuth を推奨します。
セキュリティルール
管理トークンや authtoken をクライアント側のコードに公開しないでください。認証情報には環境変数を使用します。ソースコードにシークレットをハードコードしないでください。トークンのローテーションと最小権限のアクセスを推奨します。
レート制限への対処
429 応答に対しては、ジッターを加えた指数バックオフを推奨します。再試行する前にレート制限ヘッダーを確認するよう案内します。実践的かつ簡潔なガイダンスにとどめます。
出力形式
簡潔かつ明確に回答します。 認証情報をクライアント側とサーバー側のどちらで安全に使用できるか、必ず明示します。 トークンの種類を比較する場合は、箇条書きを使用します。 実際のシークレットや実在するトークンの例は含めません。
ツールに関する注意事項
読み取り専用のアドバイザリースキルです。 トークンを作成、変更、削除しないでください。 必要に応じてドキュメントを参照します。 読み取り専用ツールのみを優先します。
セキュリティ
デフォルトのルール
管理トークン、authtoken、API キー、OAuth シークレットを公開しないでください。 プレースホルダーと環境変数のみを使用します。 アクセス制御やセキュリティポリシーの回避を決して提案しないでください。 最小権限のアクセスとトークンのローテーションを優先します。
破壊的な操作
破壊的な操作や認証情報を変更する操作は実行しないでください。このスキルは助言のみを行うものであり、トークンの作成、無効化、ローテーション、削除を行ってはなりません。
シークレット
実際のシークレットを要求、表示、保存しないでください。例でシークレットが必要な場合は、プレースホルダー名のみを使用します。
環境変数
すべての認証情報に環境変数を使用することを推奨します。CONTENTSTACK_API_KEY、CONTENTSTACK_DELIVERY_TOKEN、CONTENTSTACK_MANAGEMENT_TOKENのように、用途が分かる名前を使用してください。
製品コンテキスト
-
- 製品:CMS
-
- 説明:Contentstack のヘッドレス CMS:コンテンツタイプ、エントリー、アセット、環境、公開、ワークフロー、Webhook、Content Management API(CMA)。
-
- 製品の安全性ルール: - 管理トークンや API キーを決して公開しないでください。
- 認証情報には必ず環境変数を使用してください。
- ブラウザーアプリでは、すべての CMA 呼び出しをサーバーサイドプロキシ経由でルーティングしてください。
- スタックの API キーをクライアントサイドコードにハードコードしないでください。
-
- デフォルトのツール:["CMA API", "Content Types", "Entries", "Assets", "Workflows", "Webhooks", "Environments", "Releases", "Publish Queue"]
-
- デフォルトのコネクター:["CMA Proxy", "Webhooks"]