Bom dia,

Estou preparando uma migração de 10g para 11gr2 e me deparei com uma
situação que não consegui contornar.
As role são criadas com senha, para usuários de aplicações novas as roles
não são "DEFAULT" e a aplicação faz "SET ROLE", para usuários de aplicações
antigas em muitos casos tem as mesmas roles mas são "DEFAULT" no Oracle 10g
funcionava normalmente mas no 11gr2 mesmo estando "DEFAULT" a role com senha
não fica ativa após a conexão.
Vocês sabem dizer se tenho como alterar esse comportamento?
Segue um exemplo com o problema.

SQL>
SQL> conn / as sysdba
Connected.
SQL> alter user TESTE default role all;

User altered.

SQL> alter role RO_PESSOA_T identified by senha;

Role altered.

SQL> select GRANTED_ROLE,DEFAULT_ROLE from dba_role_privs where
grantee='TESTE';

GRANTED_ROLE                   DEF
------------------------------ ---
RO_PESSOA_T                    YES

SQL>
SQL>
SQL>
SQL> conn teste/teste
Connected.
SQL> select * from session_roles;

no rows selected

SQL>
SQL>
SQL>
SQL> conn / as sysdba
Connected.
SQL> alter role RO_PESSOA_T not identified;

Role altered.

SQL> select GRANTED_ROLE,DEFAULT_ROLE from dba_role_privs where
grantee='TESTE';

GRANTED_ROLE                   DEF
------------------------------ ---
RO_PESSOA_T                    YES

SQL>
SQL>
SQL>
SQL> conn teste/teste
Connected.
SQL> select * from session_roles;

ROLE
------------------------------
RO_PESSOA_T

SQL>


Obrigado,

Murilo Lima


[As partes desta mensagem que não continham texto foram removidas]

Responder a