Identity and Access Management 常见问题解答

一般问题

什么是 Oracle Cloud Infrastructure Identity and Access Management (OCI IAM)?

OCI IAM 是一项原生 OCI 服务,可为企业级应用提供企业级身份和访问管理功能,如强大的自适应身份验证、用户生命周期管理 (LCM) 和单点登录 (SSO)。OCI IAM 以身份域的形式部署在 OCI 中。企业可通过这些域管理对 Oracle Cloud 服务(网络、计算、存储等)和 Oracle SaaS 应用的访问。客户也可以选择升级或创建额外的身份域来应对其他使用场景,如管理员工对非 Oracle 应用的访问,支持消费者访问面向客户的应用,或将 IAM 嵌入到定制开发应用中。

什么是身份域?

每个 OCI IAM 身份域都是一个独立的身份与访问管理解决方案,可用于应对多种 IAM 使用场景。例如,您可以使用 OCI IAM 身份域来管理员工对各种云端和本地部署应用的访问,启用安全身份验证、轻松管理权限以及为最终用户提供无缝 SSO。您还可以建立一个身份域,以支持业务合作伙伴访问供应链或订购系统,或使用身份域为面向消费者的应用启用 IAM,让消费者用户完成自行注册、使用社交登录和/或签署使用条款同意书。身份域是一种全面的身份即服务 (IDaaS) 解决方案,适用于多种 IAM 使用场景。

我应当选择哪种类型的身份域?

  • 免费身份域:每个 OCI 租户均包含一个免费的默认 OCI IAM 身份域,用于管理对 OCI 资源(网络、计算和存储等)的访问。如果您只希望管理对 OCI 资源的访问,则可以使用随附的默认域。该域提供一组强大的 IAM 功能来管理对 Oracle Cloud 资源的访问。客户可以根据安全模式和团队选择是否为 OCI 管理员保留此域。
  • Oracle Apps 身份域:许多 Oracle Cloud Applications(HCM、CRM、ERP、行业应用等)都可以通过 Oracle Apps 域使用 OCI IAM。此类身份域适用于订阅模式的 Oracle 应用,提供强大的 IAM 功能来管理对 Oracle Cloud 和 SaaS 服务的访问。客户可选择将所有员工添加到此域中,支持员工通过 SSO 方式访问 Oracle Cloud Applications 服务,也可以使用该域来管理对部分或全部 OCI 资源的访问。
  • Oracle Apps Premium 身份域:如果您希望通过一个具备完整企业功能的 Oracle 应用域来管理对非 SaaS 形式 Oracle 应用(如本地部署或托管在 OCI 中的 Oracle E-Business Suite 或 Oracle Database)的访问,Oracle Apps Premium 身份域可为您提供一整套 OCI IAM 特性和功能,适用于部署在混合云环境中的 Oracle 应用。该服务功能全面、成本低廉,但仅适用于 Oracle 应用。
  • 外部身份域:外部身份域可为非员工提供一整套 OCI IAM 特性和功能,包括支持客户访问零售网站、市民访问政府网站以及企业访问业务合作伙伴。该域没有适用应用限制,但不提供某些通常不适用于非员工场景的企业功能,如应用网关和供应桥。外部域可支持社交登录、自行注册、使用条款同意书和配置文件/密码管理。
  • 高级身份域:高级身份域提供一整套 OCI IAM 特性与功能,且没有适用应用限制。高级域可以用作企业 IAM 服务来管理员工或劳动力对云端和本地部署应用的访问,启用安全身份验证、轻松管理权限以及为最终用户提供无缝 SSO。

可以使用一个身份域应对员工和非员工使用场景吗?

否。出于许可目的,OCI IAM 将它们分别视为单独的用户群体。但您可以在同一 OCI IAM 服务中部署两个及两个以上的域来应对员工和非员工(合作伙伴、附属公司、消费者等)使用场景。您可以使用多个域来访问相同的应用,但非员工使用场景与员工使用场景的规则和安全策略通常有所差异。每个域都有自己的一组设置、配置和安全策略,这些设置、配置和安全策略对于该用户群体都是唯一的。这种设计可满足不同用户群的各种不同需求。

哪些人有权访问身份域?

每个 OCI 租户中都有一个管理员组,该组可对所有 OCI 资源授予完全访问权限。您必须了解,OCI 管理员组的所有成员均具备完全访问权限,负责管理 OCI IAM 身份域。因此,Oracle 建议您谨慎使用管理员组。管理员角色可以在每个域内授予管理权限,从而在各组之间实现职责分离。有关更多详细信息,请参阅了解管理员角色

OCI IAM 提供高可用性和/或灾难恢复功能吗?

每个 OCI 区域中都有多个可用性域 (AD) 或故障域 (FD)(在 AD 域中)。AD 和 FD 的功能相似,但 FD 的物理距离要比 AD 更加接近。为了提高可用性,身份域在每个区域 (AD/FD) 中部署了冗余安装。OCI IAM 身份域还通过利用高性能数据复制的主动-被动方法提供跨区域灾难恢复 (DR)。若出现整个 OCI 区域不可用的极端情况,这可以为身份域提供可靠的数据恢复。DR 通过单一 URL 提供,对应用保持透明。

Oracle Identity and Access Management 有哪些关键术语和概念?

IAM 的关键概念包括:

  • 账户或租户 — 注册 OCI 后,Oracle 将为您的企业创建一个租户,这是 OCI 中的一个隔离分区,您可以在其中创建、组织和管理云资源。有时称为 OCI 账户。
  • 隔间 — OCI 账户内的 Oracle Cloud 资源逻辑容器。账户管理员可以在 OCI 账户内创建一个或多个隔间,以组织和管理账户中的资源。例如,可使用隔间对不同类型的管理员(网络、计算、存储等)实施职责分离。
  • 根隔间 — OCI 账户内最高层级的隔间。设置账户后,系统即自动为您创建根隔间。
  • 身份域 — 身份域代表着 OCI 中的某个用户群体及相关配置和安全设置。每个账户都包括一个默认身份域,支持客户管理对 OCI 资源的访问。客户可以根据特定需求选择创建其他身份域。身份域创建于隔间内部,因此管理域的访问权限受到隔间权限限制。客户可以编写 OCI 访问策略来允许特定隔间/域中的用户访问其他隔间中的资源。
  • 用户 — 拥有可验证身份的实体。既包括真人用户,也包括机器人用户。在一个账户下,每个用户都拥有一个唯一的用户名和一个全局唯一的标识符。用户可通过密码访问 Web 控制台,或使用密钥,通过 API 访问服务。
  • — 即用户组。组可以简化访问管理,例如,您可以将软件开发人员纳入一个名为“开发者”的组中,方便他们读取和/或修改代码。请注意:一个用户可以同时隶属于多个组。
  • 策略 — 指定哪些人可以访问哪些 OCI 资源以及具有哪些权限的文档。策略由使用自然语言语法的策略声明构成。

Oracle Cloud Infrastructure Identity and Access Management 有何独特之处?

OCI IAM 支持您利用统一模型,对所有 Oracle Cloud 和 Cloud Application 服务进行身份验证和授权。从单人处理单一项目到多个小组同时处理多个项目的大型企业,无论企业规模大小,您都可以通过一个账户,以简化方式进行访问管理,在账户层面或隔间层面进行资源管理和授权,同时实施集中式审计和计费。全新构建的 OCI IAM 支持您实施最小特权安全原则,即默认禁止新用户对任何资源执行任何操作,由管理员按需要为每位用户仅授予相应的访问权限。

除了管理 OCI 资源,OCI IAM 还可为用户提供现成的企业级 IDaaS 解决方案。只需点击按钮,您即可部署强大的 IAM 解决方案,满足员工/劳动力、合作伙伴或消费者使用场景中的许多 IAM 要求。

Oracle Cloud Infrastructure 如何提供多因素身份验证支持?

OCI IAM 广泛支持多因素身份验证 (MFA),包括提供推送或一次性验证码选项的移动 MFA 应用,支持 FIDO2 验证器、SMS、电子邮件和电话等。OCI IAM 还提供情境感知自适应安全性,在降低风险的同时确保最终用户体验。自适应安全功能可评估用户的设备、网络、位置和历史行为,为用户会话创建风险评分。管理员可为特定应用或用户组配置不同的 MFA 策略。

Oracle IAM 是否会对用户、组、隔间和策略更改进行记录,以便调试和审计?

是的。为满足企业审计和合规性要求,Oracle IAM 将记录所有变更,而且您无需额外付费即可访问这些记录。

如何开始使用 OCI IAM?

OCI IAM 默认启用,无需额外付费,账户下的第一位用户即为默认管理员。您可以通过 IAM 服务创建所有后续用户,并明确授予他们与指定云资源进行交互的权限。

您可以通过控制台Rest APISDK 访问 Oracle IAM。

Oracle Cloud Infrastructure 用户如何重置密码?

重置 Oracle Cloud Infrastructure 访问密码前,请首先将您的账户关联至一个电子邮件地址。请访问您 Oracle Cloud Infrastructure 账户的用户资料页面,添加只有您拥有访问权限的电子邮件地址。然后,您将收到一封电子邮件,请您确认将该地址关联到您的账户。随后,您就可以使用该电子邮件账户重置密码 — 除非账户已被租户管理员禁用。

隔间

隔间可用于解决哪些问题?

隔间是账户下用于托管基础设施资源(例如计算、存储和网络)以及针对基础设施资源的一组访问管理策略的安全逻辑容器,支持您逻辑有序地组织云资源,以为各种用例提供支持。

以下是隔间的一些常见用法:

  • 隔离软件开发环境,从而简化管理。例如,您可以为开发、测试和生产环境提供单独的隔间,使用单独的隔间来进行蓝绿部署。
  • 简化权限管理。例如,您可以为网络资源(VCN、子网、互联网网关等)创建单独的,仅允许网络管理员访问的隔间。
  • 单独计量各个业务部门的用量,以便准确地对云资源使用进行计费。
  • 尽可能减少特定用户可见的资源集数量。例如,您可以单独为财务团队建立一个仅特定的一组员工可见的隔间。

一个隔间是否可以托管多个可用性域中的资源?

可以。隔间是一种与可用性域在物理结构上完全不同的资源逻辑分组,一个隔间可以托管多个可用性域中的资源。

如何通过隔间进行访问控制?

所有策略都会关联到根隔间或一个子隔间,而每个策略都包含符合一个或多个符合以下基本语法的策略声明:

Allow group to in compartment

您可以利用策略声明,使用隔间来简化权限管理,例如写入一个策略声明,允许 HRAdministrators 组管理 HRCompartment 隔间中的所有资源。

是否可以删除隔间?

是,您可以按需要删除隔间。

是否可以移动整个隔间树及其包含的资源?

是,您可以将整个隔间树及其包含的资源移至其他父隔间。

是否可以在不同隔间之间移动资源,例如计算实例或块存储卷?

是,您可以在不同隔间之间移动资源。

是否可以创建隔间层级结构?

是,您可以通过嵌套来创建隔间层级结构。利用层级或嵌套隔间,系统管理员可以组织资源,允许低层级的管理员进行同样的操作,同时获得全面的可见性和策略控制力。

隔间可以嵌套多少层?

隔间最多可嵌套 6 层。

更高层级的隔间的策略是否适用于子隔间?

是,子隔间将继承更高层级隔间的策略。

是否可以按隔间来跟踪成本和用量?

是,您可以在 My Services 中按隔间来跟踪成本和用量。

什么是根隔间?

对于每个账户,Oracle Cloud Infrastructure 将自动创建一个最高层级的隔间,即根隔间。与文件系统中的根文件夹非常类似,根隔间的工作方式与子隔间完全相同,但又具有一定的特殊性:

  • 由于权限具有层级结构特征,根隔间中的组权限将应用到所有子隔间。例如,如果为 NetworkAdmins 组授予了管理根隔间中虚拟云网络 (VCN) 的权限,则该组将能够管理所有隔间中的 VCN。
  • 目前,所有用户和组都需要在根隔间内创建,然后通过策略为他们授予对特定子隔间的访问权限。

注意:目前,您只能在根隔间中创建新隔间,而不能在其他隔间中创建。

何时应在根隔间中创建资源?何时应在子隔间中创建资源?

通常情况下,请在根隔间以外的其他隔间中创建资源。按照优秀实践,请在创建隔间和资源前首先设计隔间层级结构。

用户

Oracle Cloud Infrastructure 控制台用户可以进行哪些操作?

通过 OCI IAM 身份验证后,用户可获得足够的权限来使用或管理您账户中的资源。管理员可以在账户下创建一个或多个用户,然后将用户分配特定到组中,以便为他们授予访问特定隔间中资源的权限。

哪些人可以创建和管理用户?

您的账户供应有一个用户(即默认管理员),和一个组(Administrators 组),默认管理员用户是该组成员。Administrators 组拥有完全访问权限,默认管理员则可以按需创建新用户,或通过为其他用户授予权限来创建新用户。

新用户在被创建时拥有哪些访问权限?

默认情况下,新用户在被明确授予权限前,无权使用您账户下的任何资源或服务。这让您能够遵循最小特权安全原则,即仅向每个用户授予该用户所需的访问权限。您必须明确将用户添加到一个现有组中,或为用户创建一个新组,然后通过策略为该组分配适当的权限。

是否可以启用和禁用用户访问?

管理员可以停用或锁定用户以临时禁用其访问权限,也可以重置用户密码或删除密钥。

是否可以设置密码过期时间?如何轮换凭证?

是的。您可以使用密码策略为密码设置到期时间,还可以通过 REST API 和 SDK 自动重置密码、更改秘钥或编辑用户和组成员。

政策

什么是策略?

策略是一种由描述性策略声明组成的文档。其中,描述性策略声明采用易于理解的类似 SQL 的语法编写,可向用户组授予特定权限。使用策略,您可以为各类用户赋予相应权限(示例):

  • 系统管理员可以“终止”或“重启”裸机计算实例。
  • 网络管理员可以全面管理所有与网络相关的基础设施资源。
  • IT 管理员可以创建用户,编辑组成员资格

策略允许组以特定方式使用特定隔间中特定类型的资源,可以包含条件子句 ("where ...") ,进一步对策略声明加以限制。如需添加条件语句,请遵循以下语法:

Allow group to in compartment [where]

例如,以下策略声明将为用户/用户组授予计算实例使用权限:

Allow group Developers to use instances in compartment ProjectA

  • “group_name(组名称)”指被授予权限的组的名称。
  • “verbs(动词)”指对资源采取的操作,例如:检查、读取、使用或管理。
  • “resource-type(资源类型)”指组获得访问权限的云资源,包括:实例、卷和路由表。
  • “compartment_name(隔间名称)”指资源所在隔间的名称。
  • “conditions(条件)”指进一步定义策略声明的说明,例如“where request.user.id=target.user.id”或“where target.group_name != Administrators”。

有关更多信息,请参阅 Oracle Cloud Infrastructure 文档 OCI IAM 部分

子隔间是否会继承根隔间的策略?

是的。根隔间的策略将自动为其下所有子隔间授予相同的权限。例如,以下策略将为“InstanceAdmins”组中的所有用户授予根隔间及其下所有子隔间中的实例的管理权限:

Allow Group InstanceAdmins to manage instances in tenancy

可否限制一个策略仅对特定隔间有效?

可以。每个策略均与一个隔间“关联”,控制那些用户可以进行修改或删除操作。如果一个策略关联至根隔间,则任何有权管理根隔间策略的用户都可以更改或删除该策略,如果关联至其他隔间,则任何有权管理该隔间策略的用户都可以更改或删除该策略。在实际应用中,这意味着可以轻松为隔间管理员(即有权管理隔离区中的所有资源的组)授予管理其隔间策略的权限,有效避免了过度授权。

如何获取关于策略声明编写的更多信息?

有关策略和策略声明的更多信息,请参阅 Oracle Cloud Infrastructure 文档“策略快速入门”和“常用策略”部分。

团体

什么是组?

组是多个需要类似的访问权限以使用或管理您账户下特定资源的用户的集合。其中,一个用户可以同时隶属于多个组,并获得累加权限。例如,如果一个用户同时隶属于两个组,在第一个组中有权使用计算实例,在第二组中有权管理块存储卷,则该用户同时拥有实例和块存储卷管理权限。

管理员可以写入策略,为组(而不是单个用户)赋予对特定隔间或账户的必要访问权限,然后按需将用户添加到适当的组中。

一个账户下是否可以有多个管理员?

可以。在供应时,您的账户拥有一个默认管理员,隶属于根隔间中的 Administrators 组。Administrators 组不仅拥有创建和管理您账户下所有 Oracle Cloud Infrastructure 资源(包括用户、组、策略和隔间,以及任意隔间中的所有其他基础设施资源)的所有权限,还支持您添加其他用户。

特性

OCI IAM 如何解决密码到期问题?

您可以使用密码策略为密码设置到期时间。默认密码策略的密码到期时间为 120 天。该选项是可配置的,您可对用户子集应用不同的策略。

如何在不嵌入用户凭证的情况下在计算实例上运行任务?

使用动态资源组为组分配一组计算资源,然后利用策略分配该组权限。这可以让计算实例安全访问其他 OCI 资源,而无需将凭证嵌入到脚本中。

联合身份

Oracle Cloud Infrastructure 中的身份联合是什么?

身份联合是一种用于 Oracle Cloud Infrastructure 的租用的,将用户管理委派给其他身份提供程序 (IdP) 的机制,它支持企业使用其现有的身份系统,而不必另外创建和维护一组新用户。您只需在 Oracle Cloud Infrastructure 和身份提供程序之间进行一次配置(即联合信任),即可启用身份联合。

什么是联合用户?

联合用户(外部身份)指在 Oracle Cloud Infrastructure 外部(例如在您企业目录中)管理,但获得了您 Oracle Cloud Infrastructure 账户访问权限的用户,与您在 Oracle Cloud Infrastructure 账户中创建和维护的 Oracle Cloud Infrastructure 用户不同。

联合用户是否可以访问 Oracle Cloud Infrastructure 控制台?

可以。联合用户可以访问 Oracle Cloud Infrastructure 控制台。

联合用户是否可以访问 Oracle Cloud Infrastructure SDK 和 CLI?

可以。联合用户可以访问 Oracle Cloud Infrastructure SDK 和 CLI。

与 Oracle Cloud Infrastructure 用户相比,联合用户在控制台中无法执行哪些操作?

联合用户无法在 Oracle Cloud Infrastructure 控制台中更改或重置密码。

如何控制联合用户在登录控制台后可执行哪些操作?

您可以使用与管理本地用户相同的 Oracle Cloud Infrastructure 策略来管理联合用户,将身份提供程序中的角色和组映射至 Oracle Cloud Infrastructure 中的组。与本机用户一样,联合用户登录后,Oracle Cloud Infrastructure 控制台即根据其拥有的 Oracle Cloud Infrastructure 组成员身份来应用策略。更多信息,请参阅文档示例

身份提供程序中的一个角色或组可以映射至多个 Oracle Cloud Infrastructure 组,多个角色或组也可以映射至一个 Oracle Cloud Infrastructure 组。

最多可以为多少个联合用户授予 Oracle Cloud Infrastructure 控制台访问权限?

您可以为任意数量的联合用户授予控制台访问权限。

Oracle 支持哪些身份提供程序?

OCI IAM 支持任何符合 SAML 2.0、Open ID Connect 或 OAuth 标准的身份提供程序,包括 Oracle Access Manager、Microsoft Active Directory Federation Services (AD FS) 和 Okta 等主流解决方案。

多因素身份验证

什么是多因素身份验证 (MFA)?它为什么很重要?

过去,人们使用简单的用户名和密码来保护账户,但密码可能很难记住,而且相对容易遭受常见的网络攻击技术(如网络嗅探、网络钓鱼和暴力破解攻击)的攻击。如果有人窃取您的凭据,他们就可以冒充您并访问您的所有账户和资源。

多因素身份验证 (MFA) 是一项常用的安全功能,通过加强对应用程序用户身份的保护来帮助降低账户被盗的风险。MFA 要求用户提供多个验证因素。身份验证因素分为三类:您知道的(例如密码或 PIN)、您拥有的(例如安全令牌或手机)以及您当前的情况(例如指纹或面部扫描等生物识别数据)。启用 MFA 后,即使攻击者设法获得了您的密码,如果不提供 MFA 要求的其他证据,他们也无法以您的身份进行身份验证。这有助于防止未经授权的访问,并防止敏感信息被泄露或遭受不当操作。启用 MFA 还有助于满足监管合规要求并遵守行业标准,如美国国家标准与技术研究院 (NIST) 的标准。

谁应使用 MFA?

Oracle 建议为所有用户启用 MFA。您至少应该为具有管理权限(例如能够创建和管理 OCI 资源)的用户启用 MFA。您还应该要求启用 MFA 才能访问托管敏感信息或允许任何含高风险操作的应用。

当管理员启用 MFA 时,最终用户体验如何?

当管理员首次启用 MFA 时,系统将提示用户在下次登录时注册 MFA。首次注册后,用户将在随后每次访问的登录时收到 MFA 要求。如果管理员启用了可信设备,则用户可以选择“信任此设备”;如果用户再次使用同一设备,则不再需要 MFA。

如需了解更多信息,用户可以参考以下指南:

MFA 在所有情况下都是强制性的吗?

不是,MFA 并非在所有情况下都是严格强制执行的。例如,如果您授予对公共网站的访问权限,则通常不需要任何验证。如果您希望用户在购买时登录,以便您了解要向哪个账户收费以及将产品交付到哪里,那么也许用户名和密码就足够了。但是,如果同一用户要更改付款方式或交付地址,或者如果应用程序允许可能影响企业的操作,则建议使用 MFA。

Oracle 强烈建议您为所有云技术和应用管理员启用 MFA。最终,您应该根据企业的内部安全策略和风险评估来评估是否强制实施 MFA。但最好的做法是首先强制执行 MFA,并要求对任何希望将 MFA 设为可选的应用进行行政审批。

我可以使用哪些 MFA 因素?是否需要付费?

要充分了解可用因素和费用,首先必须了解您的 OCI 租户类型。要确定您的租户是否具有带或不带身份域的 OCI Identity and Access Management (IAM),请查看此文档

  • 如果您的租户具有带身份域的 OCI IAM ,则所有身份域类型都支持 MFA,无需额外付费。免费类型的身份域无法使用 SMS 作为身份验证因素,但可以使用其他因素。有关详细信息,请查看 OCI IAM(带身份域)MFA 文档
  • 如果您的租户具有不带身份域的 OCI IAM ,则您有两种 MFA 选项:
    • 通过 OCI IAM 服务为直接用户登录启用 MFA。此选项提供一组有限的验证因素,无需额外付费。有关详细信息,请查看 OCI IAM(不带身份域)MFA 文档
    • 利用 Oracle Identity Cloud Service (IDCS) 对 OCI 用户进行身份验证。此方法提供更多 MFA 功能和身份验证选项。
  • 如果您使用 IDCS 进行身份验证,则有两种许可证类型:
    • IDCS Foundation(免费层)仅支持免费访问 OCI 控制台的 MFA,并提供有限的身份验证因素集(如此处所述)。要保护其他应用,您需要升级到 IDCS Standard。
    • IDCS Standard 为任何受保护的服务或应用提供广泛的 MFA 选项,无需额外付费。有关详细信息,请查看 Identity Cloud Service (IDCS) MFA 文档

我在哪里可以详细了解有关如何实施 MFA 的信息?

实施 MFA 的具体说明因您拥有的 OCI 租户类型而异。要确定您的租户是否具有带或不带身份域的 OCI IAM,请查看此文档

  • 如果您的租户具有带身份域的 OCI IAM ,请参阅保护 OCI IAM 优秀实践 文档。
  • 如果您的租户具有不带身份域的 OCI IAM ,则您有两种 MFA 选项:
  • 如果您要使用 IDCS 对没有 OCI 租户的应用进行身份验证,请参阅为 IDCS 配置 MFA 文档。

如果我不实施 MFA,会发生什么情况?

如果您不实施 MFA,则目标账户被盗的风险会增加。反之,如果实施了 MFA,您的租户和/或其他身份验证流程将继续正常运行。

注:为免疑义,本网页所用以下术语专指以下含义:

  1. Oracle专指Oracle境外公司而非甲骨文中国。
  2. 相关Cloud或云术语均指代Oracle境外公司提供的云技术或其解决方案。