Compartir a través de

在权利管理中创建访问包

使用访问包可以一次性设置好用于在访问包的生命周期内自动管理访问权限的资源和策略。 本文介绍如何创建访问包。

概述

所有访问包必须位于称为“目录”的容器中。 目录定义可将哪些资源添加到访问包。 如果未指定目录,则访问包将会进入常规目录。 目前,无法将现有的访问包移到其他目录。

访问包可用于分配对目录中多个资源的角色的访问权限。 如果你是管理员或目录所有者,则可以在创建访问包时将资源添加到目录。 还可以在创建访问包后添加资源,分配给访问包的用户也将接收额外的资源。

如果你是访问包管理者,那么你无法将自己拥有的资源添加到目录。 你只能使用目录中提供的资源。 如果需要将资源添加到目录,可请求目录所有者。

所有访问包都必须至少有一个策略,用于将用户分配到访问包。 策略指定谁可以请求该访问包以及审批和生命周期设置,或者如何自动分配访问权限。 创建访问包时,可为目录中的用户、不在目录中的用户以及(仅限)管理员直接分配创建一个初始策略。

示例营销目录的图表,包括其资源和访问包。

下面是用初始策略创建访问包的概要步骤:

  1. 在 Identity Governance 中,启动创建访问包的过程。

  2. 选择要在其中放置访问包的目录,并确保它具有必要的资源。

  3. 将目录中资源的资源角色添加到访问包。

  4. 为可以请求访问权限的用户指定初始策略。

  5. 在该策略中指定审批设置和生命周期设置。

然后,创建访问包后,可以更改隐藏设置添加或移除资源角色,以及添加其他策略

启动创建过程

提示

本文中的步骤可能因开始使用的门户而略有不同。

  1. 至少以标识治理管理员身份登录到 Microsoft Entra 管理中心

    提示

    可以完成此任务的其他最低特权角色包括目录所有者或访问包管理器。

  2. 浏览到“标识治理”>“权利管理”>“访问包”。

  3. 选择“新建访问包”。

    屏幕截图显示用于在 Microsoft Entra 管理中心创建新访问包的按钮。

配置基本信息

在“基本信息”选项卡上指定访问包的名称,并指定要在哪个目录中创建该访问包。

  1. 输入访问包的显示名称和说明。 当用户提交访问包请求时,会看到此信息。

  2. 在“目录”下拉列表中,选择要在其中放置访问包的目录。 例如,你的某个目录所有者需要管理所有可请求的营销资源。 在这种情况下,你可以选择营销目录。

    你只会看到你有权在其中创建访问包的目录。 若要在现有目录中创建访问包,必须至少是 Identity Governance 管理员。 或者,你必须是该目录中的目录所有者或访问包管理员。

    屏幕截图显示新访问包的基本信息。

    如果你至少是 Identity Governance 管理员或目录创建者,想要在未列出的新目录中创建访问包,请选择“创建新目录”。 输入目录的名称和说明,然后选择“创建”。

    你正在创建的访问包以及其中包含的任何资源都将添加到新目录中。 稍后,可以添加更多目录所有者或向放入目录中的资源添加属性。 若要详细了解如何为特定目录资源和必备角色编辑属性列表,请参阅在目录中添加资源属性

  3. 选择“下一步: 资源角色”。

选择资源角色

在“资源角色”选项卡上,选择要包含在访问包中的资源。 请求并接收访问包的用户接收所有资源角色,例如访问包中的组成员资格。

如果不确定要包括哪些资源角色,则可以在创建访问包时跳过添加它们,然后稍后再添加它们

  1. 选择要添加的资源类型(“组和团队”、“应用程序”或“SharePoint 站点”)。

  2. 在出现的“选择应用程序”面板中,从列表中选择一个或多个资源。

    屏幕截图显示用于为新访问包中的资源角色选择应用程序的面板。

    如果在常规目录或新目录中创建访问包,则可以从你拥有的目录中选择任何资源。 必须至少是 Identity Governance 管理员或目录创建者。

    注意

    可以将动态成员资格组添加到目录和访问包。 但是,在管理访问包中的动态组资源时,只能选择所有者角色。

    如果在现有目录中创建访问包,则可以选择该目录中现有的任何资源,而无需成为该资源的所有者。

    如果你至少是 Identity Governance 管理员或目录所有者,可通过另外一个选项来选择你拥有或管理的但尚未在该目录中的资源。 如果选择目录 (directory) 中存在,但当前所选目录 (catalog) 中不存在的资源,则这些资源也会添加到该目录 (catalog),供其他目录 (catalog) 管理员用来生成访问包。 要查看目录 (directory) 中可添加到目录 (catalog) 的所有资源,请选择面板顶部的“全部查看”复选框。 如果只想选择目前位于所选目录中的资源,请让“全部查看”复选框处于清除状态(默认状态)。

  3. 在“角色”列表中,选择要将用户分配到的资源角色。 若要详细了解如何为资源选择适当的角色,请参阅如何确定要包含在访问包中的资源角色

    屏幕截图显示新访问包的资源角色选择。

  4. 选择“下一步: 请求”。

创建初始策略

在“请求”选项卡上,创建第一个策略来指定谁可以请求该访问包。 还可以配置该策略的审批设置。 稍后,使用此初始策略创建访问包后,可以添加更多策略,以允许其他用户组使用自己的审批设置请求访问包,或自动分配访问权限。

屏幕截图显示新访问包的“请求”选项卡。

根据你希望能够请求此访问包的用户,请执行以下部分之一中的步骤:允许你所在目录中的用户请求访问包允许不在你所在目录中的用户请求访问包仅允许管理员直接分配。 如果不确定需要哪些请求或审批设置,请计划为已有权访问基础资源的用户创建分配,或者计划使用访问包自动分配策略来自动处理访问权限,然后选择直接分配策略作为初始策略。

允许目录中的用户请求访问包

如果你希望目录中的用户可请求此访问包,请使用以下步骤。 定义请求策略时,可以指定单个用户,也可以指定用户组(通常做法)。 例如,组织可能已经有一个组(例如“所有员工”)。 如果将该组添加到可以请求访问权限的用户的策略中,则该组的任何成员都可以请求访问权限。

  1. 在“可以请求访问权限的用户”部分,选择“你目录中的用户”。

    选择此选项后,会出现新的选项,以便你可以优化目录中哪些用户可以请求此访问包。

    屏幕截图显示允许目录中的用户和组请求访问包的选项。

  2. 选择以下选项之一:

    选项 说明
    特定用户和组 如果只希望目录中的指定用户和组可以请求此访问包,请选择此选项。
    所有成员(不包括来宾) 如果希望目录中的所有成员用户都可以请求此访问包,请选择此选项。 此选项不包括你可能已邀请到目录中的任何来宾用户。
    所有用户(包括来宾) 如果希望目录中的所有成员用户和来宾用户都可以请求此访问包,请选择此选项。

    来宾用户是通过 Microsoft Entra B2B 被邀请进入目录的外部用户。 有关成员用户和来宾用户之间差异的详细信息,请参阅 Microsoft Entra ID 中的默认用户权限是什么?

  3. 如果已选择“特定用户和组”,请选择“添加用户和组”。

  4. 在“选择用户和组”窗格上,选择要添加的用户和组。

    屏幕截图显示用于为访问包选择用户和组的窗格。

  5. 选择“选择”以添加用户和组。

  6. 跳到“指定审批设置”部分。

允许不在目录中的用户请求访问包

其他 Microsoft Entra 目录或域中的用户可能尚未被邀请进入你的目录。 必须在“协作限制”中将 Microsoft Entra 目录配置为允许邀请。 有关详细信息,请参阅配置外部协作设置

将为不是目录中的其请求已审批或无需审批的用户创建来宾用户帐户。 将邀请来宾,但他们不会收到邀请电子邮件。 传递其访问包分配时,他们将收到电子邮件。 稍后,当该来宾用户由于上次分配已过期或被取消而不再拥有任何访问包分配时,该帐户将被阻止登录并随后被删除。 默认情况下,会进行阻止和删除。

如果希望无限期地在目录中保留来宾用户(即使他们没有任何访问包分配),可以更改权利管理配置的设置。 有关来宾用户对象的详细信息,请参阅Microsoft Entra B2B 协作用户的属性

如果要允许不在目录中的用户请求此访问包,请执行以下步骤:

  1. 在“可以请求访问权限的用户”部分,选择“不在你目录中的用户”。

    选择此选项时,将显示新选项。

    屏幕截图显示允许不在目录中的用户和组请求访问包的选项。

  2. 选择以下选项之一:

    选项 说明
    特定的已连接的组织 如果要从管理员之前添加的组织列表中选择,请选择此选项。 来自选定组织的所有用户都可以请求此访问包。
    所有已连接的组织 如果所有配置的已连接组织中的用户都可以请求此访问包,请选择此选项。
    所有用户(所有已连接的组织 + 任何新外部用户) 如果任何用户都可以请求此访问包,并且 B2B 允许列表或阻止列表设置应优先于任何新的外部用户,请选择此选项。

    连接的组织是与你有关系的外部 Microsoft Entra 目录或域。

  3. 如果选择了“特定的已连接的组织”,请选择“添加目录”,从管理员之前添加的已连接的组织列表中进行选择。

  4. 输入要搜索的之前已连接的组织的名称或域名。

    屏幕截图显示用于为访问包的请求选择目录的搜索框。

    如果要与之协作的组织不在列表中,则可以要求管理员将其添加为已连接的组织。 有关详细信息,请参阅添加已连接的组织

  5. 如果选择了“所有连接的组织”,则应确认当前配置和计划处于范围内的已连接组织列表

  6. 如果选择了“所有用户”,则需要在“审批”部分配置审批,因为此范围将允许 Internet 上的任何标识请求访问。

  7. 选择所有连接的组织后,选择“选择”。

    来自选定已连接的组织的所有用户都将可以请求此访问包。 这包括 Microsoft Entra 中来自与组织关联的所有子域的用户,除非 Azure B2B 允许列表或阻止列表阻止这些域。 如果指定社交标识提供者域(如 live.com),则社交标识提供者的任何用户都可以请求此访问包。 有关详细信息,请参阅允许或阻止向特定组织中的 B2B 用户发送邀请

  8. 跳到“指定审批设置”部分。

仅允许管理员直接分配

如果希望绕过访问请求,并允许管理员直接将特定用户分配到访问包,请执行这些步骤。 用户无需请求访问包。 仍可以设置生命周期设置,但没有请求设置。

  1. 在“可请求访问的用户”部分,选择“无(仅限管理员直接分配)”。

    屏幕截图显示只允许管理员直接分配访问包的选项。

    创建访问包后,可以直接将特定的内部和外部用户分配到该访问包。 如果指定外部用户,会在目录中创建来宾用户帐户。 有关直接分配用户的详细信息,请参阅查看、添加和删除访问包的分配

  2. 跳到启用请求部分。

指定审批设置

在“审批”部分中,指定用户请求此访问包时是否需要审批。 审批设置的工作方式如下:

  • 只有一个选定审批者或后备审批者需要批准单阶段审批的请求。
  • 每个阶段中只有一个选定审批者需要批准两阶段审批的请求。
  • 审批者可以是经理、用户的发起人、内部发起人或外部发起人,具体取决于策略的访问治理。
  • 单阶段或两阶段审批不需要每个选定审批者的批准。
  • 审批决定以第一个评审请求的审批者为准。

有关如何向请求策略添加审批者的演示,请观看以下视频:

有关如何向请求策略添加多阶段审批的演示,请观看以下视频:

请按照以下步骤指定请求访问包的审批设置:

  1. 若要要求对所选用户发起的请求进行审批,请将“需要审批”切换开关设置为“是”。 或者,若要自动审批请求,请将切换开关设置为“否”。 如果策略允许贵组织外部的外部用户请求访问,则应要求进行审批,以便监督谁被添加到贵组织的目录。

  2. 如果需要用户提供对请求访问包的论证,请将“需要请求者论证”切换开关设置为“是”。 。

  3. 确定请求是否需要单阶段或两阶段审批。 对于单阶段审批,将“阶段数”开关设置为 1,对于两阶段审批,将开关设置为 2,或者对于三阶段审批,将开关设置为 3

    屏幕截图显示访问包请求的审批设置。

选择阶段数后,使用以下步骤添加审批者。

单阶段审批

  1. 添加第一个审批者信息:

    • 如果策略设置为“适用于目录中的用户”,可以选择“管理员充当审批者”或“发起人充当审批者”。 或者,可以通过选择“选择特定审批者”,然后选择“添加审批者”来添加特定用户。

      若要将“发起人充当审批者”用于“审批”,必须具有 Microsoft Entra ID 治理许可证。 有关详细信息,请参阅比较 Microsoft Entra ID 的正式发布功能

      屏幕截图显示当策略设置为目录中的用户时第一个审批者的选项。

    • 如果此策略设置为“适用于不在目录中的用户”,可以选择“外部发起人”或“内部发起人”。 或者,可以通过选择“选择特定审批者”,然后选择“添加审批者”来添加特定用户。

      屏幕截图显示当策略设置为不在目录中的用户时第一个审批者的选项。

  2. 如果你选择了“管理员”作为第一位审批者,请选择“添加后备审批者”,以选择目录中的一个或多个用户或组作为后备审批者。 如果权利管理找不到请求访问权限的用户的管理员,后备审批者将收到请求。

    权利管理通过使用“管理员”属性查找管理员。 该特性位于 Microsoft Entra ID 的用户配置文件中。 有关详细信息,请参阅添加或更新用户的配置文件信息和设置

  3. 如果选择了“发起人”作为第一位审批者,请选择**“添加后备审批者”,以选择目录中的一个或多个用户或组作为后备审批者。 如果权利管理找不到请求访问权限的用户的发起人,后备审批者将收到请求。

    权利管理使用“发起人”属性查找发起人。 该特性位于 Microsoft Entra ID 的用户配置文件中。 有关详细信息,请参阅添加或更新用户的配置文件信息和设置

  4. 如果选择了“选择特定审批者”,请选择“添加审批者”以选择目录中的一个或多个用户或组作为审批者。

  5. 在“必须在几天内做出决定?”框中,指定审批者审核此访问包请求的天数。

    如果请求在这段时间内未获批准,会自动被拒绝。 然后,用户必须提交访问包的另一个请求。

  6. 如果需要审批者提供其决策论证,请将“需要审批者论证”设置为“”。

    其他审批者和请求者都可以看到该论证。

两阶段审批

如果选择了两阶段审批,需要添加第二位审批者:

  1. 添加第二个审批者信息:

    • 如果用户在目录中,可以选择“发起人充当审批者”。 或者,从下拉菜单中选择“选择特定审批者”后,选择“添加审批者”,以添加特定用户。

      屏幕截图显示当策略设置为目录中的用户时第二个审批者的选项。

    • 如果用户不在目录中,请选择“内部发起人”或“外部发起人”作为第二位审批者 。 选择审批者后,添加后备审批者。

      屏幕截图显示当策略设置为不在目录中的用户时第二个审批者的选项。

  2. 在“必须在几天内做出决定?”框中,指定第二位审批者必须审批请求的天数。

  3. 将“需要审批者论证”切换开关设置为“”或“”。

三阶段审批

如果选择了三阶段审批,需要添加第三位审批者:

  1. 添加第三个审批者信息:

    如果用户在目录中,请通过选择“选择特定审批者”>“添加审批者”将某个特定用户添加为第三个审批者。

    屏幕截图显示当策略设置为目录中的用户时第三个审批者的选项。

  2. 在“必须在几天内做出决定?”框中,指定第二位审批者必须审批请求的天数。

  3. 将“需要审批者论证”切换开关设置为“”或“”。

后备审批者

可以指定后备审批者,类似于指定可以审批请求的第一位和第二位审批者。 指定后备审批者有助于确保请求在到期(超时)之前被批准或拒绝。 针对两阶段审批,可以为后备审批者列出第一位审批者和第二位审批者。

指定后备审批者后,如果第一位或第二位审批者无法批准或拒绝请求,待处理的请求将转发给后备审批者。 请求将根据你在策略设置期间指定的转发计划进行发送。 审批者会收到一封批准或拒绝待处理请求的电子邮件。

请求被转发给后备审批者后,第一位或第二位审批者仍可批准或拒绝该请求。 后备审批者使用同一个“我的访问权限”网站来批准或拒绝待处理的请求。

可以列出要担任审批者和后备审批者的人员或组。 确保列出不同的人员集作为第一位、第二位和后备审批者。 例如,如果将 Alice 和 Bob 列为第一位审批者,则将 Carol 和 Dave 列为后备审批者。

通过以下步骤将后备审批者添加到访问包中:

  1. 在“第一个审批者”和/或“第二个审批者”下,选择“显示高级请求设置”。

    用于显示高级请求设置的选择屏幕截图。

  2. 将“若没有采取任何行动,转发给后备审批者们?”切换开关设置为“”。

  3. 选择“添加后备审批者”,然后从列表中选择后备审批者。

    屏幕截图显示高级请求设置,包括用于添加备用审批人的链接。

    如果选择“管理员”作为第一个审批者,“后备审批者”框中会显示一个额外选项:二级管理员充当备用审批者。 如果选择此选项,则需要添加后备审批者,以便在系统找不到二级管理员的情况下将请求转发给该审批者。

  4. 在“多少天后转发给后备审批者”框中,输入审批者批准或拒绝请求的允许天数。 如果在请求持续时间内没有审批者批准或拒绝请求,请求将过期(超时)。 然后,用户必须提交访问包的另一个请求。

请求只能在请求持续时间达到半衰期后的第二天转发给后备审批者。 主审批者的决定必须在至少四天后超时。 如果请求超时小于或等于三天,则没有足够的时间将请求转发给后备审批者。

在本例中,请求的持续时间为 14 天。 请求持续时间在第 7 天达到半衰期。 所以请求不能早于第 8 天转发。

此外,请求不能在请求持续时间的最后一天转发。 因此,在本例中,可以转发请求的最晚时间是第 13 天。

启用请求

  1. 如果希望访问包立即可供请求策略中的用户使用以进行请求,请将“启用新请求和分配”切换开关移动到“”。

    创建完访问包后,将来始终可以启用该策略。

    如果选择了“无(仅限管理员直接分配)”,并且将“启用新请求和分配”设置为“”,则管理员无法直接分配此访问包。

    此屏幕截图显示了用于启用新请求和分配的选项。

  2. 选择“下一步”。

将请求者信息添加到访问包

  1. 转到“请求者信息”选项卡,然后选择“问题”选项卡。

  2. 在“问题”框中,输入要向请求者提问的问题。 此问题也称为显示字符串。

  3. 如果要添加自己的本地化选项,请选择“添加本地化”。

    屏幕截图显示用于为请求者输入问题的框。

    在“添加问题的本地化文本”窗格上:

    1. 对于“语言代码”,为用于将问题本地化的语言选择语言代码。
    2. 在“本地化文本”框中,使用你配置的语言输入问题。
    3. 添加完所需的所有本地化后,选择“保存”。

    屏幕截图显示问题的本地化选择。

  4. 对于“答案格式”,请选择希望请求者应答的格式。 答案格式包括“短文本”、“多选”和“长文本”。

  5. 如果选择“多选”,请选择“编辑和本地化”按钮来配置答案选项。

    屏幕截图显示作为答案格式选择的多个选项,以及用于编辑和本地化答案选项的按钮。

    在“查看/编辑问题”窗格上:

    1. 在“答案值”框中,输入在请求者回答问题时要给出的响应选项。
    2. 在“语言”框中,选择响应选项的语言。 如果选择其他语言,可将响应选项本地化。
    3. 选择“保存” 。

    屏幕截图显示用于编辑和本地化多选答案的选项。

  6. 若要要求请求者在请求访问某个访问包时回答此问题,请选中“必需”复选框。

  7. 选择“属性”选项卡,查看与添加到访问包的资源相关联的属性。

    注意

    若要添加或更新访问包资源的属性,请转到“目录”并查找与访问包相关联的目录。 若要详细了解如何为特定目录资源和必备角色编辑属性列表,请参阅在目录中添加资源属性

  8. 选择“下一步”。

指定生命周期

在“生命周期”选项卡上,指定用户的访问包分配何时过期。 还可以指定是否允许用户将其分配延期。

  1. 在“过期时间”部分,将“访问包分配过期时间”设置为“按日期”、“天数”、“小时数”或“永不过期”。

    • 对于“日期”,请选择将来的过期日期。
    • 对于“天数”,请指定 0 到 3660 天的数字。
    • 对于“小时数”,请指定小时数。

    根据所做的选择,用户的访问包分配会在特定的日期过期、审批后经过特定天数后过期,或者永不过期。

  2. 如果希望用户为其访问请求一个特定的开始和结束日期,请为“用户可以请求特定的时间线”切换开关选择“”。

  3. 选择“显示高级过期设置”以显示更多设置。

    屏幕截图显示访问包的生命周期过期设置。

  4. 若要允许用户延期其分配,请将“允许用户延长访问期限”设置为“”。

    如果策略中允许延期,在将用户的访问包分配设置为过期之前的 14 天,然后过期之前的 1 天,先后向用户发送一封电子邮件。 电子邮件会提示用户延期分配。 用户在请求延期时必须仍在策略范围内。

    此外,如果策略有明确的分配结束日期,且用户提交将访问权限延期的请求,则请求中的延期日期不得迟于分配过期日期。 用于向用户授予访问包访问权限的策略定义延期日期是在分配到期日当日还是到期前。 例如,如果策略指示分配设置为在 6 月 30 日过期,则用户最多可以请求延期到 6 月 30 日。

    如果用户的访问延期,则用户将无法在指定的延期日期(在创建了策略的用户的时区中设置的日期)之后请求访问包。

  5. 如果要求在获批后才能延迟,则请将“要求获批才能延期”设置为“是”。

    此审批将使用你在“请求”选项卡上指定的相同审批设置。

  6. 选择“下一步”或“更新”。

查看并创建访问包

在“查看 + 创建”选项卡上,可以查看设置并检查是否存在任何验证错误。

  1. 查看访问包的设置。

    屏幕截图显示访问包配置的摘要。

  2. 选择“创建”以创建访问包及其初始策略。

    新访问包将显示在访问包列表中。

  3. 如果访问包对策略范围内的每个人都可见,请将访问包的隐藏设置保留为。 (可选)如果只想允许具有直接链接的用户请求访问包,请编辑访问包,将隐藏设置更改为。 然后复制请求访问包的链接,并将其与需要访问权限的用户共享。

  4. 接下来,可以向访问包添加更多策略配置职责分离检查直接分配用户

以编程方式创建访问包

可通过两种方法以编程方式创建访问包:通过 Microsoft Graph 或通过适用于 Microsoft Graph 的 PowerShell cmdlet。

使用 Microsoft Graph 创建访问包

可以使用 Microsoft Graph 创建访问包。 通过具有委托的 EntitlementManagement.ReadWrite.All 权限的应用程序,相应角色中的用户可以调用 API 来:

  1. 列出目录中的资源并为目录中尚未包含的任何资源创建 accessPackageResourceRequest
  2. 检索类别中每个资源的角色和范围。 然后,在接下来创建 resourceRoleScope 时将会使用此角色列表来选择角色。
  3. 创建访问包
  4. 为该访问包中所需的每个资源角色创建 resourceRoleScope
  5. 为该访问包中所需的每个策略创建 assignmentPolicy

使用 Microsoft PowerShell 创建访问包

还可以使用适用于 Identity Governance 的 Microsoft Graph PowerShell cmdlet 模块中的 cmdlet 在 PowerShell 中创建访问包。

首先,检索要包含在访问包中的类别的 ID,该类别中的资源及其范围和角色。 使用类似于以下示例的脚本:

Connect-MgGraph -Environment China -ClientId 'YOUR_CLIENT_ID' -TenantId 'YOUR_TENANT_ID' -Scopes "EntitlementManagement.ReadWrite.All"

$catalog = Get-MgEntitlementManagementCatalog -Filter "displayName eq 'Marketing'" -All
if ($catalog -eq $null) { throw "catalog not found" }
$rsc = Get-MgEntitlementManagementCatalogResource -AccessPackageCatalogId $catalog.id -Filter "originSystem eq 'AadApplication'" -ExpandProperty scopes
if ($rsc -eq $null) { throw "resource not found" }
$filt = "(id eq '" + $rsc.Id + "')"
$rrs = Get-MgEntitlementManagementCatalogResourceRole -AccessPackageCatalogId $catalog.id -Filter $filt -ExpandProperty roles,scopes

然后创建访问包:


$params = @{
    displayName = "sales reps"
    description = "outside sales representatives"
    catalog = @{
        id = $catalog.id
    }
}
$ap = New-MgEntitlementManagementAccessPackage -BodyParameter $params

创建访问包后,为其分配资源角色。 例如,如果希望将先前返回的资源的第一个资源角色作为新访问包的资源角色包含在内,可以使用如下所示的脚本:


$rparams = @{
    role = @{
        id =  $rrs.Roles[0].Id
        displayName =  $rrs.Roles[0].DisplayName
        description =  $rrs.Roles[0].Description
        originSystem =  $rrs.Roles[0].OriginSystem
        originId =  $rrs.Roles[0].OriginId
        resource = @{
            id = $rrs.Id
            originId = $rrs.OriginId
            originSystem = $rrs.OriginSystem
        }
    }
    scope = @{
        id = $rsc.Scopes[0].Id
        originId = $rsc.Scopes[0].OriginId
        originSystem = $rsc.Scopes[0].OriginSystem
    }
}

New-MgEntitlementManagementAccessPackageResourceRoleScope -AccessPackageId $ap.Id -BodyParameter $rparams

最后,创建策略。 在此策略中,只有管理员或访问包分配管理员才能分配访问权限,并且没有访问评审。 有关更多示例,请参阅通过 PowerShell 创建分配策略创建 assignmentPolicy



$pparams = @{
    displayName = "New Policy"
    description = "policy for assignment"
    allowedTargetScope = "notSpecified"
    specificAllowedTargets = @(
    )
    expiration = @{
        endDateTime = $null
        duration = $null
        type = "noExpiration"
    }
    requestorSettings = @{
        enableTargetsToSelfAddAccess = $false
        enableTargetsToSelfUpdateAccess = $false
        enableTargetsToSelfRemoveAccess = $false
        allowCustomAssignmentSchedule = $true
        enableOnBehalfRequestorsToAddAccess = $false
        enableOnBehalfRequestorsToUpdateAccess = $false
        enableOnBehalfRequestorsToRemoveAccess = $false
        onBehalfRequestors = @(
        )
    }
    requestApprovalSettings = @{
        isApprovalRequiredForAdd = $false
        isApprovalRequiredForUpdate = $false
        stages = @(
        )
    }
    accessPackage = @{
        id = $ap.Id
    }
}
New-MgEntitlementManagementAssignmentPolicy -BodyParameter $pparams

后续步骤