지원되는 버전 :현재(17) /16 / 15 / 14 / 13
개발 버전 :18 / Devel
지원되지 않는 버전 :12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1
이 문서는 지원되지 않는 버전의 토토을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다현재버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

토토

이름

그랜트-액세스 권한 정의

시놉시스

그랜트 select | 삽입 | 업데이트 | 삭제 | 규칙 | 참조 | 방아쇠 
    [, ...] | 모든 [권한]
    [테이블]TableName[, ...]
    에게사용자 이름| 그룹GroupName| public [, ...] [보조금 옵션 포함]

그랜트 create | 임시 | 온도 [, ...] | 모든 [권한]
    데이터베이스dbname[, ...]
    에게사용자 이름| 그룹GroupName| public [, ...] [보조금 옵션 포함]

그랜트 execute | 모든 [권한]
    on functionfuncName([type, ...]) [, ...]
    에게사용자 이름| 그룹GroupName| public [, ...] [보조금 옵션 포함]

그랜트 usage | 모든 [권한]
    On Languagelangname[, ...]
    에게사용자 이름| 그룹GroupName| public [, ...] [보조금 옵션 포함]

그랜트 create | usage [, ...] | 모든 [권한]
    스키마Schemaname[, ...]
    에게사용자 이름| 그룹GroupName| public [, ...] [보조금 옵션 포함]

설명

the토토명령은 구체적으로 제공합니다 객체의 권한 (테이블,보기, 시퀀스, 데이터베이스, 데이터베이스, 한 명 이상의 사용자에게 기능, 절차 언어 또는 스키마) 또는 사용자 그룹. 이러한 특권은 이미 특권에 추가되었습니다 당연한 경우.

키워드public특권은 모든 사용자를 포함하여 모든 사용자에게 부여됩니다. 나중에 생성 될 수 있습니다.public항상 포함하는 암시 적으로 정의 된 그룹으로 생각 모든 사용자. 특정 사용자에게는 권한의 합이 있습니다 그에게 직접 부여, 자신이있는 모든 그룹에 부여 된 특권 현재 회원과 권한이 부여 된 특권public.

if보조금 옵션지정되어 있습니다. 특권을받는 사람은 차례로 다른 사람들에게 그것을 부여 할 수 있습니다. 에 의해 기본값은 허용되지 않습니다. 보조금 옵션 만 부여 할 수 있습니다 그룹이 아닌 개별 사용자 또는public.

개체 소유자에게 특권을 부여 할 필요가 없습니다. (일반적으로 그것을 만든 사용자), 소유자가 모든 것을 가지고 있으므로 기본적으로 권한. (그러나 소유자는 선택할 수 있습니다 안전에 대한 자신의 특권을 취소하십시오.) 떨어질 권리 객체, 또는 어떤 식 으로든 정의를 변경하는 것은 설명되지 않습니다. 부여 가능한 특권으로; 그것은 소유자에게 내재되어 있으며 할 수 없습니다 부여되거나 취소됩니다. 소유자의 보조금은 불가능합니다 취소 할 옵션도 있습니다.

객체 유형에 따라 초기 기본값 특권에는에 대한 특권을 부여하는 것이 포함될 수 있습니다.공개. 기본값은 테이블에 대한 공개 액세스가 아닙니다 그리고 스키마;temp테이블 생성 데이터베이스 권한;execute함수 특권; 그리고usage언어 특권. 물체 소유자는 물론 철회 할 수 있습니다 이 특권. (최대 보안을 위해 발급Revoke동일한 트랜잭션에서 물체; 그런 다음 다른 사용자가 사용할 수있는 창이 없습니다. 물체.)

가능한 특권은 다음과 같습니다.

select

허용와이즈 토토 : 문서 : 7.4 : select지정된 테이블,보기 또는 시퀀스의 모든 열에서. 또한의 사용을 허용합니다.COPYTO. 이 특권도 필요합니다 기존 열 값을 참조하려면업데이트또는삭제. 시퀀스의 경우,이 특권 또한의 사용을 허용합니다.Currval기능.

삽입

허용메이저 토토 사이트 : 문서 : 7.4 : 삽입지정된 테이블에 새 행의 또한 허용PostgreSQL : 문서 : 7.4 : 토토 커뮤니티.

업데이트

허용PostgreSQL : 문서 : 7.4 : 토토 베이15074_15160업데이트명령 필요하다select특권, 테이블 열을 참조하여 어느 것을 결정해야하므로 업데이트 및/또는 열에 대한 새 값을 계산할 행.)선택 ... 업데이트 용또한 이 특권이 필요하지만select특권. 시퀀스의 경우 이것 특권은를 사용할 수 있습니다.NextValandsetVal기능.

삭제

허용PostgreSQL : 문서 : 7.4 : 토토 커뮤니티지정된 테이블에서 행의 행. (실제로는 사소한삭제명령 필요하다select특권, 테이블 열을 참조하여 어느 것을 결정해야하므로 삭제 행.)

규칙

테이블/뷰에서 규칙을 생성 할 수 있습니다. (보다PostgreSQL : 문서 : 7.4 : 무지개 토토 작성진술.)

참조

외국 키 제약 조건을 만들려면 필요합니다. 참조와 참조에 대한이 특권을 얻으십시오 테이블.

트리거

지정된 테이블에서 트리거를 생성 할 수 있습니다. (보다PostgreSQL : 문서진술.)

생성

데이터베이스의 경우 새로운 스키마를 만들 수 있습니다 데이터베이스.

스키마의 경우 새 개체를 개요. 기존 객체의 이름을 바꾸려면 소유해야합니다 물체and포함 된 스키마에 대한이 권한.

임시
temp

사용 중에 임시 테이블을 만들 수 있습니다 지정된 데이터베이스.

execute

지정된 기능을 사용하고 사용합니다. 기능 위에 구현 된 모든 연산자. 이것은 적용 할 수있는 유일한 유형의 권한입니다. 기능. (이 구문은 집계 함수에 대해 작동합니다 잘.)

usage

절차 언어의 경우 사용을 허용합니다 그 기능을 만들기위한 지정된 언어 언어. 이것이 유일한 특권 유형입니다 절차 언어에 적용 가능합니다.

스키마의 경우, 지정된 스키마 (객체 자신의 권한을 가정합니다 요구 사항도 충족됩니다). 본질적으로 이것은 허용합니다 수혜자에게"봐"개체 스키마 내에서.

모든 권한

객체에 적용되는 모든 권한을 부여 한 번. 그만큼특권키워드입니다 옵션토토, 엄격한 SQL이 필요하지만

다른 명령에 필요한 권한은 각 명령의 참조 페이지.

노트

the토토 캔 : 문서 : 7.4 : Revoke명령입니다 액세스 권한을 취소하는 데 사용됩니다.

데이터베이스 슈퍼 사용자가 모든 것에 액세스 할 수 있음을 알 수 있어야합니다. 객체 권한 설정에 관계없이 개체. 이것은 의 권리와 비교할 때루트a 유닉스 시스템. 와 마찬가지로루트, 그것은 현명하지 않습니다 절대적으로 필요한 경우를 제외하고 슈퍼업자로 작동합니다.

슈퍼업자가 A를 발행하기로 선택한 경우토토또는Revoke명령, 명령은 소유자가 발행 한 것처럼 수행됩니다. 영향을받는 물체. 특히, 그러한 것을 통해 부여 된 특권 명령은 객체 소유자가 부여한 것으로 보입니다.

현재, 특권을 부여하려면토토몇 개의 열만 있으면해야합니다 원하는 열이있는 뷰를 작성한 다음 보조금 그 견해에 대한 특권.

usePSQL's\ z기존 권한에 대한 정보를 얻기위한 명령 예:

= \ z mytable

        데이터베이스 "Lusitania"에 대한 액세스 권한
 스키마 |  표 |           액세스 권한
--------+--------+-----------------------------------------------
 공개 | mytable | = r/postgres, miriam = arwdrxt/postgres, "Group todos = arw/postgres"

\ zare 이렇게 해석 :

= xxxx- 공개되는 특권
         uname = xxxx- 사용자에게 부여 된 권한
   GROUP GNAME = XXXX- 그룹에 부여 된 특권

                  R- 선택 ( "읽기")
                  W- 업데이트 ( "쓰기")
                  A- 삽입 ( "Append")
                  D- 삭제
                  R- 규칙
                  x- 참조
                  t- 트리거
                  x- 실행
                  U- 사용법
                  C- 생성
                  T- 임시
            arwdrxt- 모든 권한 (테이블 용)
                  * - 선행 권한에 대한 옵션

              /yyyy-이 특권을 부여한 사용자

위의 예제 디스플레이는 사용자가 볼 수 있습니다Miriam테이블 생성 후mytableand doing

Grant Grant MyTable에서 공개적으로 선택하십시오.
Grant Select, Update, MyTable에 삽입하여 Group Todos;

"액세스 권한"열 주어진 객체에 대해 비어 있으면 객체에 기본값이 있음을 의미합니다. 특권 (즉, 특권 열은 무일합니다). 기본 특권에는 항상 소유자에 대한 모든 권한이 포함되며 May 에 대한 특권 포함public위에서 설명한대로 객체 유형에 따라. 첫 번째토토또는Revoke개체에서 기본 권한을 인스턴스화합니다 (생산, 예를 들어,=, miriam = arwdrxt) 및 그런 다음 지정된 요청에 따라 수정하십시오.

예제

테이블의 모든 사용자에게 삽입 권한을 부여영화:

필름에 공개 삽입을 그랜트 삽입;

모든 권한을 사용자에게 부여Manuel보기Kinds:

Manuel에게 모든 특권을 부여;

호환성

SQL 표준에 따르면특권key Word in모두 특권SQL 표준은 지원하지 않습니다 명령 당 하나 이상의 객체에 권한 설정.

SQL 표준은 개인에 대한 권한을 설정할 수 있습니다 테이블 내 열 :

토토특권on테이블[([, ...])] [, ...]
    public |사용자 이름[, ...] [그랜트 옵션 포함]

SQL 표준은 a를 제공합니다.usage다른 종류의 객체에 대한 특권 : 문자 세트, 콜라주, 번역, 도메인

the규칙특권 및 특권 데이터베이스, 스키마, 언어 및 시퀀스는입니다.토토확장.