管理包所有者

由将包发布到库的用户来定义 PowerShell 库中包的所有权。 有时需要在初始包发布之外管理此元数据,这意味着所有者元数据需要是可变的,而包本身不需要。

所有包所有者都是对等的。 这意味着任何包所有者都可发布包的新版本。 这还意味着任何包所有者都可以删除任何其他包所有者。 每个所有者的权利相同。

设置包的初始所有者

当新包发布到 PowerShell 库时,由发布包的用户定义初始所有者。 这根据 Publish-Module cmdlet 中使用谁的 API 密钥决定。

添加所有者

将包发布到 PowerShell 库后,可轻松邀请其他用户成为包的所有者。

  1. 使用包的当前所有者的帐户登录 PowerShell 库。
  2. 通过使用“项”选项卡、搜索或单击你的用户名,然后单击“管理我的包”,导航到包页面。
  3. 以包的所有者身份登录时,左侧有“管理所有者”链接可以单击。
  4. 输入要添加为所有者的人员的用户名,并单击“添加”。
  5. 随后将向新的共同所有者发送一封电子邮件,作为成为包的所有者的邀请。
  6. 该用户单击此链接后,将成为对包具有完全控制权的完全共同所有者,其控制权包括删除其他用户所有者身份的能力。

备注

新的所有者必须先确认所有权,否则不会将其列为包的所有者。 查看“管理所有者” 页面时,你将在当前所有者中看到“等待审批”条目。 可以删除该邀请;同样也可以删除其他所有者。 此邀请过程可防止用户错误地将其他用户添加为其包的所有者。

“Authors”元数据是完全自由文本;仅“Owners”受控。

删除所有者

如果包具有多个所有者而需删除其中之一,过程很简单:

  1. 使用包的当前所有者的帐户登录 PowerShell 库;
  2. 通过使用“包”选项卡、搜索或单击你的用户名,然后单击“管理我的包”,导航到包页面。
  3. 以包的所有者身份登录时,左侧有“管理所有者”链接可以单击;
  4. 单击要删除的所有者旁边的“删除”链接。

转移包所有权

我们有时会收到将包所有权从一个用户转移到另一个用户的支持请求,但你基本上总是可以自己完成该操作。 将所有权从一个用户转移到另一个用户只是以上两种功能的组合。

  1. 当前所有者邀请新用户成为共同所有者,新用户接受邀请;
  2. 新用户将旧用户从所有者列表中删除。

此请求有多种形式,但过程相同。

  • 包所有权从一个开发人员更改为另一个开发人员
  • 使用错误帐户意外发布了包

孤立的包

最后一种情况曾经出现,但次数不多。 包变得孤立,唯一的包所有者帐户不能用于添加新所有者。 以下是本场景的一些示例:

  • 所有者帐户与不再存在的电子邮件地址关联,且用户忘记其密码
  • 生成包的已注册所有者已离开公司,无法与其联系以更新包所有权
  • 由于存在仅影响少量包的 bug,包在库中无所有者

PowerShell 库管理员可以访问任何包的“管理所有者”链接。 如果你是包的合法所有者,而无法联系当前所有者以获取所有权,则可以使用库中的“报告滥用行为”链接与 PowerShell 库管理员联系。 然后,我们将按流程验证你对该包的所有权。 如果我们确定你应为该包的所有者,我们将使用该包的“管理所有者”链接,向你发送成为所有者的邀请。 我们将仅在验证你应为所有者后才执行此操作,此过程因具体情况而异。 通常,我们将使用包的项目 URL 设法联系项目所有者,但我们也可能使用 Twitter、电子邮件或其他方式联系项目所有者。