Conceder e revogar privilégios
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.
Tópicos
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” Substitua os nomes por suas próprias informações.user1,user2, GROUPgroup1,group2
O seguinte parâmetro de entrada é opcional:
admin_option-
Especifica se o beneficiário de
ROLEtem autorizaçãoDBADMpara 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” Substitua os nomes por suas próprias informações.user1,user2, GROUPgroup1,group2
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” Substitua os nomes por suas próprias informações.user1,user2, GROUPgroup1,group2
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” Substitua os nomes por suas próprias informações.user1,user2, GROUPgroup1,group2
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')"