2014-01-09 1 views
0

Oracle 용으로 TOAD를 사용하고 11g 데이터베이스에 연결 중입니다.create role 문이 발생합니다. ora-01031 권한이 충분하지 않습니다.

ORA-01031 권한이 부족

I :

create role myNewRole; 

내가 오류를 얻을 : 나는 문을 실행할 때, 역할 협회가 지정한 만드는 역할 시스템 privilage이있는 사용자가 내가 전에 여러 번 해본 적이 있고 문제가 없었기 때문에 문제가 무엇인지 이해하지 못한다. 구글이나 스택을 통해 create role 문과 관련된 비슷한 문제를 찾을 수 없었다.

누구에게 무슨 일이 일어나고 있는지 아이디어가 있습니까?

+1

이 사용자가 'SESSION_PRIVS'에서 선택하면'create role'이 보이십니까? –

답변

1

사용자에 대한 역할 연결을 조사하여 문제가 해결되었습니다. 이 솔루션은 두 가지 중 하나 그래서는 기본 역할로 설정되지 않았 음을 밝혀 :

  • 설정 SET ROLE <role>;
  • 를 사용하여 세션에 적극적으로 역할을 설정 alter user <username> default role <role_list>;
  • 와 기본 하나로서 역할

물론 역할에 보안이 설정된 경우 <role> 뒤에 identified by <password>을 사용해야합니다.

Doco for SET ROLEDoco for Default Role

문제의 나의 이해는 당신이 명시 적으로 세션을 활성화해야하므로 오라클은 당신이 기본적으로 활성화하지 않을 그러나 사용자와 관련된 역할을 원하는 경우가있을 수 있음 당신의 데이타베이스를위한 여분 보호 인 그것을 사용하기 위하여. 역할이 기본 역할로 설정되면 역할에 대한 권한이 더 자주 사용되거나 데이터베이스에 큰 영향 (부정적)이 없으므로 로그온 할 때마다 활성화됩니다.

@ChrisFarmer 왜냐하면 그것은 내가 SYS 세션이 내 세션에 없다는 것을 깨달았을 때 내가 찾고 있던 대답의 방향으로 이끌었 기 때문입니다.

0

다른 사용자의 암호를 변경하려고 할 때 DBA 역할을 부여받은 사용자가 ORA-01031을받은 이유를 설명합니다. 세션에서 그는 SET ROLE을 필요로합니다.

관련 문제