mcpField
D
dx-org-permission-set-assign

dx-org-permission-set-assign

github.com/forcedotcom安全1.1k5.8k 次安装1 天前更新
代码仓库

关于 dx-org-permission-set-assign

使用 `sf org assign permset` 为 Salesforce 组织用户分配权限集的技能,支持单项或批量分配、指定目标组织及指定用户,并以 JSON 输出结果。

主要功能

  1. 01分配一个或多个权限集
  2. 02指定目标组织
  3. 03分配给指定用户
  4. 04解析结构化 JSON 结果
  5. 05处理部分成功与失败

适用场景

  1. 01为默认管理员授予权限集
  2. 02为用户批量分配多个权限集
  3. 03向选定用户分配权限集
  4. 04检查混合成功与失败的结果

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/forcedotcom/sf-skills --skill dx-org-permission-set-assign

安装后在 Claude Code 中输入/dx-org-permission-set-assign确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

examples/
error_output.json
success_output.json
references/
cli_flags.md

详细介绍

dx-org-permission-set-assign

使用 sf org assign permset 为组织用户分配一个或多个权限集。支持所有情况:默认管理员用户、指定组织目标、多个权限集,以及为指定用户分配权限集。


工具限制

只能使用 Bash 工具执行 sf org assign permset。不要使用 MCP 工具(例如 assign_permission_set)——完全忽略它们。


范围

  • 范围内:通过 sf org assign permset 为用户分配权限集
  • 范围外:创建权限集(使用 platform-permission-set-generate)、列出权限集、检查用户权限

必需输入

根据用户的请求推断:

  • 权限集名称:从用户消息中提取(可以有多个)
  • 目标组织:除非提到特定别名/用户名,否则使用默认组织
  • 目标用户:默认使用组织的默认管理员用户;如果提到特定用户,则使用 --on-behalf-of

工作流

  1. 将用户请求与下表中的命令匹配
  2. 通过 Bash 工具执行:使用适当的标志和 --json 标志运行 sf org assign permset
  3. 返回结果

如果发生错误,请查看 JSON 输出中的 failures 数组,了解详细信息。

命令选择表
用户意图通过 Bash 工具执行
为默认管理员分配一个权限集sf org assign permset --name <PermSetName> --json
为默认管理员分配多个权限集sf org assign permset --name <PermSet1> --name <PermSet2> --json
分配到指定组织sf org assign permset --name <PermSetName> --target-org <alias> --json
为指定用户分配权限集sf org assign permset --name <PermSetName> --on-behalf-of <username1> --on-behalf-of <username2> --json
为指定用户分配多个权限集sf org assign permset --name <PermSet1> --name <PermSet2> --on-behalf-of <username1> --on-behalf-of <username2> --json

规则 / 限制

限制原因
始终使用 --json 标志提供结构化输出,便于可靠地解析和处理错误
权限集名称区分大小写使用组织中显示的准确 API 名称
可以在同一条命令中组合多个 --name 标志比按权限集分别运行命令更高效
多个 --on-behalf-of 标志可为多个用户分配权限集在单条命令中批量分配;按顺序处理,以避免身份验证文件冲突
使用 CLI 用户名别名,而非 Salesforce User.Alias 字段--target-org 和 --on-behalf-of 标志需要通过 sf alias set 设置的 CLI 别名,而不是 User 对象的 Alias 字段
重复分配具有幂等性重新分配已分配的权限集会静默成功
可能出现部分成功一次运行中命令可能同时返回成功和失败;只要存在失败,退出代码就非零

注意事项

问题解决方法
权限集名称包含空格用双引号括起:--name "Permission Set Name"
出现 "PermissionSet not found" 错误确认目标组织中存在该权限集;检查名称是否有拼写错误
分配成功,但用户看不到权限检查权限集元数据中的 <hasActivationRequired> —— 可能需要在 Setup 中手动激活
出现 "User not found" 错误目标组织中不存在该用户名/别名——使用 sf org display user --target-org <alias> 验证
部分成功(部分用户成功,其他用户失败)检查 JSON 输出——命令会返回 successes 和 failures 数组;只要发生任何失败,退出代码就会非零

输出预期

命令会返回包含状态代码和结果详情的 JSON 输出。

请参阅 examples/success_output.json 和 examples/error_output.json,了解响应结构。


参考文件索引

文件阅读时机
examples/success_output.json了解成功分配响应的结构
examples/error_output.json处理常见错误场景
references/cli_flags.md详细了解所有可用标志

评论

支持 Markdown