注意:

使用标记和 OCI 函数自动执行 OCI IAM 身份域用户功能管理

简介

作为一种安全优秀实践,客户希望禁用 Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) 用户未使用的功能。这有助于他们通过非标准凭据(例如 API 密钥、验证令牌等)避免任何攻击。

用户功能由管理员在用户的详细信息中进行管理。每个用户都可以查看其功能,但只有管理员可以启用或禁用它们。联盟用户可用的用户功能包括:

注:控制台密码功能对联合用户不可用。联合用户通过其身份提供者 (IdP) 对控制台进行验证,在控制台中管理其登录密码。

默认情况下,在预配新用户时会启用这些功能,从而允许用户为自己创建这些身份证明。有关这些用户身份证明的更多信息,请参见使用用户身份证明

此解决方案利用标记功能自动管理现有用户或新用户的功能。这种自动化有两种模式:

与 OCI 事件服务集成可确保根据创建时提供的标记为新用户正确管理功能。

目标

先决条件

任务 1:设置所需的策略和 OCI IAM 权限

此解决方案的每个组件都必须有权访问与之交互的 OCI 资源。要遵循本教程,需要以下权限。

有关详细策略的更多信息,请参见 Details for the Events ServiceDetails for Functions

任务 2:定义标记名称空间、标记键和标记值

标记是此解决方案的基础,因此所需的标记名称空间和标记键应就位。

任务 2.1:创建标记名称空间

  1. 转到 OCI 控制台,导航到监管和管理租户管理,然后单击标记名称空间

  2. 此时将显示当前区间中标记名称空间的列表。单击创建标记名称空间

  3. 创建标记名称空间页中,输入以下信息。

    • 在区间中创建:选择要创建名称空间定义的区间。
    • 名称空间定义名称:为此标记集输入唯一的名称。该名称在您的租户中必须是唯一的。标记名称空间不区分大小写。稍后无法更改此值。请避免输入机密信息。
    • 说明:输入友好说明。您可以在以后需要时更改此值。
  4. 单击创建标记名称空间

tag-namespace-creation

任务 2.2:创建标记键定义

  1. 标记名称空间页中,单击要将标记键定义添加到的标记名称空间。

  2. Tag Namespace Details(标记名称空间详细信息)页中,单击 Create Tag Key Definition(创建标记键定义)

  3. 创建标记键定义页中,输入以下信息。

    • 标记键:输入密钥。值应为以下值之一:api_keysconsole_passwordauth_tokenscustomer_secret_keysdb_credentialso_auth2_client_credentialssmtp_credentials
    • 说明:输入友好说明。
    • 成本跟踪:选择此项可启用此标记以进行成本跟踪。在租户中至多可以使用 10 个成本跟踪标记。
  4. 标记值类型中,选择值列表并在需要这些功能的中输入,否则将为用户禁用这些功能。

  5. 单击创建标记键定义

标记键创建

任务 2.3:向用户添加标记

  1. 将标记添加到现有用户。

    1. 转到 OCI 控制台,导航到身份和安全身份,然后单击

    2. 此时将显示当前区间中的域列表。选择域并单击用户。查找并单击要添加标记的用户。

    3. More Actions(更多操作)下拉菜单中,单击 Add Tags(添加标记)

    4. 添加标记页中,输入以下信息。

      • 选择标记名称空间
      • 选择标记密钥
      • 中,从列表中选择一个。
      • 要应用其他标记,请单击添加标记
    5. 添加完标记后,单击添加标记

  2. 添加到新用户。创建新用户时,从显示高级选项添加标记。

用户标记

注:为要启用的所有功能添加标记。

任务 3:开发和部署 OCI 函数

该函数将读取用户上的标记并对该功能执行操作。为此,它执行了以下操作:

从 GitHub 下载函数代码,自定义代码并部署它。

  1. 从以下位置下载 GitHub 系统信息库: iam-user-capability-management

  2. 请按照创建和部署 OCI 函数中所述的说明操作。

有关详细信息,请参阅创建函数

任务 4:在 OCI 资源调度程序中创建调度

  1. 转到 OCI 控制台,导航到监管和管理资源调度器,然后单击计划

  2. 单击创建调度

  3. Basic information(基本信息)中,输入 schedule name(计划名称)schedule description(计划说明)以及要作为 start 执行的操作,然后单击 Next(下一步)

  4. 资源中,选择函数区间和函数,然后单击下一步

  5. 调度中,选择每日并根据您的要求配置其他参数

    • 重复间隔:输入您希望调度运行的频率,或使用菜单选择间隔。最小值为 1。最大值为 99。

    • 开始时间:以 24 小时制格式输入以小时和分钟为单位的时间。

  6. 单击下一步并复核信息。单击创建调度

这将按调度的时间间隔运行函数。有关更多信息,请参阅创建计划

任务 5:在 OCI 事件服务中设置事件规则

  1. 转到 OCI 控制台,导航到观测和管理事件服务,然后单击规则

  2. 选择根区间,然后单击创建规则

  3. 输入显示名称说明

  4. 规则条件部分中,输入以下信息。

    • 条件:选择事件类型
    • Service Name(服务名称):选择 Identity(身份)
    • 事件类型:选择用户创建
  5. 操作部分中,输入以下信息。

    • 操作类型:选择函数
    • 选择 Function Application(函数应用程序)Function(函数)
  6. 单击创建规则

这将在创建新用户时调用函数。有关更多信息,请参阅创建事件规则

事件规则创建

注:为事件规则和函数应用程序启用日志将提供其他监视功能。

确认

更多学习资源

浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心