给新创建的Oracle数据库用户授予角色。

0

【以下的问题经过翻译处理】 大家好,

目前我正在研究aws rds oracle实例中角色的使用。根据我的研究,我不能简单地将DBA角色添加给一个新创建的用户,让他们与我一起管理实例。我的问题是,如何授予新创建的用户角色,以便他们具有与创建数据库的主用户相同的访问权限,或至少类似于其他SQL实例中的db_owner角色权限。

谢谢。

profile picture
EXPERTE
gefragt vor 8 Monaten52 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 当您创建Amazon RDS for Oracle数据库实例时,会创建默认的主用户,并授予该用户在一些限制下对DB实例的最大用户权限。

对于RDS Oracle,该用户具有以下特权和角色:

1-系统特权:ALTER DATABASE LINK、ALTER PUBLIC DATABASE LINK、DROP ANY DIRECTORY、EXEMPT ACCESS POLICY、EXEMPT IDENTITY POLICY、GRANT ANY OBJECT PRIVILEGE、RESTRICTED SESSION、EXEMPT REDACTION POLICY。

2-数据库角色:AQ_ADMINISTRATOR_ROLE、AQ_USER_ROLE、CONNECT、CTXAPP、DBA、EXECUTE_CATALOG_ROLE、RECOVERY_CATALOG_OWNER、RESOURCE、SELECT_CATALOG_ROLE。

如果您希望拥有具有相同特权的其他用户,则可以向新用户授予上述特权和角色。

SQL> GRANT ALTER DATABASE LINK, ALTER PUBLIC DATABASE LINK, DROP ANY DIRECTORY, EXEMPT ACCESS POLICY, EXEMPT IDENTITY POLICY, GRANT ANY OBJECT PRIVILEGE, RESTRICTED SESSION, EXEMPT REDACTION POLICY TO newuser;

此外,如果您希望向用户授予单个特权,可以使用以下命令:"rdsadmin.rdsadmin_util.grant_sys_object"。

begin
	rdsadmin.rdsadmin_util.grant_sys_object(
		p_obj_name  => '<OBJECT_NAME>',
		p_grantee   => '<USER>',
		p_privilege => '<PRIVILAGE>');
end;

有关主用户特权的详细信息,请参阅以下文档。

[+]主用户账户特权-https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.MasterAccounts.html

[+]授予SYS对象SELECT或EXECUTE特权-https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.System.html#Appendix.Oracle.CommonDBATasks.TransferPrivileges

[+]如何在我的Amazon RDS for Oracle DB实例中管理用户特权和角色?-https://repost.aws/knowledge-center/rds-oracle-user-privileges-roles

profile picture
EXPERTE
beantwortet vor 8 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen