クーバネティスポリシー UI コードヘルパー
概要
組織内のクーバネティスクラスターのアクセスポリシーを管理できます。クーバネティスポリシーは Policy as Code (PaC) として動作し、YAML フォーマットに基づいています。
右側にはポリシー UI コードヘルパーがあり、ユーザーが簡単にコードエディターにコンテンツを挿入できるようにモーダルを提供しています。
UI コードヘルパーの使用
コードエディター画面の右側には、各フィールドのコード入力を支援するモーダルが用意されています。このモーダルはコード編集を補助し、モーダル経由で挿入されたコンテンツはコードエディターから直接削除できます。

管理者 > クーバネティス > K8s アクセス制御 > ポリシー > リストの詳細 > Go to Editor Mode
リソースの追加
Spec: Allow と Spec: Deny セクションでも同じように動作します。
クラスター名でリソースを検索できます。
リソースをコードに挿入するには、目的のリソースの横にあるチェックボックスをオンにし、
Add
ボタンをクリックします。
サブジェクトの設定
Spec: Allow セクションでのみ動作します。
Kubernetes Groups: (必須) このフィールドを使用して、KubePie Proxy が API コールを実行するためになりすますクーバネティスグループを指定します。
Permitted Impersonation: (オプション) このフィールドを使用して、ユーザーが
--as
および--as-group
パラメータを使用してクライアントを介してなりすましを試みたときになりすましを許可するクーバネティスユーザー/グループをリストします。Allowed Kubernetes Users:
--as
パラメータを使用してなりすましを許可するクーバネティスユーザーをリストします。Allowed Kebernetes Groups:
as-group
パラメータを使用して、なりすましが許可されているクーバネティスグループをリストします。コンマ(
,
)を区切り文字として使用して、複数のエントリーを登録できます。
モーダルにはエディターから既存の情報が表示されます。
Set
ボタンをクリックすると、エディターの内容が変更内容で上書きされます。
アクションの追加
Spec: Allow と Spec: Deny セクションでも同じように動作します。
API Group: デフォルトは "*" ですが、管理者が変更できます。カンマ(
,
)で複数のエントリーを追加できます。Resources: クーバネティスリソースを指定します。
デフォルトは "*" ですが、管理者が変更できます。複数のエントリを追加できます。
よく使われるリソースは以下の通り:
pods
,pods/exec
,pods/log
,pods/portforward
,services
,ingresses
,deployments
,replicasets
、statefulsets
,daemonets
,configmaps
,secrets
,namespaces
,nodes
,persistentvolumes
,persistentvolumeclaims
,jobs
,cronjobs
,serviceaccounts
,endpoints
,roles
,rolebindings
,clusterroles
,clusterrolebinding
上記のリストにないリソースについては、直接入力してカスタムリソースを指定できます。
一度指定した項目はブロックとして表示され、"X" をクリックすることで削除できます。
Namespace: クーバネティスリソースのスコープを制限するための Namespace を指定します。
デフォルトは "*" ですが、管理者が変更できます。ワイルドカードと正規表現をサポートします。
Namespace スコープ外のリソースには、このフィールドの値は影響しません。
Namespace 以外のリソース: 例)
persistentvolumes
,persistentvolumeclaims
,serviceaccounts
,customresourcedefinitions
,endpoints
,node
,clusterroles
,clusterrolebindings
Name: 対象とするクーバネティスリソースの名前を指定します。
デフォルトは "*" ですが、管理者が変更できます。ワイルドカードと正規表現をサポートします。
Verbs: 複数のクーバネティス API メソッドを指定します。
デフォルトは "*"。一度指定すると、アイテムはブロックとして表示され、"X" をクリックすることで削除できます。
よく使われる Verbs は以下の通りです:
get
,list
,watch
,create
,update
,patch
,delete
,deletecollection
カスタムリソースに他の verbs を直接入力して指定することもできます。
Add
ボタンをクリックして、アクションリスト内のアクションセットを定義します。これはコードの追加操作として機能し、以前に追加したアクションをリセットすることなく新しいアクションを追加できます。
条件の設定
以下の項目はすべて任意です。
モーダルには、エディタから既存の情報が表示され、
Set
ボタンをクリックすると、エディタの内容が変更内容で上書きされます。Resource Tags(オプション)
対象のクーバネティスクラスターのスコープを、添付されたタグに基づいて制限できます。
各行は AND 条件として動作し、行内の値はカンマ(
,
)で区切られた OR 条件として動作します。新しい行を作成するには
Insert
ボタンをクリックします。タグはブロックとして表示され、"X" をクリックすることで削除できます。
フィールド
Key: タグキー(正規表現または glob はサポートしない)
Value : タグ値(正規表現、glob、複数入力をサポート)
User Attributes (オプション)
ユーザー属性に基づいて対象ユーザーの範囲を制限できます。
ポリシーを使用するには、ユーザーが指定されたすべての属性値に一致する必要があります。
各行は AND 条件として動作し、行内の値はカンマ (
,
) 区切りの OR 条件として動作します。変数名フィールドは、現在サポートされている属性を示します:
loginId
,firstName
,lastName
,middleName
,honorificPrefix
,honorificSuffix
,email
,title
,displayName
,nickName
,profileUrl
,secondEmail
,mobilePhone
,primaryPhone
,streetAddress
,city
,state
,zipCode
,countryCode
,postalAddress
,preferredLanguage
,locale
,timezone
,userType
,employeeNumber
,costCenter
,organization
,division
,department
,managerId
,manager
,endpoints
,staticIp
,macAddress
IP アドレス (オプション)
管理者は、リソースへのアクセスを許可または拒否する IP 範囲を指定できます。
カンマ(
,
)で区切られた単一 IP と CIDR 表記の両方をサポートします。