本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
Cromwell IAM Addon 是为Cromwell工作流管理系统设计的身份与访问管理插件,旨在通过集成身份验证、权限控制和安全访问策略,提升Cromwell在多用户协作环境中的安全性、合规性和可管理性。该镜像与Cromwell原生架构无缝集成,无需修改Cromwell核心代码即可实现访问控制增强。
docker run -d \ --name cromwell-iam-addon \ -p 8080:8080 \ -e CROMWELL_SERVER_URL="[***]" \ -e IAM_AUTH_PROVIDER="ldap" \ -e IAM_LDAP_URL="ldap://ldap-server:389" \ -e IAM_LDAP_BASE_DN="dc=example,dc=com" \ -v /path/to/iam-config:/etc/cromwell-iam/config \ -v /path/to/audit-logs:/var/log/cromwell-iam \ cromwell-iam-addon:latest
docker run -d \ --name cromwell-iam-addon \ -p 8080:8080 \ -e CROMWELL_SERVER_URL="[***]" \ -e IAM_AUTH_PROVIDER="oauth2" \ -e IAM_OAUTH2_CLIENT_ID="your-client-id" \ -e IAM_OAUTH2_CLIENT_SECRET="your-client-secret" \ -e IAM_OAUTH2_ISSUER_URL="[***]" \ -e IAM_OAUTH2_REDIRECT_URI="[***]" \ -v /path/to/oauth2-config:/etc/cromwell-iam/oauth2 \ cromwell-iam-addon:latest
| 环境变量名 | 描述 | 可选值/示例 | 默认值 |
|---|---|---|---|
CROMWELL_SERVER_URL | Cromwell服务器API地址 | [***] | 无(必填) |
IAM_AUTH_PROVIDER | 身份验证提供者 | ldap, oauth2, api_key | api_key |
IAM_PORT | 插件服务端口 | 8080, 9090 | 8080 |
IAM_LOG_LEVEL | 日志级别 | DEBUG, INFO, WARN | INFO |
IAM_CONFIG_PATH | 配置文件路径(容器内) | /etc/cromwell-iam/config | /config |
IAM_AUDIT_LOG_PATH | 审计日志存储路径(容器内) | /var/log/cromwell-iam | /logs |
插件支持通过配置文件(config.yaml)自定义权限规则和认证细节,示例配置如下:
# 权限规则配置 permissions: roles: - name: "admin" permissions: ["workflow:create", "workflow:delete", "task:manage", "user:manage"] - name: "user" permissions: ["workflow:create", "workflow:read", "task:read"] - name: "viewer" permissions: ["workflow:read", "task:read"] user_roles: - user: "***" roles: ["admin"] - user_group: "research_team" roles: ["user"] # LDAP认证配置(当IAM_AUTH_PROVIDER=ldap时生效) ldap: user_search_base: "ou=users" user_filter: "(uid={username})" group_search_base: "ou=groups" group_filter: "(member={user_dn})" # API Key认证配置(当IAM_AUTH_PROVIDER=api_key时生效) api_key: key_file: "/etc/cromwell-iam/api-keys.json" # 存储API Key的JSON文件路径 header_name: "X-Cromwell-IAM-Key" # 客户端请求头中的API Key字段名
配置Cromwell使用IAM插件:修改Cromwell配置文件(application.conf),添加API拦截器:
cromwell { services { api { interceptors = [ { class = "com.example.cromwell.iam.IamApiInterceptor" config { iamServerUrl = "[***]" } } ] } } }
重启Cromwell服务:使配置生效
验证集成:通过Cromwell CLI或API提交请求,验证权限控制是否生效
为确保配置和审计日志不丢失,建议挂载以下目录:
-v /host/path/to/config:/etc/cromwell-iam/config-v /host/path/to/logs:/var/log/cromwell-iam-v /host/path/to/api-keys.json:/etc/cromwell-iam/api-keys.jsonIAM_INIT_ADMIN_USER指定)免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429