CREATE ROLE에는 CREATE ROLE 권한이 필요합니다. OR REPLACE는 동일한 이름의 기존 역할을 해당 역할에 부여된 권한과 함께 삭제하므로, 추가로 DROP ROLE 권한이 필요합니다. DROP ROLE 권한은 해당 역할이 이미 존재하는지 여부와 관계없이 SQL 문에 나열된 모든 이름에 대해 필요하므로, 이 SQL 문으로 어떤 역할이 존재하는지 알아낼 수는 없습니다.
역할 관리
사용자에게는 여러 개의 역할을 할당할 수 있습니다. 사용자는 SET ROLE SQL 문을 사용하여 할당된 역할을 임의로 조합해 적용할 수 있습니다. 최종 권한 범위는 적용된 모든 역할에 부여된 모든 권한을 합친 집합입니다. 사용자 계정에 직접 부여된 권한이 있는 경우, 해당 권한도 역할을 통해 부여된 권한과 합쳐집니다. 사용자는 로그인 시 적용되는 기본 역할을 가질 수 있습니다. 기본 역할을 설정하려면 SET DEFAULT ROLE SQL 문 또는 ALTER USER SQL 문을 사용하십시오. 역할 할당을 취소하려면 REVOKE SQL 문을 사용하십시오. 역할을 삭제하려면 DROP ROLE SQL 문을 사용하십시오. 삭제된 역할은 해당 역할이 할당되어 있던 모든 사용자와 역할에서 자동으로 해제됩니다.예시
db DB에서 데이터를 읽을 수 있는 권한을 가진 역할 accountant를 생성합니다.
사용자 mira에 해당 역할을 할당합니다: