google-cloud-platform - 如果基本身份验证已被弃用并且已在 GKE 1.19 及更高版本中删除,我如何向 k8s 提供程序 gke 进行身份验证?
问题描述
基本身份验证已弃用:https ://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster
我是这样的(与文档相同:https ://www.terraform.io/docs/providers/google/d/client_config.html ):
data "google_client_config" "default" {
}
data "google_container_cluster" "my_cluster" {
name = "my-cluster"
zone = "us-east1-a"
}
provider "kubernetes" {
load_config_file = false
host = "https://${data.google_container_cluster.my_cluster.endpoint}"
token = data.google_client_config.default.access_token
cluster_ca_certificate = base64decode(
data.google_container_cluster.my_cluster.master_auth[0].cluster_ca_certificate,
)
}
医生说:
CIS GKE 基准建议:6.8.1。确保使用静态密码的基本身份验证已禁用和 6.8.2。确保禁用使用客户端证书的身份验证
是cluster_ca_certificate
使用“客户端证书”还是不同?我想确保我正在做的事情(上面的 tf 片段)将继续得到 GKE 的支持,但我不清楚它现在实际上是如何工作的。
也许我已经在做正确的,不被弃用的方式?
解决方案
如果不是 K8S 方面的专家,我会说
token = data.google_client_config.default.access_token
是您访问 GKE API 的身份验证令牌
您加载的证书是用于强制与主服务器进行 TLS 通信的服务器证书。不是身份验证,只有 TLS over HTTP 加密。
推荐阅读
- javascript - 从某些外部资源修改 DDL 值时调用 DDL 的 Change 事件
- sql-server - SQL Server sysdiagrams 表在同一位置显示不一致
- python - lIndexError:列表分配索引超出范围
- mysql - 选择 SUM 达到 700 的记录
- ios - 模拟器中的 iOS MKMapSnapshotter 不起作用?
- r - 选择在数据框列表中重复的对
- ruby-on-rails - Carrierwave 如何重新处理原始文件
- amazon-s3 - Kentico 是否为媒体文件路径自动添加 CDN 端点 URL 前缀?
- selenium - 自动下载在 Firefox 中不起作用
- java - 在操作中使用静态变量