自动化与运维 aws-sagemakeraws-iamiam-rolecloud-deploymentaws-clipython

SageMaker 执行角色预检

在 SageMaker 部署或训练前发现并验证可用的 IAM 执行角色。

FollowSkills 评估 · FSRS-2.0
不推荐
41/ 100 五分制 2.1 / 5
信任安全7 / 25 · 1.4/5

文档要求先发现和验证角色,并说明 AWS 凭据继承及失败反馈;但创建脚本无明确用户确认、无回滚,默认附加 AmazonSageMakerFullAccess,明显违反最小权限,且最小权限模板仍包含 Resource 为 * 的 ECR 和 CloudWatch 权限,因此扣分。

可靠稳定8 / 20 · 2.0/5

两个 Python 脚本、参数、退出码和错误路径基本一致,且提供原生命令行回退;但信任策略仅做字符串包含检查,创建过程部分失败时不会清理已创建角色,未见针对关键路径的测试,静态评估不超过 10 分。

适用触发8 / 15 · 2.7/5

触发条件、输入形式、Windows 与 Unix 环境注意事项及 SSO 场景较清楚;但仅覆盖 SageMaker IAM 角色预检,未声明更多非适用边界,也未提供中文支持或中国大陆网络可达性说明,因此扣分。

规范维护8 / 15 · 2.7/5

目录包含 SKILL.md、脚本和 JSON 参考文件,说明了运行方式、权限和部分限制,并有 Apache-2.0 许可证及仓库 CI;但缺少技能自身的版本、变更记录、明确维护责任和更新路径,示例与故障排查覆盖有限。

有效结果6 / 15 · 2.0/5

发现并返回可用执行角色 ARN,或给出 SSO 解阻建议,能完成核心预检任务;但只验证存在性和信任关系,不验证实际权限,创建路径使用过宽策略且缺少确认与恢复,结果仍需人工审查。

证据核验4 / 10 · 2.0/5

源文件、参考策略和脚本逻辑可审计,仓库 CI 验证生成产物并检查版本变更;但没有覆盖该技能关键路径的提交测试或第三方执行证据,无法静态确认 AWS 行为,故不超过 5 分。

证据充分度: 评估于 2026年7月20日 审查版本 86cdeee824b7
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
使用前请注意
  • create_role.py 会附加 AmazonSageMakerFullAccess,执行前必须进行人工最小权限审查。
  • 脚本创建角色、附加托管策略和写入内联策略之间没有事务性回滚;中途失败可能留下部分配置。
  • 信任策略检查是字符串包含判断,不能严格确认 Principal、Action 或条件约束。
  • 该技能依赖本地 AWS CLI、有效凭据和可访问的 AWS 服务;未提供中国大陆网络可达性或中文操作支持说明。
查看完整评分方法 →

这个 Skill 能做什么,适合哪些场景?

该技能在创建 SageMaker 端点、模型、训练任务或其他需要执行角色的资源前,先检查角色是否存在且可被 SageMaker 承担。它优先验证用户提供的角色 ARN,再按最近使用时间发现现有角色,必要时才指导创建新角色。技能重点防止 SSO 身份缺少 IAM 写权限时盲目调用 iam:CreateRole。它适合已有 AWS CLI 身份配置、需要可靠 SageMaker 权限预检的部署流程。

运行 Python 辅助脚本检查指定角色或发现 SageMaker 命名模式的现有角色;根据最近使用时间排序,并回退到创建时间;验证角色存在以及信任策略是否允许 sagemaker.amazonaws.com 调用 sts:AssumeRole;成功时输出角色 ARN,失败时通过 stderr 说明原因;在没有可用角色且用户具备权限时调用创建角色脚本,并可将 S3 访问范围限定到模型桶;在 SSO 用户无法创建角色时,明确列出需要管理员提供的角色 ARN 或 IAM 权限。技能还提供使用 AWS CLI 手动执行同等预检的步骤。

  1. 正在部署 SageMaker 端点但没有提供执行角色 ARN 的开发者,需要先发现可用角色。
  2. 准备创建 SageMaker 模型或训练任务的机器学习工程师,希望避免部署脚本直接创建 IAM 角色。
  3. 使用 AWS SSO 且遇到 IAM AccessDenied 的用户,需要判断是缺少角色还是缺少创建权限。
  4. 账户中存在多个 SageMaker 角色的运维人员,希望优先选择最近使用、可能仍在维护的角色。
  5. 在 Windows PowerShell、macOS 或 Linux 上运行 AWS CLI 的用户,需要跨平台执行角色预检。

这个 Skill 有哪些优点和局限?

优点
  • 明确要求先发现和验证角色,再考虑创建。
  • 按最近使用时间选择角色,并在缺少 LastUsedDate 时按创建时间回退。
  • 验证 SageMaker 信任策略,能识别常见的执行角色配置问题。
  • Python 辅助脚本适用于 Windows、macOS 和 Linux,并提供 AWS CLI 手动回退方案。
  • 对 SSO 无 IAM 写权限的失败场景给出具体解锁路径。
局限
  • 不会深度检查角色权限,只验证角色存在和 SageMaker 信任策略。
  • 依赖本机 Python、AWS CLI、有效凭证链以及可用的 AWS 网络连接。
  • 源材料未提供测试套件、版本要求或独立安装包。
  • 角色创建仅在用户具备相应 IAM 权限时可行。

如何安装这个 Skill?

从 huggingface/skills 仓库的 skills/ 目录中复制或 symlink 整个 hf-cloud-sagemaker-iam-preflight 文件夹到 Codex 标准的 .agents/skills 位置,例如 $REPO_ROOT/.agents/skills 或 $HOME/.agents/skills。仓库 README 未提供该单个技能的独立安装命令。

如何使用这个 Skill?

在 AWS CLI 已能成功运行 aws sts get-caller-identity 的同一 shell 中运行:python3 scripts/check_role.py "<role-name-or-arn>" 验证指定角色,或运行 python3 scripts/check_role.py 发现现有角色。Windows PowerShell 使用 python scripts/check_role.py。可对编码代理提出:“在创建 SageMaker 训练任务前,使用 SageMaker IAM 预检技能检查并验证执行角色。”若没有可用角色且具备 IAM 权限,可运行 python3 scripts/create_role.py "<role-name>" "<model-bucket>";若使用 SSO 且无创建权限,应停止并请求 AWS 管理员提供角色 ARN或授予必要权限。

这个 Skill 与同类方案有什么区别?

与 Python 辅助脚本相比,技能提供的 Native AWS CLI equivalent 需要用户手动列出角色、读取信任策略并比较使用或创建时间;两者执行的是相同的预检逻辑。

常见问题

它会自动创建 IAM 角色吗?
只有在发现不到可用角色且用户具备 IAM 创建权限时,才建议运行 create_role.py;不会盲目调用 iam:CreateRole。
它会验证角色拥有全部 SageMaker 权限吗?
不会。它检查角色是否存在,以及信任策略是否允许 SageMaker 承担角色;具体权限问题留给部署时的错误信息定位。
SSO 用户没有可用执行角色时怎么办?
不要反复尝试其他 IAM 操作。应请求 AWS 管理员提供 SageMaker 执行角色 ARN,或授予 iam:CreateRole、iam:AttachRolePolicy 和 iam:PutRolePolicy。
Windows 上应如何运行?
在 AWS CLI 身份可用的 PowerShell 中直接运行 Python 脚本,不要通过 WSL、Git Bash 或其他 Bash shim 调用。

同仓库的其他 Skills

均来自 huggingface/skills

自动化与运维

AWS 云账户上下文发现

在 AWS 操作前准确识别本地配置、账户与身份。

自动化与运维

SageMaker Python 环境管家

为 SageMaker 与 AWS 任务创建隔离且版本正确的 Python 环境。

自动化与运维

SageMaker 生产部署默认配置

为 SageMaker 实时或异步端点自动配置弹性伸缩、CloudWatch 告警和资源标签。

开发与工程

Gradio 交互式应用构建技能

用 Python 快速构建 Gradio 网页界面、机器学习演示和聊天应用。

开发与工程

Hugging Face ZeroGPU 开发指南

帮助你构建可靠的 Gradio ZeroGPU AI 演示与 GPU 工作负载。

自动化与运维

SageMaker 模型部署规划器

为不同模型和流量需求选择合适的 AWS SageMaker 部署路径。

开发与工程

LoRA Space Demo Builder

为 Hugging Face LoRA 自动设计并发布定制化 Gradio 演示 Space。

开发与工程

Hugging Face Spaces 构建器

帮助智能体创建、部署和维护 Hugging Face Spaces 应用。

数据与分析

Hugging Face LLM 训练器

在 Hugging Face 云端 GPU 上训练、微调并保存模型。

自动化与运维

SageMaker 服务镜像选择器

为 Hugging Face 模型选择兼容的 SageMaker 服务容器,并获取当前区域的镜像 URI。

开发与工程

Hugging Face Hub CLI 技能

让智能体通过 hf 命令管理 Hugging Face Hub 上的模型、数据集、空间、作业与基础设施。

开发与工程

Hugging Face API 工具构建器

把 Hugging Face API 调用组合成可复用、可管道化的命令行工具。

数据与分析

Hugging Face 数据集探索助手

通过 Dataset Viewer API 探索、检索和提取 Hugging Face 数据集。

开发与工程

Hugging Face 论文研究助手

读取 AI 论文并提取 Hugging Face 论文页的结构化元数据。

数据与分析

TRL 大模型训练助手

用 TRL 命令行完成语言模型的监督微调、偏好对齐与强化学习训练。

数据与分析

Hugging Face 本地模型评测

在本地硬件上为 Hugging Face Hub 模型运行可控的 inspect-ai 或 lighteval 评测。

数据与分析

Sentence Transformers 训练助手

为检索、相似度与稀疏搜索训练 Sentence Transformers 模型。

数据与分析

Transformers.js 浏览器与 Node.js 推理技能

在 JavaScript 应用中直接运行 Hugging Face 模型。

数据与分析

Hugging Face 模型内存估算器

在不下载权重的情况下估算模型推理所需内存。

开发与工程

Hugging Face 本地模型运行器

帮助你从 Hugging Face 选择合适的 GGUF 量化模型,并用 llama.cpp 在本机运行。

相关 Skills