Re: RES: [oracle_br] ORA-01720: grant option does not exist for ...
Alexandre, não há absolutamente *** nada *** de estranho aí : é natural, o SYSTEM, ao contrário do que muita gente pensa, NÂO TEM todos os mesmos privilégios do SYS, certamente o que ocorreu é que o SYS tem privilégios de fazer GRANT em qquer objeto e o SYSTEM não, isso é COMUM e NATURAL, nada de estranho aí, yes ? Para vc confirmar, rode o script abaixo: sys...@tst:SQL>SELECT grantee, privilege, admin_option FROM dba_sys_privs WHERE grantee in ('SYS', 'SYSTEM') and privilege like '%GRANT%' order by 1,2; ==> vc deverá ver algo tal como isto, demonstrando a diferença entre o SYS e o SYSTEM... GRANTEE PRIVILEGE ADM --- -- --- SYS GRANT ANY OBJECT PRIVILEGE NO SYS GRANT ANY PRIVILEGENO SYS GRANT ANY ROLE NO SYSTEM GRANT ANY ROLE NO []s Chiappa --- Em oracle_br@yahoogrupos.com.br, Alexandre Anselmo escreveu > > Marcos, > >agradeço a resposta. > > O conceito até conheco mas o que é estranho é o system não conseguir dar esse grant. Já tentei inclusive dar o grant SELECT with grant option para o system (o que acho que não é necessário) mas o erro persiste. > > PS: Tentei com o SYS e funcionou mas gostaria de resolver com o SYSTEM e entender o que se passa. > > Obrigado. > > Ats, > Alexandre Tenório. > > > > > > From: Marcos Pereira - Confederação SICREDI > To: oracle_br@yahoogrupos.com.br > Sent: Thursday, January 8, 2009 9:24:55 AM > Subject: RES: [oracle_br] ORA-01720: grant option does not exist for ... > > > Alexandre, > > Vou tentar exemplificar assim . > > Se vc tem um carro , e empresta para seu amigo este não pode empresta-lo > para outra pessoa , pois o carro foi emprestado para ele e como ele não é > dono não pode empresta-lo. > > Então A concede acesso para B , mas B não pode conceder para C algo do > objeto A > > Então terá que conceder de A para C também , ou conceder para B com Grant > option , para que B possa conceder para C > > Espero ter ajudado . > > Atenciosamente. > > Marcos V. B. Pereira > > Gestão de Configuração de Software - GCS > > Arquitetura de Software > > De: oracle...@yahoogrup os.com.br [mailto:oracle...@yahoogrup os.com.br] Em > nome de Alexandre Anselmo > Enviada em: quinta-feira, 8 de janeiro de 2009 10:26 > Para: oracle...@yahoogrup os.com.br > Assunto: [oracle_br] ORA-01720: grant option does not exist for ... > > Pessoal, bom dia. > > Estou com um problema estranho e se alguem puder me ajudar fico muito grato. > > Tenho um usuario A com uma VIEW complexa que acessa objetos de seu schema > (A) e do schema do usuário B. O usuário A tem privilégio de SELECT ANY > TABLE. > > Após a criação da visão, tento dar um grant de SELECT na view para o usuario > B com o usuário SYSTEM e recebo o erro "ORA-01720: grant option does not > exist for 'B.TABLE' ". > > Aparentemente o erro está relacionado ao usuário SYSTEM. > > Agradeço antecipadamente qualquer ajuda. > > Ats, > Alexandre Tenorio > > As informacoes contidas neste e-mail e anexos podem ser confidenciais e privilegiadas, protegidas por sigilo legal. Qualquer forma de utilizacao deste documento depende de autorizacao do emissor, sujeito as penalidades cabiveis. O emissor utiliza o recurso somente para fins profissionais, eximindo o empregador de responsabilidades por uso pessoal ou improprio. Se esta mensagem foi recebida por engano, o conteudo deve ser apagado e o remetente avisado imediatamente, atraves de resposta a este e-mail. > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > [As partes desta mensagem que não continham texto foram removidas] >
Re: RES: [oracle_br] ORA-01720: grant option does not exist for ...
Complementando o meu e-mail anterior... ## Conectado como system 08/01/09.sys...@whiteshark.sid=159> create view teste as select * from dba_views; create view teste as select * from sys.dba_views * ERRO na linha 1: ORA-01031: privilégios insuficientes ## Conectado como sys ### 08/01/09@whiteshark.sid=159> grant select on dba_views to system; Concessão bem-sucedida. Decorrido: 00:00:00.01 08/01/09@whiteshark.sid=159> sho user USER é "SYS" ## Conectado como system 08/01/09.sys...@whiteshark.sid=159> create view teste as select * from dba_views; View criada. Decorrido: 00:00:00.12 08/01/09.sys...@whiteshark.sid=159> sho user USER é "SYSTEM" 08/01/09.sys...@whiteshark.sid=159> select count(1) from teste; COUNT(1) -- 3646 1 linha selecionada. Atenciosamente, Rodrigo Mufalani OCP 10g & 11g mufal...@oi.com.br http://mufalani.blogspot.com > Mensagem Original: > Data: 10:17:10 08/01/2009 > De: Rodrigo Mufalani > Assunto: Re: RES: [oracle_br] ORA-01720: grant option does not exist for ... > Alexandre, > >Quando se escreve views ou algum pl o privilégio deve ser explicito > para o schema. > >Leia aqui: > > > http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_8004.htm#SQLRF01504 > >" > The owner of the schema containing the view must have the privileges > necessary to either select, insert, update, or delete rows from all the > tables or views on which the view is based. The owner must be granted > these privileges directly, rather than through a role. > > To use the basic constructor method of an object type when creating an > object view, one of the following must be true: > > * The object type must belong to the same schema as the view to be > created. > * You must have the EXECUTE ANY TYPE system privileges. > * You must have the EXECUTE object privilege on that object type. > > See Also: > SELECT, INSERT, UPDATE, and DELETE for information on the privileges > required by the owner of a view on the base tables or views of the view > being created" > > Atenciosamente, > > Rodrigo Mufalani > OCP 10g & 11g > mufal...@oi.com.br > http://mufalani.blogspot.com > > > > > >> Mensagem Original: >> Data: 09:59:14 08/01/2009 >> De: Alexandre Anselmo >> Assunto: Re: RES: [oracle_br] ORA-01720: grant option does not exist for ... > >> Marcos, >> >>agradeço a resposta. >> >> O conceito até conheco mas o que é estranho é o system não conseguir >> dar esse grant. Já tentei inclusive dar o grant SELECT with grant >> option para o system (o que acho que não é necessário) mas o erro persiste. >> >> PS: Tentei com o SYS e funcionou mas gostaria de resolver com o >> SYSTEM e entender o que se passa. >> >> Obrigado. >> >> Ats, >> Alexandre Tenório. >> >> >> >> >> >> From: Marcos Pereira - Confederação SICREDI >> To: oracle_br@yahoogrupos.com.br >> Sent: Thursday, January 8, 2009 9:24:55 AM >> Subject: RES: [oracle_br] ORA-01720: grant option does not exist for ... >> >> >> Alexandre, >> >> Vou tentar exemplificar assim . >> >> Se vc tem um carro , e empresta para seu amigo este não pode empresta-lo >> para outra pessoa , pois o carro foi emprestado para ele e como ele não é >> dono não pode empresta-lo. >> >> Então A concede acesso para B , mas B não pode conceder para C algo do >> objeto A >> >> Então terá que conceder de A para C também , ou conceder para B com Grant >> option , para que B possa conceder para C >> >> Espero ter ajudado . >> >> Atenciosamente. >> >> Marcos V. B. Pereira >> >> Gestão de Configuração de Software - GCS >> >> Arquitetura de Software >> >> De: oracle...@yahoogrup os.com.br [mailto:oracle...@yahoogrup os.com.br] Em >> nome de Alexandre Anselmo >> Enviada em: quinta-feira, 8 de janeiro de 2009 10:26 >> Para: oracle...@yahoogrup os.com.br >> Assunto: [oracle_br] ORA-01720: grant option does not exist for ... >> >> Pessoal, bom dia. >> >> Estou com um problema estranho e se alguem puder me ajudar fico muito grato. >> >> Tenho um usuario A com uma VIEW complexa que acessa objetos de seu schema >> (A) e do schema do usuário B. O usuário A tem privilégio de SELECT ANY >> TABLE. >> >> Após a c
Re: RES: [oracle_br] ORA-01720: grant option does not exist for ...
Alexandre, Quando se escreve views ou algum pl o privilégio deve ser explicito para o schema. Leia aqui: http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_8004.htm#SQLRF01504 " The owner of the schema containing the view must have the privileges necessary to either select, insert, update, or delete rows from all the tables or views on which the view is based. The owner must be granted these privileges directly, rather than through a role. To use the basic constructor method of an object type when creating an object view, one of the following must be true: * The object type must belong to the same schema as the view to be created. * You must have the EXECUTE ANY TYPE system privileges. * You must have the EXECUTE object privilege on that object type. See Also: SELECT, INSERT, UPDATE, and DELETE for information on the privileges required by the owner of a view on the base tables or views of the view being created" Atenciosamente, Rodrigo Mufalani OCP 10g & 11g mufal...@oi.com.br http://mufalani.blogspot.com > Mensagem Original: > Data: 09:59:14 08/01/2009 > De: Alexandre Anselmo > Assunto: Re: RES: [oracle_br] ORA-01720: grant option does not exist for ... > Marcos, > >agradeço a resposta. > > O conceito até conheco mas o que é estranho é o system não conseguir > dar esse grant. Já tentei inclusive dar o grant SELECT with grant > option para o system (o que acho que não é necessário) mas o erro persiste. > > PS: Tentei com o SYS e funcionou mas gostaria de resolver com o > SYSTEM e entender o que se passa. > > Obrigado. > > Ats, > Alexandre Tenório. > > > > > > From: Marcos Pereira - Confederação SICREDI > To: oracle_br@yahoogrupos.com.br > Sent: Thursday, January 8, 2009 9:24:55 AM > Subject: RES: [oracle_br] ORA-01720: grant option does not exist for ... > > > Alexandre, > > Vou tentar exemplificar assim . > > Se vc tem um carro , e empresta para seu amigo este não pode empresta-lo > para outra pessoa , pois o carro foi emprestado para ele e como ele não é > dono não pode empresta-lo. > > Então A concede acesso para B , mas B não pode conceder para C algo do > objeto A > > Então terá que conceder de A para C também , ou conceder para B com Grant > option , para que B possa conceder para C > > Espero ter ajudado . > > Atenciosamente. > > Marcos V. B. Pereira > > Gestão de Configuração de Software - GCS > > Arquitetura de Software > > De: oracle...@yahoogrup os.com.br [mailto:oracle...@yahoogrup os.com.br] Em > nome de Alexandre Anselmo > Enviada em: quinta-feira, 8 de janeiro de 2009 10:26 > Para: oracle...@yahoogrup os.com.br > Assunto: [oracle_br] ORA-01720: grant option does not exist for ... > > Pessoal, bom dia. > > Estou com um problema estranho e se alguem puder me ajudar fico muito grato. > > Tenho um usuario A com uma VIEW complexa que acessa objetos de seu schema > (A) e do schema do usuário B. O usuário A tem privilégio de SELECT ANY > TABLE. > > Após a criação da visão, tento dar um grant de SELECT na view para o usuario > B com o usuário SYSTEM e recebo o erro "ORA-01720: grant option does not > exist for 'B.TABLE' ". > > Aparentemente o erro está relacionado ao usuário SYSTEM. > > Agradeço antecipadamente qualquer ajuda. > > Ats, > Alexandre Tenorio > > As informacoes contidas neste e-mail e anexos podem ser confidenciais > e privilegiadas, protegidas por sigilo legal. Qualquer forma de > utilizacao deste documento depende de autorizacao do emissor, sujeito > as penalidades cabiveis. O emissor utiliza o recurso somente para > fins profissionais, eximindo o empregador de responsabilidades por > uso pessoal ou improprio. Se esta mensagem foi recebida por engano, o > conteudo deve ser apagado e o remetente avisado imediatamente, > atraves de resposta a este e-mail. > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > -- >> Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de >> inteira responsabilidade de seus remetentes. > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ > -- >> Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » >> Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPR
Re: RES: [oracle_br] ORA-01720: grant option does not exist for ...
Marcos, agradeço a resposta. O conceito até conheco mas o que é estranho é o system não conseguir dar esse grant. Já tentei inclusive dar o grant SELECT with grant option para o system (o que acho que não é necessário) mas o erro persiste. PS: Tentei com o SYS e funcionou mas gostaria de resolver com o SYSTEM e entender o que se passa. Obrigado. Ats, Alexandre Tenório. From: Marcos Pereira - Confederação SICREDI To: oracle_br@yahoogrupos.com.br Sent: Thursday, January 8, 2009 9:24:55 AM Subject: RES: [oracle_br] ORA-01720: grant option does not exist for ... Alexandre, Vou tentar exemplificar assim . Se vc tem um carro , e empresta para seu amigo este não pode empresta-lo para outra pessoa , pois o carro foi emprestado para ele e como ele não é dono não pode empresta-lo. Então A concede acesso para B , mas B não pode conceder para C algo do objeto A Então terá que conceder de A para C também , ou conceder para B com Grant option , para que B possa conceder para C Espero ter ajudado . Atenciosamente. Marcos V. B. Pereira Gestão de Configuração de Software - GCS Arquitetura de Software De: oracle...@yahoogrup os.com.br [mailto:oracle...@yahoogrup os.com.br] Em nome de Alexandre Anselmo Enviada em: quinta-feira, 8 de janeiro de 2009 10:26 Para: oracle...@yahoogrup os.com.br Assunto: [oracle_br] ORA-01720: grant option does not exist for ... Pessoal, bom dia. Estou com um problema estranho e se alguem puder me ajudar fico muito grato. Tenho um usuario A com uma VIEW complexa que acessa objetos de seu schema (A) e do schema do usuário B. O usuário A tem privilégio de SELECT ANY TABLE. Após a criação da visão, tento dar um grant de SELECT na view para o usuario B com o usuário SYSTEM e recebo o erro "ORA-01720: grant option does not exist for 'B.TABLE' ". Aparentemente o erro está relacionado ao usuário SYSTEM. Agradeço antecipadamente qualquer ajuda. Ats, Alexandre Tenorio As informacoes contidas neste e-mail e anexos podem ser confidenciais e privilegiadas, protegidas por sigilo legal. Qualquer forma de utilizacao deste documento depende de autorizacao do emissor, sujeito as penalidades cabiveis. O emissor utiliza o recurso somente para fins profissionais, eximindo o empregador de responsabilidades por uso pessoal ou improprio. Se esta mensagem foi recebida por engano, o conteudo deve ser apagado e o remetente avisado imediatamente, atraves de resposta a este e-mail. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]