Esecuzione di attività di sistema comuni per istanze database Amazon RDS for Db2 - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esecuzione di attività di sistema comuni per istanze database Amazon RDS for Db2

Puoi eseguire alcune attività comuni di amministratore del database relative al sistema sulle istanze DB di Amazon RDS che eseguono Db2. Per fornire un'esperienza di servizio gestito, Amazon RDS non fornisce accesso shell alle istanze database e limita l'accesso a certe procedure e tabelle di sistema che richiedono privilegi avanzati.

Creazione di un endpoint di database personalizzato

Quando esegui la migrazione ad Amazon RDS for Db2, puoi utilizzare URL di endpoint di database personalizzati per ridurre al minimo le modifiche all'applicazione. Ad esempio, se lo utilizzi db2.example.com come record DNS corrente, puoi aggiungerlo ad Amazon Route 53. In Route 53, puoi utilizzare zone ospitate private per mappare l'endpoint del database DNS corrente su un endpoint del database RDS for Db2. Per aggiungere un CNAME record A o un record personalizzato per un endpoint del database Amazon RDS, consulta Registrazione e gestione di domini utilizzando Amazon Route 53 nella Amazon Route 53 Developer Guide.

Nota

Se non riesci a trasferire il dominio su Route 53, puoi utilizzare il tuo provider DNS per creare un CNAME record per l'URL dell'endpoint del database RDS for Db2. Consulta la documentazione del tuo provider DNS.

Concessione e revoca dei privilegi

Gli utenti accedono ai database tramite l'appartenenza a gruppi collegati ai database.

Utilizza le seguenti procedure per concedere e revocare i privilegi per controllare l'accesso al database.

Queste procedure utilizzano l'IBM Db2 CLPesecuzione su un computer locale per connettersi a un'istanza DB RDS for Db2. Assicurati di catalogare il nodo TCPIP e il database per connetterti all'istanza DB RDS for Db2 in esecuzione sul tuo computer locale. Per ulteriori informazioni, consulta Connessione alla tua istanza database Amazon RDS for Db2 con IBM Db2 CLP.

Concedere a un utente l'accesso al database

Per concedere a un utente l'accesso al tuo database
  1. Connect al rdsadmin database utilizzando il nome utente principale e la password principale per l'istanza DB RDS for Db2. Nell'esempio seguente, sostituite master_username e master_password con le vostre informazioni.

    db2 connect to rdsadmin user master_username using master_password

    Questo comando produce un output simile all'esempio seguente:

    Database Connection Information Database server = DB2/LINUXX8664 11.5.8.0 SQL authorization ID = ADMIN Local database alias = RDSADMIN
  2. Aggiungi un utente alla tua lista di autorizzazioni chiamandordsadmin.add_user. Per ulteriori informazioni, consulta rdsadmin.add_user.

    db2 "call rdsadmin.add_user( 'username', 'password', 'group_name,group_name')"
  3. (Facoltativo) Aggiungi altri gruppi all'utente chiamandordsadmin.add_groups. Per ulteriori informazioni, consulta rdsadmin.add_groups.

    db2 "call rdsadmin.add_groups( 'username', 'group_name,group_name')"
  4. Conferma le autorità disponibili per l'utente. Nell'esempio seguente, sostituisci rds_database_alias, master_user e master_password con le tue informazioni. Inoltre, sostituisci il nome utente con il nome utente dell'utente.

    db2 terminate db2 connect to rds_database_alias user master_user using master_password db2 "SELECT SUBSTR(AUTHORITY,1,20) AUTHORITY, D_USER, D_GROUP, D_PUBLIC FROM TABLE (SYSPROC.AUTH_LIST_AUTHORITIES_FOR_AUTHID ('username', 'U') ) AS T ORDER BY AUTHORITY"

    Questo comando produce un output simile all'esempio seguente:

    AUTHORITY D_USER D_GROUP D_PUBLIC -------------------- ------ ------- -------- ACCESSCTRL N N N BINDADD N N N CONNECT N N N CREATETAB N N N CREATE_EXTERNAL_ROUT N N N CREATE_NOT_FENCED_RO N N N CREATE_SECURE_OBJECT N N N DATAACCESS N N N DBADM N N N EXPLAIN N N N IMPLICIT_SCHEMA N N N LOAD N N N QUIESCE_CONNECT N N N SECADM N N N SQLADM N N N SYSADM * N * SYSCTRL * N * SYSMAINT * N * SYSMON * N * WLMADM N N N
  5. Concedi l'RDS per i ruoli ROLE_NULLID_PACKAGES Db2 e ROLE_PROCEDURES al gruppo a cui hai aggiunto l'utente. ROLE_TABLESPACES Per ulteriori informazioni, consulta Ruoli predefiniti di Amazon RDS for Db2.

    Nota

    Creiamo RDS per istanze DB Db2 in modalità. RESTRICTIVE Pertanto, RDS for Db2 svolge i ruoli e ROLE_PROCEDURES concede ROLE_NULLID_PACKAGES i ROLE_TABLESPACES privilegi di esecuzione sui pacchetti per e. NULLID IBM Db2 CLP Dynamic SQL Questi ruoli concedono anche i privilegi utente sui tablespace.

    1. Connect al database Db2. Nell'esempio seguente, sostituisci database_name, master_user e master_password con le tue informazioni.

      db2 connect to database_name user master_user using master_password
    2. Assegna il ruolo a un gruppo. ROLE_NULLED_PACKAGES Nell'esempio seguente, sostituisci group_name con il nome del gruppo a cui desideri aggiungere il ruolo.

      db2 "grant role ROLE_NULLID_PACKAGES to group group_name"
    3. Assegnate il ruolo ROLE_TABLESPACES allo stesso gruppo. Nell'esempio seguente, sostituisci group_name con il nome del gruppo a cui desideri aggiungere il ruolo.

      db2 "grant role ROLE_TABLESPACES to group group_name"
    4. Assegnate il ruolo ROLE_PROCEDURES allo stesso gruppo. Nell'esempio seguente, sostituisci group_name con il nome del gruppo a cui desideri aggiungere il ruolo.

      db2 "grant role ROLE_PROCEDURES to group group_name"
  6. Concedi connectbindadd,createtab, e IMPLICIT_SCHEMA autorità al gruppo a cui hai aggiunto l'utente. Nell'esempio seguente, sostituisci group_name con il nome del secondo gruppo a cui hai aggiunto l'utente.

    db2 "grant usage on workload SYSDEFAULTUSERWORKLOAD to public" db2 "grant connect, bindadd, createtab, implicit_schema on database to group group_name"
  7. Ripeti i passaggi da 4 a 6 per ogni gruppo aggiuntivo a cui hai aggiunto l'utente.

  8. Verifica l'accesso dell'utente connettendoti come utente, creando una tabella, inserendo valori nella tabella e restituendo dati dalla tabella. Nell'esempio seguente, sostituisci rds_database_alias, nome utente e password con il nome del database e il nome utente e la password dell'utente.

    db2 connect to rds_database_alias user username using password db2 "create table t1(c1 int not null)" db2 "insert into t1 values (1),(2),(3),(4)" db2 "select * from t1"

Modifica della password di un utente

Per modificare la password di un utente
  1. Connect al rdsadmin database utilizzando il nome utente principale e la password principale per l'istanza DB RDS for Db2. Nell'esempio seguente, sostituite master_username e master_password con le vostre informazioni.

    db2 connect to rdsadmin user master_username using master_password
  2. Modificate la password chiamando. rdsadmin.change_password Per ulteriori informazioni, consulta rdsadmin.change_password.

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

Aggiungere gruppi a un utente

Per aggiungere gruppi a un utente
  1. Connect al rdsadmin database utilizzando il nome utente principale e la password principale per l'istanza DB RDS for Db2. Nell'esempio seguente, sostituite master_username e master_password con le vostre informazioni.

    db2 connect to rdsadmin user master_username using master_password
  2. Aggiungi gruppi a un utente chiamando. rdsadmin.add_groups Per ulteriori informazioni, consulta rdsadmin.add_groups.

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

Rimuovere gruppi da un utente

Per rimuovere gruppi da un utente
  1. Connect al rdsadmin database utilizzando il nome utente principale e la password principale per l'istanza DB RDS for Db2. Nell'esempio seguente, sostituite master_username e master_password con le vostre informazioni.

    db2 connect to rdsadmin user master_username using master_password
  2. Rimuovi i gruppi chiamando. rdsadmin.remove_groups Per ulteriori informazioni, consulta rdsadmin.remove_groups.

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

Rimuovere un utente

Per rimuovere un utente dall'elenco di autorizzazioni
  1. Connect al rdsadmin database utilizzando il nome utente principale e la password principale per l'istanza DB RDS for Db2. Nell'esempio seguente, sostituite master_username e master_password con le vostre informazioni.

    db2 connect to rdsadmin user master_username using master_password
  2. Rimuovi un utente dall'elenco di autorizzazioni chiamando. rdsadmin.remove_user Per ulteriori informazioni, consulta rdsadmin.remove_user.

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

Elencare gli utenti

Per elencare gli utenti in un elenco di autorizzazioni, richiama la rdsadmin.list_users stored procedure. Per ulteriori informazioni, consulta rdsadmin.list_users.

db2 "call rdsadmin.list_users()"

Creazione di un ruolo

È possibile utilizzare la rdsadmin.create_role stored procedure per creare un ruolo.

Per creare un ruolo
  1. Connect al rdsadmin database. Nell'esempio seguente, sostituisci master_username e master_password con le tue informazioni.

    db2 connect to rdsadmin user master_username using master_password
  2. Imposta Db2 per l'output del contenuto.

    db2 set serveroutput on
  3. Creare un ruolo. Per ulteriori informazioni, consulta rdsadmin.create_role.

    db2 "call rdsadmin.create_role( 'database_name', 'role_name')"
  4. Imposta Db2 in modo che non emetta contenuti.

    db2 set serveroutput off

Concessione di un ruolo

È possibile utilizzare la rdsadmin.grant_role stored procedure per assegnare un ruolo a un ruolo, utente o gruppo.

Per assegnare un ruolo
  1. Connect al rdsadmin database. Nell'esempio seguente, sostituisci master_username e master_password con le tue informazioni.

    db2 connect to rdsadmin user master_username using master_password
  2. Imposta Db2 per l'output del contenuto.

    db2 set serveroutput on
  3. Assegna un ruolo. Per ulteriori informazioni, consulta rdsadmin.grant_role.

    db2 "call rdsadmin.grant_role( 'database_name', 'role_name', 'grantee', 'admin_option')"
  4. Imposta Db2 in modo che non emetta contenuti.

    db2 set serveroutput off

Revoca di un ruolo

È possibile utilizzare la rdsadmin.revoke_role stored procedure per revocare un ruolo da un ruolo, un utente o un gruppo.

Per revocare un ruolo
  1. Connect al rdsadmin database. Nell'esempio seguente, sostituisci master_username e master_password con le tue informazioni.

    db2 connect to rdsadmin user master_username using master_password
  2. Revoca un ruolo. Per ulteriori informazioni, consulta rdsadmin.revoke_role.

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

Concessione dell'autorizzazione al database

L'utente principale, che dispone dell'DBADMautorizzazione, può concedere DBADM o DATAACCESS autorizzare un ruolo, un utente o un gruppo. ACCESSCTRL

Per concedere l'autorizzazione al database
  1. Connect al rdsadmin database utilizzando il nome utente principale e la password principale per l'istanza DB RDS for Db2. Nell'esempio seguente, sostituite master_username e master_password con le vostre informazioni.

    db2 connect to rdsadmin user master_username using master_password
  2. Concedi l'accesso a un utente chiamando. rdsadmin.dbadm_grant Per ulteriori informazioni, consulta rdsadmin.dbadm_grant.

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

Esempio di caso d'uso

La procedura seguente illustra come creare un ruolo, concedere DBADM l'autorizzazione al ruolo, assegnare il ruolo a un utente e concedere il ruolo a un gruppo.

  1. Connect al rdsadmin database utilizzando il nome utente principale e la password principale per l'istanza DB RDS for Db2. Nell'esempio seguente, sostituite master_username e master_password con le vostre informazioni.

    db2 connect to rdsadmin user master_username using master_password
  2. Create un ruolo chiamato PROD_ROLE per un database chiamato. TESTDB Per ulteriori informazioni, consulta rdsadmin.create_role.

    db2 "call rdsadmin.create_role( 'TESTDB', 'PROD_ROLE')"
  3. Assegna il ruolo a un utente chiamatoPROD_USER. PROD_USERViene concessa l'autorizzazione di amministratore per assegnare ruoli. Per ulteriori informazioni, consulta rdsadmin.grant_role.

    db2 "call rdsadmin.grant_role( ?, 'TESTDB', 'PROD_ROLE', 'USER PROD_USER', 'Y')"
  4. (Facoltativo) Fornisci autorizzazioni o privilegi aggiuntivi. L'esempio seguente concede DBADM l'autorizzazione a un ruolo denominato in base PROD_ROLE a un database chiamato. FUNDPROD Per ulteriori informazioni, consulta rdsadmin.dbadm_grant.

    db2 "call rdsadmin.dbadm_grant( ?, 'FUNDPROD', 'DBADM', 'ROLE PROD_ROLE')"
  5. Termina la sessione.

    db2 terminate
  6. Connect al TESTDB database utilizzando il nome utente principale e la password principale per l'istanza DB RDS for Db2. Nell'esempio seguente, sostituite master_username e master_password con le vostre informazioni.

    db2 connect to TESTDB user master_username using master_password
  7. Aggiungi altre autorizzazioni al ruolo.

    db2 "grant connect, implicit_schema on database to role PROD_ROLE"
  8. Assegna il ruolo PROD_ROLE a un gruppo.

    db2 "grant role PROD_ROLE to group PRODGRP"

Gli utenti che appartengono al gruppo PRODGRP possono ora eseguire azioni come la connessione al TESTDB database, la creazione di tabelle o la creazione di schemi.

Revoca dell'autorizzazione al database

L'utente principale, che dispone dell'DBADMautorizzazione, può revocare o revocare DBADM DATAACCESS l'autorizzazione a un ruolo, utente o gruppo. ACCESSCTRL

Per revocare l'autorizzazione del database
  1. Connect al rdsadmin database utilizzando il nome utente principale e la password principale per l'istanza DB RDS for Db2. Nell'esempio seguente, sostituite master_username e master_password con le vostre informazioni.

    db2 connect to rdsadmin user master_username using master_password
  2. Revoca l'accesso utente chiamando. rdsadmin.dbadm_revoke Per ulteriori informazioni, consulta rdsadmin.dbadm_revoke.

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

Collegamento all'istanza remota di RDS for Db2 DB

Da collegare all'istanza RDS per Db2 DB remota
  1. Esegui una sessione lato clientIBM Db2 CLP. Per informazioni sulla catalogazione dell'istanza e del database DB RDS for Db2, consulta. Connessione alla tua istanza database Amazon RDS for Db2 con IBM Db2 CLP Prendi nota del nome utente e della password principale per l'istanza DB RDS for Db2.

  2. Collegalo all'istanza DB RDS for Db2. Nell'esempio seguente, sostituite node_name, master_username e master_password con il nome del nodo TCPIP che avete catalogato e il nome utente e la password principali per l'istanza DB RDS for Db2.

    db2 attach to node_name user master_username using master_password

Dopo il collegamento all'istanza RDS for Db2 DB remota, è possibile eseguire i seguenti comandi e altri comandi. get snapshot Per ulteriori informazioni, vedete il GET SNAPSHOTcomando nella documentazione. IBM Db2

db2 list applications db2 get snapshot for all databases db2 get snapshot for database manager db2 get snapshot for all applications