2012-05-05 9 views
1

CREATE PROCEDURE privelege이 부여 된 데이터베이스의 사용자가 있습니다. ORA-01031 : 충분하지 않은 권한 01031. 00000 - "충분하지 않은 권한" * 원인 : 현재 사용자 이름이나 암호를 적절하지 않은 채로 변경하려고 시도했습니다. 특권. 이 오류는 시스템 권한이 필요하지 않고 데이터베이스를 설치하려고 시도하는 경우에도 발생합니다.ORACLE - 프로 시저를 수락했지만 프로 시저를 만들 수 없습니다.

CREATE OR REPLACE PROCEDURE TOTALBASE.ROUNDUP 
      (CUR OUT SYS_REFCURSOR ) 
AS 
BEGIN 
    OPEN CUR FOR 
    SELECT * FROM TOTALBASE.ABONENT; 
END ROUNDUP; 

다른 내가이 일을하려면 어떻게 고려해야합니다

여기에 프로 시저에 대한 DDL입니까? 나는 privelege이 관리자 나 ORA_DBA 그룹에없는 사람이라면 프로 시저를 만들 수 없다고 생각합니다. 그러나 나는 확실하지 않다.

+0

이 절차를 만들 때'totalbase' 스키마에 있습니까? 그것은 다른 사용자의'totalbase'에 객체를 추가하려고하는 것처럼 보입니다 ... – Ben

+0

아니요, 다른 스키마에 있습니다. 하지만 나는 그 사용자에게 프로 시저 작성을 허용했다. 그걸로 충분하지 않니? –

+0

해당 사용자는 또한 abonent 테이블에 대한 SELECT 권한이 있습니까? – eaolson

답변

7

자신 이외의 스키마에서 프로 시저를 작성하려면 'CREATE ANY PROCEDURE'특권이 필요합니다.

일반적으로이 권한은 데이터베이스 보안을 우회하는 데 쉽게 사용할 수 있으므로 가볍게 부여해서는 안됩니다.

희망이 있습니다.

+0

저도 믿을 수는 없지만 저도 같은 문제가 있습니다. 그렇다면 나는 그것이 그 어쨌든 도움이되지 않았다는 것을보고 나서 그 특권을 철회했다. –

+0

그런 다음 CREATE ANY PROCEDURE 권한을 다시 부여한 다음 'alter session set sql_trace = true;'를 사용하여 다시 시도하십시오. 무슨 일이 일어나고 있는지 보러. –

-1

아래의 몇 가지 의견을 남긴 후에 다시 시도하고 있습니다.

다른 스키마에서 프로 시저를 만들지 마십시오. 각 사용자가 자신의 스키마에 개체를 만들 수있게하십시오.

이렇게하면 GRANT 다른 스키마 개체에 액세스 할 수있는 이유가 줄어 듭니다. TOTALBASE 사용자는 해당 프로 시저에 대한 EXECUTE 특권을 현재 사용자에게 부여 할 수 있습니다.

TOTALUSER 테이블의 데이터가 필요한 현재 사용자는 기능 또는 절차에 대한 EXECUTE 권한이있는 경우 다른 개체를 만들거나 액세스 할 필요가 없습니다.

TOTALUSER은 현재 사용자에게 데이터를 노출하는 방식에 API를 제공하여 향후 변경 될 수있는 구현 세부 사항을 숨기며 현재 사용자에게는 투명합니다.

+0

-1. 이것은 아래의 질문과 설명에 설명 된 바와 같이 OP가 시도하는 것과 반대입니다. – Ben

+0

그가하려고하는 것은 99 % 이상의 사례에서 OK가 아닙니다. 그가 묻는 것! = 그가해야 할 일. ** 이것은 매우 위험합니다. 일반적인 지침에 따라 다른 스키마 (ANY 키워드를 포함하는 권한)에 대한 보조금을 피하십시오. SELECT를 부여하는 것과 같은 독점적 인 것으로 보이는 것조차도 읽기 전용이라고 생각하면 예기치 않은 효과가 발생할 수 있습니다 (선택과 같이 ...)업데이트 용) – igr

+0

나는 당신이 답을 편집하여 질문에 대한 해결책을 포함하고 _why_에 대한 명확한 설명을 포함하고 해결책이 잘못되어 무엇을해야 하는지를 이해한다면 나는 downvote를 되돌릴 것이며 당신의 의견에 얼마나 동의 하는가에 따라 대답은 또한 upvote 수 있습니다. @ Mark의 대답을 살펴보면 그는 질문에 답을 한 다음 아마 그렇게해서는 안되며 왜 그런지 말했습니다. 당신의 대답이 실제로 도움이되지는 않지만 서서. OP는 동일한 스키마에서 프로 시저를 작성할 수 있음을 알고 있습니다. – Ben

관련 문제