用途:在当前目录对应的 Microsoft App 上添加或移除用户访问权限,即共享(share)与取消共享(unshare),用于更新应用访问控制。
主要能力:通过 ms app share 和 ms app unshare 命令操作;CLI 会借助 Microsoft Graph 解析邮箱,无法解析的条目以警告形式返回,已解析条目的 RP 调用仍会成功。命令从 ms.config.json 读取应用 ID。
使用方式:先读取 memory-bank.md 获取应用 slug、GUID 与环境;确认处于 Microsoft App 工作区并检查认证状态:
test -f ms.config.json || { echo "Not in a Microsoft App workspace."; exit 1; } BIN=ms $BIN auth status
然后选择模式(默认 share),收集逗号分隔的邮箱列表(也接受 Object GUID,可混用),做基本格式校验后交由 ms 处理解析。执行前必须向用户展示将要运行的命令并等待明确确认,不得自动继续。
共享:$BIN app share "alice@contoso.com,bob@contoso.com" 取消共享:$BIN app unshare "alice@contoso.com,bob@contoso.com"
结果处理:CLI 返回含 partialFailure 与 warnings 的 JSON 信封。当 partialFailure 为 true 时,已解析用户的共享状态已更新,警告列出未解析条目(邮箱拼写错误、租户中不存在、Graph 找不到等)。应原样打印警告并询问是否用修正后的条目重试,不自动重试。
限制与边界:非零返回属于硬错误(认证、环境、应用不存在),应原样呈现并停止,不重试。不支持“share with everyone”这类语义,需用户给出明确列表。单邮箱、邮箱与 GUID 混用均按原样处理。
其他事实(如具体收费、平台支持范围)暂未提供。