cyberark/conjur-authn-k8s-client此镜像用作认证边车容器,允许Pod中的应用容器获取Conjur访问令牌。应用可使用该访问令牌调用Conjur服务。
该镜像作为边车或初始化容器运行,负责向Conjur认证并将Conjur访问令牌写入/run/conjur/access-token。此访问令牌通过卷挂载与Pod的应用容器共享。
完整文档:
GitHub项目:[***]
边车容器的配置通过环境变量应用。
| 变量 | 描述 | 示例 |
|---|---|---|
| CONJUR_ACCOUNT | Conjur账户名 | acmeco |
| CONJUR_AUTHN_URL | 指向authn-k8s端点的URL | [***] |
| CONJUR_AUTHN_LOGIN | Conjur主机身份 | namespace01/deployment/myapp |
| CONJUR_SSL_CERTIFICATE | Conjur连接的公共SSL证书内容 | -----BEGIN CERTIFICATE-----... |
| MY_POD_NAME | Pod名称(参见Downward API) | metadata.name |
| MY_POD_NAMESPACE | Pod命名空间(参见Downward API) | metadata.namespace |
| CONTAINER_MODE | (可选)容器运行模式(边车或初始化容器)。默认值为'sidecar';允许值为'sidecar'或'init'。设为"init"时,容器将在完成认证并写入访问令牌后退出 | init |
| CONJUR_VERSION | (可选)Conjur版本。默认值为'5';允许值为'4'或'5'。仅Conjur企业版v4.x使用'4'。由于YAML解析问题,清单中必须使用字符串值 | 5 |
注意:在此示例中,必须加载名为conjur/authn-k8s/gke-prod的Conjur策略,并允许主机namespace01/deployment/myappread对该策略中定义的Web服务拥有execute权限。详细信息请参考文档。
路径/run/conjur应作为共享卷挂载在应用容器和边车容器之间。应用容器只需读权限。
文件/run/conjur/access-token可被summon-conjur直接读取,作为环境变量CONJUR_AUTHN_TOKEN_FILE。
文件内容也可通过Conjur Ruby API客户端读取,如下所示:
require 'conjur-api' Conjur.configuration.apply_cert_config! token = JSON.parse(File.read("/run/conjur/access-token")) api = Conjur::API.new_from_token(token) puts api.variable("inventory-db/password").value
此边车容器将每5分钟刷新一次令牌。
使用Conjur认证令牌时,无需指定用户或主机身份。



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务