RDS for Db2에 대한 권한 부여 및 취소를 위한 저장된 프로시저 - Amazon Relational Database Service

RDS for Db2에 대한 권한 부여 및 취소를 위한 저장된 프로시저

다음 저장 프로시저는 Amazon RDS for Db2 데이터베이스에 대한 권한을 부여하고 취소합니다. 이 프로시저를 실행하려면 마스터 사용자가 먼저 rdsadmin 데이터베이스에 연결되어야 합니다.

rdsadmin.create_role

역할을 생성합니다.

구문

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

파라미터

다음 파라미터는 필수 파라미터입니다.

database_name

명령이 실행될 데이터베이스의 이름입니다. 데이터 형식은 varchar입니다.

role_name

생성할 역할의 이름입니다. 데이터 형식은 varchar입니다.

사용 노트

역할 생성 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

예시

다음 예제에서는 DB2DB 데이터베이스에 대해 MY_ROLE 역할을 생성합니다.

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

rdsadmin.grant_role

역할, 사용자 또는 그룹에 역할을 할당합니다.

구문

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

파라미터

다음 출력 파라미터는 필수입니다.

?

작업의 고유 식별자를 출력하는 파라미터 마커입니다. 이 파라미터는 ?만 허용합니다.

다음 입력 파라미터는 필수입니다.

database_name

명령이 실행될 데이터베이스의 이름입니다. 데이터 형식은 varchar입니다.

role_name

생성할 역할의 이름입니다. 데이터 형식은 varchar입니다.

grantee

권한을 받을 역할, 사용자 또는 그룹입니다. 데이터 형식은 varchar입니다. 유효한 값: ROLE, USER, GROUP, PUBLIC.

형식은 값 뒤에 이름이 와야 합니다. 값과 이름이 여러 개인 경우 쉼표로 구분합니다. 예: 'USER user1, user2, GROUP group1, group2'. 이름을 사용자의 정보로 대체합니다.

다음 입력 파라미터는 선택 사항입니다.

admin_option

피부여자 ROLE에 역할을 할당할 DBADM 권한이 있는지 여부를 지정합니다. 데이터 형식은 char입니다. 기본값은 N입니다.

사용 노트

역할 할당 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

예시

다음 예제에서는 데이터베이스 TESTDBROLE_TEST라는 역할을 role1이라는 역할, user1이라는 사용자, group1이라는 그룹에 할당합니다. ROLE_TEST에는 역할을 할당할 수 있는 관리 권한이 부여됩니다.

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

다음 예시에서는 데이터베이스 TESTDBROLE_TEST라는 역할을 PUBLIC에 할당합니다. ROLE_TEST에는 역할을 할당할 수 있는 관리 권한이 없습니다.

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

rdsadmin.revoke_role

역할, 사용자 또는 그룹에서 역할을 취소합니다.

구문

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

파라미터

다음 출력 파라미터는 필수입니다.

?

작업의 고유 식별자를 출력하는 파라미터 마커입니다. 이 파라미터는 ?만 허용합니다.

다음 입력 파라미터는 필수입니다.

database_name

명령이 실행될 데이터베이스의 이름입니다. 데이터 형식은 varchar입니다.

role_name

취소할 역할의 이름입니다. 데이터 형식은 varchar입니다.

grantee

권한을 잃을 역할, 사용자 또는 그룹입니다. 데이터 형식은 varchar입니다. 유효한 값: ROLE, USER, GROUP, PUBLIC.

형식은 값 뒤에 이름이 와야 합니다. 값과 이름이 여러 개인 경우 쉼표로 구분합니다. 예: 'USER user1, user2, GROUP group1, group2'. 이름을 사용자의 정보로 대체합니다.

사용 노트

역할 할당 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

예시

다음 예제는 role1이라는 역할, user1이라는 사용자 및 group1이라는 그룹에서 TESTDB 데이터베이스의 ROLE_TEST라는 역할을 취소합니다.

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

다음 예제에서는 PUBLIC에서 TESTDB 데이터베이스의 ROLE_TEST라는 역할을 취소합니다.

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

rdsadmin.add_user

권한 부여 목록에 사용자를 추가합니다.

구문

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

파라미터

다음 파라미터는 필수 파라미터입니다.

사용자 이름

사용자의 사용자 이름입니다. 데이터 형식은 varchar입니다.

password

사용자의 암호입니다. 데이터 형식은 varchar입니다.

다음 파라미터는 선택 사항입니다.

group_name

사용자를 추가할 그룹의 이름입니다. 데이터 형식은 varchar입니다. 기본값은 빈 문자열 또는 null입니다.

사용 노트

그룹 이름을 쉼표로 구분하여 하나 이상의 그룹에 사용자를 추가할 수 있습니다.

새 사용자를 만들거나 기존 사용자에게 그룹을 추가할 때 그룹을 만들 수 있습니다. 혼자서 그룹을 만들 수는 없습니다.

참고

rdsadmin.add_user를 호출하여 추가할 수 있는 최대 사용자 수는 5,000명입니다.

사용자 추가 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

예시

다음 예시에서는 jorge_souza라는 사용자를 만들고 해당 사용자를 salesinside_sales라는 그룹에 할당합니다.

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

rdsadmin.change_password

사용자의 암호를 변경합니다.

구문

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

파라미터

다음 파라미터는 필수 파라미터입니다.

사용자 이름

사용자의 사용자 이름입니다. 데이터 형식은 varchar입니다.

new_password

사용자의 새 암호입니다. 데이터 형식은 varchar입니다.

사용 노트

암호 변경 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

예시

다음 예제에서는 jorge_souza의 암호를 변경합니다.

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

rdsadmin.list_users

권한 부여 목록에 있는 사용자를 나열합니다.

구문

db2 "call rdsadmin.list_users()"

사용 노트

사용자 나열 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

rdsadmin.remove_user

권한 목록에서 사용자를 제거합니다.

구문

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

파라미터

다음 파라미터는 필수입니다.

사용자 이름

사용자의 사용자 이름입니다. 데이터 형식은 varchar입니다.

사용 노트

사용자 제거 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

예시

다음 예제에서는 RDS for Db2 DB 인스턴스의 데이터베이스에 액세스할 수 없도록 jorge_souza를 제거합니다.

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

rdsadmin.add_groups

사용자에게 그룹을 추가합니다.

구문

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

파라미터

다음 파라미터는 필수 파라미터입니다.

사용자 이름

사용자의 사용자 이름입니다. 데이터 형식은 varchar입니다.

group_name

사용자를 추가할 그룹의 이름입니다. 데이터 형식은 varchar입니다. 기본값은 빈 문자열입니다.

사용 노트

그룹 이름을 쉼표로 구분하여 사용자에게 하나 이상의 그룹을 추가할 수 있습니다. 그룹 추가 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

예시

다음 예제에서는 사용자 jorge_souzadirect_salesb2b_sales 그룹을 추가합니다.

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

rdsadmin.remove_groups

사용자로부터 그룹을 제거합니다.

구문

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

파라미터

다음 파라미터는 필수 파라미터입니다.

사용자 이름

사용자의 사용자 이름입니다. 데이터 형식은 varchar입니다.

group_name

사용자를 제거할 그룹의 이름입니다. 데이터 형식은 varchar입니다.

사용 노트

그룹 이름을 쉼표로 구분하여 사용자로부터 하나 이상의 그룹을 제거할 수 있습니다.

그룹 제거 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

예시

다음 예제에서는 사용자 jorge_souza로부터 direct_salesb2b_sales 그룹을 제거합니다.

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

rdsadmin.dbadm_grant

역할, 사용자 또는 그룹에 DBADM, ACCESSCTRL 또는 DATAACCESS 권한을 부여합니다.

구문

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

파라미터

다음 출력 파라미터는 필수입니다.

?

작업의 고유 식별자를 출력하는 파라미터 마커입니다. 이 파라미터는 ?만 허용합니다.

다음 입력 파라미터는 필수입니다.

database_name

명령이 실행될 데이터베이스의 이름입니다. 데이터 형식은 varchar입니다.

권한 부여

부여할 권한의 유형입니다. 데이터 형식은 varchar입니다. 유효한 값: DBADM, ACCESSCTRL, DATAACCESS.

유형이 여러 개인 경우 쉼표로 구분합니다.

grantee

권한을 받을 역할, 사용자 또는 그룹입니다. 데이터 형식은 varchar입니다. 유효한 값: ROLE, USER, GROUP.

형식은 값 뒤에 이름이 와야 합니다. 값과 이름이 여러 개인 경우 쉼표로 구분합니다. 예: 'USER user1, user2, GROUP group1, group2'. 이름을 사용자의 정보로 대체합니다.

사용 노트

액세스 권한을 받을 역할이 존재해야 합니다.

데이터베이스 관리자 액세스 권한 부여의 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

예시

다음 예제에서는 ROLE_DBA 역할에 대해 TESTDB라는 이름의 데이터베이스에 대한 데이터베이스 관리자 액세스 권한을 부여합니다.

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

다음 예제에서는 user1group1에 대해 TESTDB라는 이름의 데이터베이스에 대한 데이터베이스 관리자 액세스 권한을 부여합니다.

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

다음 예제에서는 user1, user2, group1, group2에 대해 TESTDB라는 이름의 데이터베이스에 대한 데이터베이스 관리자 액세스 권한을 부여합니다.

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

rdsadmin.dbadm_revoke

역할, 사용자 또는 그룹에서 DBADM, ACCESSCTRL 또는 DATAACCESS 권한을 취소합니다.

구문

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

파라미터

다음 출력 파라미터는 필수입니다.

?

작업의 고유 별자입니다. 이 파라미터는 ?만 허용합니다.

다음 입력 파라미터는 필수입니다.

database_name

명령이 실행될 데이터베이스의 이름입니다. 데이터 형식은 varchar입니다.

권한 부여

취소할 권한의 유형입니다. 데이터 형식은 varchar입니다. 유효한 값: DBADM, ACCESSCTRL, DATAACCESS.

유형이 여러 개인 경우 쉼표로 구분합니다.

grantee

권한을 취소할 역할, 사용자 또는 그룹입니다. 데이터 형식은 varchar입니다. 유효한 값: ROLE, USER, GROUP.

형식은 값 뒤에 이름이 와야 합니다. 값과 이름이 여러 개인 경우 쉼표로 구분합니다. 예: 'USER user1, user2, GROUP group1, group2'. 이름을 사용자의 정보로 대체합니다.

사용 노트

데이터베이스 관리자 액세스 권한 취소의 상태 점검에 대한 자세한 내용은 rdsadmin.get_task_status 섹션을 참조하세요.

예시

다음 예제에서는 ROLE_DBA 역할에 대해 TESTDB라는 이름의 데이터베이스에 대한 데이터베이스 관리자 액세스 권한을 취소합니다.

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

다음 예제에서는 user1group1에 대해 TESTDB라는 이름의 데이터베이스에 대한 데이터베이스 관리자 액세스 권한을 취소합니다.

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

다음 예제에서는 user1, user2, group1, group2에 대해 TESTDB라는 이름의 데이터베이스에 대한 데이터베이스 관리자 액세스 권한을 취소합니다.

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