第1章 ランタイム時の認証について
イメージを作成する開発者は、ビルドプロセス内で機密データを安全に処理するために、認証を設定し、シークレットを使用する必要がある場合があります。構築リソースへのアクセスは、クラスター管理者が定義するロールベースアクセス制御 (RBAC) によって管理され、許可されたユーザーのみが安全に操作できるようにします。
1.1. ビルドシークレットアノテーション リンクのコピーリンクがクリップボードにコピーされました!
ビルドシークレットにアノテーションを追加することで、参照されているビルドシークレットの作成、更新、削除イベント時にビルドコントローラーが調整を行うようにします。
以下の例は、シークレットでのアノテーションの使用方法を示しています。
apiVersion: v1
data:
.dockerconfigjson: <pull_secret>
kind: Secret
metadata:
annotations:
build.shipwright.io/referenced.secret: "true"
name: secret-docker
type: kubernetes.io/dockerconfigjson
各項目の説明:
<pull_secret>- ビルドで使用される Base64 エンコードされたプルシークレットを指定します。
build.shipwright.io/referenced.secret-
build.shipwright.io/referenced.secretアノテーションの値を指定します。
このアノテーションにより、ビルドによってシークレットが明示的に参照されない限り、コントローラーはシークレットイベントを無視することが保証されます。たとえば、シークレットにこのアノテーションが含まれていない場合、イベントがトリガーされたとしても、そのシークレットが変更されてもビルドコントローラーは調整を行いません。関連するイベントに基づいて調整を行うことで、ビルドコントローラーはビルド設定の検証を再実行でき、不足している依存関係や誤って設定されている依存関係を早期に検出するのに役立ちます。