在专用 Exadata 基础结构上将 Microsoft Active Directory 与 Autonomous Database 结合使用
您可以将 Autonomous Database on Dedicated Exadata Infrastructure 配置为对 Microsoft Active Directory 用户进行身份验证和授权。此配置允许 Active Directory 用户使用其 Active Directory 身份证明访问 an Autonomous Database 。
注意:
有关将 Azure Active Directory 与 Autonomous Database 结合使用的信息,请参阅将 Azure Active Directory (Azure AD) 与 Autonomous Database 一起使用。CMU 选项支持 Microsoft Active Directory 服务器,但不支持 Azure Active Directory 服务。Autonomous Database 与集中管理用户 (Centrally Managed Users,CMU) 的集成提供了与 Microsoft Active Directory 的集成。CMU with Active Directory 通过将 Oracle 数据库全局用户和全局角色映射到 Microsoft Active Directory 用户和组来工作。
在 Autonomous Database 上使用 Microsoft Active Directory 配置 CMU 的先决条件
配置从 Autonomous Database 到 Active Directory 的连接需要满足以下先决条件:
-
您必须已安装并配置 Microsoft Active Directory。有关详细信息,请参阅 AD DS 入门。
-
必须在 Active Directory 中创建 Oracle 服务目录用户。有关 Oracle 服务目录用户帐户的信息,请参阅《 Oracle Database 19c Security Guide 》或《 Oracle Database 23ai Security Guide 》中的步骤 1:Create an Oracle Service Directory User Account on Microsoft Active Directory and Grant Permissions 。
-
Active Directory 系统管理员必须在 Active Directory 服务器上安装 Oracle 密码过滤器,并使用 Active Directory 用户设置 Active Directory 组以满足您的要求。
对于 Autonomous Database ,CMU 仅支持密码验证,因此必须使用随附的实用程序
opwdintg.exe
在 Active Directory 上安装 Oracle 密码筛选器,扩展方案,以及为生成三种类型的密码验证器创建新的三个ORA_VFR
组。有关安装 Oracle 密码过滤器的信息,请参见Oracle Database 19c Security Guide 或Oracle Database 23ai Security Guide 中的 Step 2:For Password Authentication,Install the Password Filter and Extend the Microsoft Active Directory Schema 。 -
Active Directory 服务器必须可从 Autonomous Database 通过公共 Internet 访问,Active Directory 服务器的端口 636 必须对 Oracle Cloud Infrastructure 中的 Autonomous Database 打开,以便 Autonomous Database 可以通过 TLS/SSL 保护 LDAP 访问,通过 Internet 访问 Active Directory 服务器。
您还可以将内部部署 Active Directory 扩展到 Oracle Cloud Infrastructure ,在其中可以为内部部署 Active Directory 设置只读域控制器 (RODC)。然后,您可以在 Oracle Cloud Infrastructure 中使用这些 RODC 来验证和授权本地 Active Directory 用户访问 Autonomous Database 。
有关详细信息,请参阅在混合云中扩展 Active Directory 集成。
-
要为 Autonomous Database 配置 CMU,您需要使用 CMU 配置数据库 wallet
cwallet.sso
和 CMU 配置文件dsi.ora
:-
如果已为内部部署数据库配置 CMU,则可以从内部部署数据库服务器获取这些配置文件。
-
如果您尚未为内部部署数据库配置 CMU,则需要创建这些文件。然后,将配置文件上载到云以在 Autonomous Database 实例上配置 CMU。您可以通过为内部部署数据库配置 CMU 并验证 Active Directory 用户是否可以使用这些配置文件成功登录到内部部署数据库来验证 wallet 和
dsi.ora
。然后将这些配置文件上载到云,以便为 Autonomous Database 配置 CMU。
有关 CMU 的 wallet 文件的详细信息,请参阅:- Oracle Database 19c Security Guide 或 Oracle Database 23ai Security Guide 中的 Step 6:Create the Wallet for a Secure Connection
- Oracle Database 19c Security Guide 和 Oracle Database 23ai Security Guide 中的 Step 8:Verify the Oracle Wallet 。
有关 CMU 的
dsi.ora
文件的详细信息,请参阅 Creating the dsi.ora File in Oracle Database 19c Security Guide 或 Oracle Database 23ai Security Guide 。有关为 CMU 配置 Active Directory 以及为内部部署数据库排除 CMU 故障的详细信息,请参见 How To Configure Centrally Managed Users For Database Release 18c or Later Releases (Doc ID 2462012.1) 。
-
在 Autonomous Database 上使用 Microsoft Active Directory 配置 CMU
要为 CMU 配置 Autonomous Database 以连接到 Active Directory 服务器,请执行以下操作:
注意:
有关禁止从 Autonomous Database 访问 Active Directory 到 Active Directory 的说明,请参见 Disable Active Directory Access on Autonomous Database 。有关详细信息,请参阅Oracle Database 19c Security Guide 或 Oracle Database 19c Security Guide 中的 Configuring Centrally Managed Users with Microsoft Active Directory 。
在 Exadata Cloud@Customer 上使用 Microsoft Active Directory 配置 CMU
适用于: 仅适用于 Exadata Cloud@Customer
要在 Exadata Cloud@Customer 上为 CMU 配置 Autonomous Database 以连接到 Active Directory 服务器,而无需使用 Oracle Object Store 服务:
现在,您已将 CMU-AD 配置为在 Exadata Cloud@Customer 上的 Autonomous Database 中使用通过 Microsoft Active Directory 进行外部验证。
在 Autonomous Database 上添加 Microsoft Active Directory 角色
要添加 Active Directory 角色,请使用 CREATE ROLE
或 ALTER ROLE
语句将数据库全局角色映射到 Active Directory 组(并包括 IDENTIFIED GLOBALLY AS
子句)。
要在 Autonomous Database 上为 Active Directory 组添加全局角色:
有关使用 Microsoft Active Directory 配置角色的详细信息,请参阅 Oracle Database 19c Security Guide 或 Oracle Database 23ai Security Guide 中的 Configuring Authorization for Centrally Managed Users 。
在 Autonomous Database 上添加 Microsoft Active Directory 用户
要添加 Active Directory 用户以访问 an Autonomous Database ,请使用 CREATE USER
或 ALTER USER
语句(使用 IDENTIFIED GLOBALLY AS
子句)将数据库全局用户映射到 Active Directory 组或用户。
通过将 Microsoft Active Directory 用户和组直接映射到 Oracle 数据库全局用户和全局角色,可以将 Autonomous Database 与 Active Directory 集成。
要在 Autonomous Database 上为 Active Directory 组或用户添加全局用户:
有关使用 Microsoft Active Directory 配置角色的详细信息,请参阅 Oracle Database 19c Security Guide 或 Oracle Database 23ai Security Guide 中的 Configuring Authorization for Centrally Managed Users 。
使用 Active Directory 用户凭据连接到 Autonomous Database
ADMIN 用户完成 CMU Active Directory 配置步骤并创建全局角色和全局用户后,用户使用其 Active Directory 用户名和密码登录到 Autonomous Database 。
注意:
请勿使用全局用户名登录。全局用户名没有密码,并且与全局用户名连接不会成功。要登录到数据库,必须在 Autonomous Database 中设置全局用户映射。无法仅使用全局角色映射登录到数据库。在 Autonomous Database 上使用 Active Directory 配置 CMU 并设置具有全局角色和全局用户的 Active Directory 授权后,您可以使用 About Connecting to a Dedicated Autonomous Database 中所述的任何连接方法连接到 Autonomous Database 。连接时,如果要使用 Active Directory 用户,请使用 Active Directory 用户凭证。例如,以这种形式提供用户名 "AD_DOMAIN \AD_USERNAME "(必须包含双引号),并将 AD_USER_PASSWORD 用于密码。
使用 Autonomous Database 验证 Active Directory 用户连接信息
当用户使用其 Active Directory 用户名和密码登录到 Autonomous Database 时,您可以验证和审计用户活动。
例如,当用户 pfitch
登录时:
CONNECT "production\pfitch"/password@exampleadb_medium;
Active Directory 用户的登录用户名 (samAccountName) 为 pfitch
,widget_sales_group
为 Active Directory 组名,widget_sales
为 Autonomous Database 全局用户。
pfitch
登录到数据库后,命令 SHOW USER
显示全局用户名:
SHOW USER;
USER is "WIDGET_SALES"
以下命令显示 Active Directory 用户的 DN(标识名):
SELECT SYS_CONTEXT('USERENV', 'ENTERPRISE_IDENTITY') FROM DUAL;
例如,您可以验证此集中管理用户的企业身份:
SQL> SELECT SYS_CONTEXT('USERENV', 'ENTERPRISE_IDENTITY') FROM DUAL;
SYS_CONTEXT('USERENV','ENTERPRISE_IDENTITY')
----------------------------------------------------------------------
cn=Peter Fitch,ou=sales,dc=production,dc=examplecorp,dc=com
以下命令显示 "AD_DOMAIN\AD_USERNAME
":
SELECT SYS_CONTEXT('USERENV', 'AUTHENTICATED_IDENTITY') FROM DUAL;
例如,当用户登录到数据库时,将捕获并审计 Active Directory 验证的用户身份:
SQL> SELECT SYS_CONTEXT('USERENV', 'AUTHENTICATED_IDENTITY') FROM DUAL;
SYS_CONTEXT('USERENV','AUTHENTICATED_IDENTITY')
----------------------------------------------------------------------
production\pfitch
有关详细信息,请参阅 Oracle Database 19c Security Guide 或 Oracle Database 23ai Security Guide 中的 Verifying the Centrally Managed User Logon Information 。
在 Autonomous Database 上删除 Active Directory 用户和角色
要从 Autonomous Database 中删除 Active Directory 用户和角色,请使用标准数据库命令。这不会删除从已删除的数据库用户或角色映射的相关 Active Directory 用户或组。
要从 Autonomous Database 中删除用户或角色:
在 Autonomous Database 上禁用 Active Directory 访问
介绍从 Autonomous Database 中删除 CMU 配置的步骤(并禁用从 Autonomous Database 到 Active Directory 的 LDAP 访问)。
将 Autonomous Database 实例配置为访问 CMU Active Directory 后,您可以按如下方式禁用访问:
有关更多信息,请参见DISABLE_EXTERNAL_AUTHENTICATION Procedure 。
Autonomous Database 上 Microsoft Active Directory 的限制
以下限制适用于在 Autonomous Database 上使用 Active Directory 的 CMU:
-
带有 Autonomous Database 的 CMU 仅支持 "password authentication" 和 Kerberos。将 CMU 验证与 Autonomous Database 一起使用时,不支持其他验证方法,例如 Azure AD、OCI IAM 和 PKI。
-
具有 Autonomous Database 的 Active Directory 用户不支持 Oracle Application Express 和 Database Actions。