シークレット
プロジェクト内のボールトに保管されるのは、オペレーションが外部を呼び出すときに使う認証情報です。値は暗号化して保存され(詳細はセキュリティのページにあります)、参照で指定され、設定ファイルには置かれません。
ラベルと参照
シークレットには自分で決めるラベルと、所有者がいます。所有者はプロジェクト、アプリ、またはエンドユーザーの1人です。作成すると不透明な参照が返り、以後はその参照で指定します。保存はコンソールの設定、CLI、またはラベルだけを宣言して平文を含まないfoir.secrets.tsファイルをコミットする方法で行えます。このファイルはfoir secrets pushでプロジェクトと照合されます。
値の読み取り方
自分でホストするエンドポイントでは、呼び出しとともに届くディスパッチトークンがすでに読み取りを許可しています。ハンドラーは参照と目的を渡してgetSecretを呼び出し、自前の認証情報は持ちません。目的は必須で、記録されます。
Fóir自身が行う呼び出しでは、リクエストテンプレートがプレースホルダー名でシークレットを参照し、オペレーションのバインディングがその名前を参照に対応付けます。値は呼び出し時に解決され、オペレーションには保存されません。
アクセスを持てる人
シークレットのスコープを持てるのは、シークレットAPIキーだけで、公開キーには付与できません。エンドユーザーが起動したオペレーションは、そのユーザーが所有するシークレットを保存でき、読み戻せるのはそのユーザーのオペレーションだけです。
ローテーションと削除
ローテーションすると、既存の参照の裏にある値が置き換わります。読み取り側は次の読み取りで新しい値を得るので、再デプロイは不要です。削除は論理削除で、そのシークレットはすぐに解決されなくなり、30日間は復元できます。
詳細を読む
シークレットガイドでは、シークレットの保存、読み取り、ローテーション、ユーザーが所有するシークレット、監査される内容を扱っています。