第3章 Pod のセキュリティーコンテキストの設定
OpenShift Pipelines が開始する Pod のデフォルトのサービスアカウントは、Pipeline です。pipeline サービスアカウントに関連付けられた Security Context Constraint (SCC) は、pipelines-scc です。pipelines-scc SCC は anyuid SCC に基づいていますが、次の YAML 仕様で定義されているように若干の違いがあります。
pipelines-scc.yaml スニペットの例
さらに、OpenShift Pipeline の一部として提供される Buildah クラスタータスクは、デフォルトのストレージドライバーとして vfs を使用します。
OpenShift Pipelines がパイプライン実行およびタスク実行用に作成する Pod のセキュリティーコンテキストを設定できます。次の変更を加えることができます。
- すべての Pod のデフォルトおよび最大 SCC を変更する
- 特定の namespace でのパイプライン実行およびタスク実行用に作成された Pod のデフォルト SCC を変更する
- カスタム SCC およびサービスアカウントを使用するように特定のパイプライン実行またはタスク実行を設定する
すべてのイメージを確実にビルドできるように buildah を実行する最も簡単な方法は、特権 SCC を使用して Pod 内で root として実行することです。より制限的なセキュリティー設定で buildah を実行する手順は、root 以外のユーザーとして Buildah を使用したコンテナーイメージのビルド を参照してください。
3.1. OpenShift Pipelines が作成する Pod のデフォルトおよび最大 SCC の設定 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Pipelines がタスク実行およびパイプライン実行用に作成するすべての Pod に対して、デフォルトの security context constraint (SCC) を設定できます。最大 SCC を設定することもできますが、これは、任意の namespace 内のこれらの Pod に対して設定できる最も制限の少ない SCC です。
手順
次のコマンドを入力して、
TektonConfigカスタムリソース (CR) を編集します。oc edit TektonConfig config
$ oc edit TektonConfig configCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次の例のように、仕様でデフォルトと最大の SCC を設定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
spec.platforms.openshift.scc.defaultは、OpenShift Pipelines がワークロードに使用されるサービスアカウント (SA) にアタッチするデフォルトの SCC (デフォルトではpipelineSA) を指定します。この SCC は、すべてのパイプライン実行 Pod とタスク実行 Pod に使用されます。- 2
spec.platforms.openshift.scc.maxAllowedは、任意の namespace のパイプライン実行 Pod およびタスク実行 Pod に対して設定できる最も制限の少ない SCC を指定します。この設定は、特定のパイプライン実行またはタスク実行でカスタム SA および SCC を設定する場合には適用されません。