1.14 What's New
SIG Authが深く関連しているものはありませんでした。
Known Issues
SIG Authが深く関連しているものはありませんでした。
Urgent Upgrade Notes
- 1.14からはデフォルトのRBACポリシーで非認証ユーザに対して
kubectl auth can-i
で使われているようなdiscovery
およびpermission check
の権限を与えないようになりました。既存のクラスタからのバージョンアップでは影響ありませんが、新規クラスタにおいて以前と同様の権限が必要な場合には明示的に権限を与える必要があります。
$ kubectl create clusterrolebinding anonymous-discovery --clusterrole=system:discovery --group=system:unauthenticated
$ kubectl create clusterrolebinding anonymous-access-review --clusterrole=system:basic-user --group=system:unauthenticated
Urgent Upgrade Notes
SIG Authが深く関連しているものはありませんでした。
Notable Features
SIG Authが深く関連しているものはありませんでした。
Detailed Bug Fixes And Changes
-
kubectl can-i -list
コマンドが追加され、ユーザは特定のNamespaceにおいてどのような権限があるのか一覧できるようになりました。 (#64820)
$ kubectl auth can-i --list --namespace=test-namespace
Resources Non-Resource URLs Resource Names Verbs
--------- ----------------- -------------- -----
*.* [] [] [*]
[*] [] [*]
selfsubjectaccessreviews.authorization.k8s.io [] [] [create]
selfsubjectrulesreviews.authorization.k8s.io [] [] [create]
[/api/*] [] [get]
[/api] [] [get]
[/apis/*] [] [get]
[/apis] [] [get]
[/healthz] [] [get]
[/openapi/*] [] [get]
[/openapi] [] [get]
[/swagger-2.0.0.pb-v1] [] [get]
[/swagger.json] [] [get]
[/swaggerapi/*] [] [get]
[/swaggerapi] [] [get]
[/version/] [] [get]
[/version] [] [get]
-
RBACのRoleおよびClusterRoleの
rules
フィールドがオプショナルであることが正しく設定されました。 (#73250)
RoleやClusterRoleでのAggregationを利用している場合にはrulesフィールドが空になることがあります。これまでバリデーションの不具合により空の場合でも必ず長さ0のリストを指定する必要がありましたが、この修正により指定しなくてもよくなりました。
1.13以前でもapplyに成功。
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: monitoring
aggregationRule:
clusterRoleSelectors:
- matchLabels:
test: "true"
rules: []
1.13以前ではapplyに失敗。1.14以降は成功。
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: monitoring
aggregationRule:
clusterRoleSelectors:
- matchLabels:
kubernetes.io/cluster-service: "true"
-
system:kube-controller-manager
とsystem:kube-scheduler
はデフォルトのRBACポリシーによって認証(TokenReview)と認可(SubjectAccessReview)のチェックが可能になりました。 (#72491) (以前は同じ用途のRoleBindingが別途作られていた)
controller-manager:extension-apiserver-authentication-reader
やcontroller-manager:system:auth-delegator
- APIサーバがauthentication webhookからのエラーメッセージを正しく出力するように修正されました。 (#73595)
logやAPIサーバーのレスポンスにwebhookのエラーメッセージを含めることにセキュリティ的な懸念はないのか気にしている人がいましたが自分もそこは気になりました。
- 複数バージョンが定義されているCRDのリソースでのadmission webhook pluginの使用について正しく動作するように修正されました。 (#74154)