Procedimentos armazenados para conceder e revogar privilégios para o RDS para Db2 - Amazon Relational Database Service

Procedimentos armazenados para conceder e revogar privilégios para o RDS para Db2

Os procedimentos armazenados a seguir concedem e revogam privilégios para bancos de dados do Amazon RDS para Db2. Para executar esses procedimentos, o usuário principal deve primeiro se conectar ao banco de dados rdsadmin.

rdsadmin.create_role

Cria um perfil.

Sintaxe

db2 "call rdsadmin.create_role( 'database_name', 'role_name')"

Parâmetros

Os seguintes parâmetros são obrigatórios:

database_name

O nome do banco de dados no qual o comando será executado. O tipo de dados é varchar.

role_name

O nome do perfil que você deseja criar. O tipo de dados é varchar.

Observações de uso

Para ter informações sobre como conferir o status de criação de um perfil, consulte rdsadmin.get_task_status.

Exemplos

O exemplo a seguir cria um perfil denominado MY_ROLE para o banco de dados DB2DB.

db2 "call rdsadmin.create_role( 'DB2DB', 'MY_ROLE')"

rdsadmin.grant_role

Atribui um perfil a um perfil, um usuário ou um grupo.

Sintaxe

db2 "call rdsadmin.grant_role( ?, 'database_name', 'role_name', 'grantee', 'admin_option')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera o identificador exclusivo da tarefa. Esse parâmetro aceita apenas ?.

Os seguintes parâmetros de entrada são obrigatórios:

database_name

O nome do banco de dados no qual o comando será executado. O tipo de dados é varchar.

role_name

O nome do perfil que você deseja criar. O tipo de dados é varchar.

grantee

O perfil, o usuário ou o grupo para receber autorização. O tipo de dados é varchar. Valores válidos: ROLE, USER, GROUP, PUBLIC.

O formato deve ser um valor seguido pelo nome. Separe vários valores e nomes com vírgulas. Exemplo: “USER user1, user2, GROUP group1, group2” Substitua os nomes por suas próprias informações.

O seguinte parâmetro de entrada é opcional:

admin_option

Especifica se o beneficiário de ROLE tem autorização DBADM para atribuir perfis. O tipo de dados é char. O padrão é N.

Observações de uso

Para ter informações sobre como conferir o status de atribuição de um perfil, consulte rdsadmin.get_task_status.

Exemplos

O exemplo a seguir atribui um perfil chamado ROLE_TEST do banco de dados TESTDB ao perfil chamado role1, ao usuário chamado user1 e ao grupo chamado group1. O ROLE_TEST recebe autorização de administrador para atribuir perfis.

db2 "call rdsadmin.grant_role( ?, 'TESTDB', 'ROLE_TEST', 'ROLE role1, USER user1, GROUP group1', 'Y')"

O exemplo a seguir atribui um perfil chamado ROLE_TEST do banco de dados TESTDB a PUBLIC. ROLE_TEST não recebe autorização de administrador para atribuir perfis.

db2 "call rdsadmin.grant_role( ?, 'TESTDB', 'ROLE_TEST', 'PUBLIC')"

rdsadmin.revoke_role

Revoga um perfil de um perfil, um usuário ou um grupo.

Sintaxe

db2 "call rdsadmin.revoke_role( ?, 'database_name', 'role_name', 'grantee')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera o identificador exclusivo da tarefa. Esse parâmetro aceita apenas ?.

Os seguintes parâmetros de entrada são obrigatórios:

database_name

O nome do banco de dados no qual o comando será executado. O tipo de dados é varchar.

role_name

O nome do perfil que você deseja revogar. O tipo de dados é varchar.

grantee

O perfil, o usuário ou o grupo que perderá a autorização. O tipo de dados é varchar. Valores válidos: ROLE, USER, GROUP, PUBLIC.

O formato deve ser um valor seguido pelo nome. Separe vários valores e nomes com vírgulas. Exemplo: “USER user1, user2, GROUP group1, group2” Substitua os nomes por suas próprias informações.

Observações de uso

Para ter informações sobre como conferir o status de atribuição de um perfil, consulte rdsadmin.get_task_status.

Exemplos

O exemplo a seguir revoga um perfil chamado ROLE_TEST para o banco de dados TESTDB do perfil chamado role1, do usuário chamado user1 e do grupo chamado group1.

db2 "call rdsadmin.revoke_role( ?, 'TESTDB', 'ROLE_TEST', 'ROLE role1, USER user1, GROUP group1')"

O exemplo a seguir revoga um perfil denominado ROLE_TEST para o banco de dados TESTDB de PUBLIC.

db2 "call rdsadmin.revoke_role( ?, 'TESTDB', 'ROLE_TEST', 'PUBLIC')"

rdsadmin.add_user

Adiciona um usuário a uma lista de autorizações.

Sintaxe

db2 "call rdsadmin.add_user( 'username', 'password', 'group_name,group_name')"

Parâmetros

Os seguintes parâmetros são obrigatórios:

nome de usuário

O nome de um usuário. O tipo de dados é varchar.

password

A senha de um usuário. O tipo de dados é varchar.

O seguinte parâmetro é opcional:

nome_grupo

O nome de um grupo ao qual você deseja adicionar o usuário. O tipo de dados é varchar. O padrão é uma string vazia ou nula.

Observações de uso

É possível adicionar um usuário a um ou mais grupos separando os nomes dos grupos com vírgulas.

É possível criar um grupo ao criar um usuário ou ao adicionar um grupo a um usuário existente. Não é possível criar um grupo sozinho.

nota

O número máximo de usuários que você pode adicionar chamando rdsadmin.add_user é 5 mil.

Para ter informações sobre como conferir o status de adição de um usuário, consulte rdsadmin.get_task_status.

Exemplos

O exemplo a seguir cria um usuário chamado jorge_souza e o atribui aos grupos chamados sales e inside_sales.

db2 "call rdsadmin.add_user( 'jorge_souza', '*******', 'sales,inside_sales')"

rdsadmin.change_password

Altera a senha de um usuário.

Sintaxe

db2 "call rdsadmin.change_password( 'username', 'new_password')"

Parâmetros

Os seguintes parâmetros são obrigatórios:

nome de usuário

O nome de um usuário. O tipo de dados é varchar.

new_password

Uma nova senha para o usuário. O tipo de dados é varchar.

Observações de uso

Para ter informações sobre como verificar o status da alteração de uma senha, consulte rdsadmin.get_task_status.

Exemplos

O exemplo a seguir altera a senha de jorge_souza.

db2 "call rdsadmin.change_password( 'jorge_souza', '*******')"

rdsadmin.list_users

Lista os usuários em uma lista de autorizações.

Sintaxe

db2 "call rdsadmin.list_users()"

Observações de uso

Para ter informações sobre como conferir o status da lista de usuários, consulte rdsadmin.get_task_status.

rdsadmin.remove_user

Remove o usuário da lista de autorizações.

Sintaxe

db2 "call rdsadmin.remove_user('username')"

Parâmetros

O seguinte parâmetro é obrigatório:

nome de usuário

O nome de um usuário. O tipo de dados é varchar.

Observações de uso

Para ter informações sobre como conferir o status de remoção de um usuário, consulte rdsadmin.get_task_status.

Exemplos

O exemplo a seguir remove jorge_souza da possibilidade de acessar bancos de dados em instâncias de banco de dados do RDS para Db2.

db2 "call rdsadmin.remove_user('jorge_souza')"

rdsadmin.add_groups

Adiciona grupos a um usuário.

Sintaxe

db2 "call rdsadmin.add_groups( 'username', 'group_name,group_name')"

Parâmetros

Os seguintes parâmetros são obrigatórios:

nome de usuário

O nome de um usuário. O tipo de dados é varchar.

nome_grupo

O nome de um grupo ao qual você deseja adicionar o usuário. O tipo de dados é varchar. O padrão é uma string vazia.

Observações de uso

É possível adicionar um ou mais grupos a um usuário separando os nomes dos grupos com vírgulas. Para ter informações sobre como conferir o status de adição de grupos, consulte rdsadmin.get_task_status.

Exemplos

O exemplo a seguir adiciona os grupos direct_sales e b2b_sales ao usuário jorge_souza.

db2 "call rdsadmin.add_groups( 'jorge_souza', 'direct_sales,b2b_sales')"

rdsadmin.remove_groups

Remove grupos de um usuário.

Sintaxe

db2 "call rdsadmin.remove_groups( 'username', 'group_name,group_name')"

Parâmetros

Os seguintes parâmetros são obrigatórios:

nome de usuário

O nome de um usuário. O tipo de dados é varchar.

nome_grupo

O nome de um grupo do qual você deseja remover o usuário. O tipo de dados é varchar.

Observações de uso

É possível remover um ou mais grupos de um usuário separando os nomes dos grupos com vírgulas.

Para ter informações sobre como conferir o status de remoção de grupos, consulte rdsadmin.get_task_status.

Exemplos

O exemplo a seguir remove os grupos direct_sales e b2b_sales do usuário jorge_souza.

db2 "call rdsadmin.remove_groups( 'jorge_souza', 'direct_sales,b2b_sales')"

rdsadmin.dbadm_grant

Concede a autorização DBADM, ACCESSCTRL ou DATAACCESS a um perfil um usuário ou um grupo.

Sintaxe

db2 "call rdsadmin.dbadm_grant( ?, 'database_name', 'authorization', 'grantee')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera o identificador exclusivo da tarefa. Esse parâmetro aceita apenas ?.

Os seguintes parâmetros de entrada são obrigatórios:

database_name

O nome do banco de dados no qual o comando será executado. O tipo de dados é varchar.

autorização

O tipo de autorização a ser concedida. O tipo de dados é varchar. Valores válidos: DBADM, ACCESSCTRL, DATAACCESS.

Separe vários tipos com vírgulas.

grantee

O perfil, o usuário ou o grupo para receber autorização. O tipo de dados é varchar. Valores válidos: ROLE, USER, GROUP.

O formato deve ser um valor seguido pelo nome. Separe vários valores e nomes com vírgulas. Exemplo: “USER user1, user2, GROUP group1, group2” Substitua os nomes por suas próprias informações.

Observações de uso

Deve existir o perfil para receber acesso.

Para ter informações sobre como conferir o status de concessão de acesso de administrador de banco de dados, consulte rdsadmin.get_task_status.

Exemplos

O exemplo a seguir concede acesso de administrador ao banco de dados denominado TESTDB para o perfil ROLE_DBA.

db2 "call rdsadmin.dbadm_grant( ?, 'TESTDB', 'DBADM', 'ROLE ROLE_DBA')"

O exemplo a seguir concede acesso de administrador ao banco de dados denominado TESTDB para user1 e group1.

db2 "call rdsadmin.dbadm_grant( ?, 'TESTDB', 'DBADM', 'USER user1, GROUP group1')"

O exemplo a seguir concede acesso de administrador ao banco de dados denominado TESTDB para user1, user2, group1 e group2.

db2 "call rdsadmin.dbadm_grant( ?, 'TESTDB', 'DBADM', 'USER user1, user2, GROUP group1, group2')"

rdsadmin.dbadm_revoke

Revoga a autorização DBADM, ACCESSCTRL ou DATAACCESS de um perfil, um usuário ou um grupo.

Sintaxe

db2 "call rdsadmin.dbadm_revoke( ?, 'database_name', 'authorization', 'grantee')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

O identificador exclusivo da tarefa. Esse parâmetro aceita apenas ?.

Os seguintes parâmetros de entrada são obrigatórios:

database_name

O nome do banco de dados no qual o comando será executado. O tipo de dados é varchar.

autorização

O tipo de autorização a ser revogada. O tipo de dados é varchar. Valores válidos: DBADM, ACCESSCTRL, DATAACCESS.

Separe vários tipos com vírgulas.

grantee

O perfil, o usuário ou o grupo do qual revogar a autorização. O tipo de dados é varchar. Valores válidos: ROLE, USER, GROUP.

O formato deve ser um valor seguido pelo nome. Separe vários valores e nomes com vírgulas. Exemplo: “USER user1, user2, GROUP group1, group2” Substitua os nomes por suas próprias informações.

Observações de uso

Para ter informações sobre como conferir o status de revogação de acesso de administrador de banco de dados, consulte rdsadmin.get_task_status.

Exemplos

O exemplo a seguir revoga o acesso de administrador ao banco de dados denominado TESTDB para o perfil ROLE_DBA.

db2 "call rdsadmin.dbadm_revoke( ?, 'TESTDB', 'DBADM', 'ROLE ROLE_DBA')"

O exemplo a seguir revoga o acesso de administrador ao banco de dados denominado TESTDB para user1 e group1.

db2 "call rdsadmin.dbadm_revoke( ?, 'TESTDB', 'DBADM', 'USER user1, GROUP group1')"

O exemplo a seguir revoga o acesso de administrador ao banco de dados denominado TESTDB para user1, user2, group1 e group2.

db2 "call rdsadmin.dbadm_revoke( ?, 'TESTDB', 'DBADM', 'USER user1, user2, GROUP group1, group2')"