Posted by : Arjun Lagisetty Thursday, March 19, 2015

Let's say we have a security profile which is able to do certain tasks but when you create a new one and edit it. We are unable to do certain things which you were able to do with the previous security profile.

We had a similar situation in the past. Where I had to create a new security profile called LIMITED_OPERATOR , who is allowed to execute, stop, restart the load plans and scenarios but should not be able to delete or import them. We wanted to identify what exactly the difference in this two profiles was (I was getting an error while executing with limited_operator profile) I wrote the following query to help me debug the issue.

SELECT -- SNP_PROFILE.PROF_NAME,
  SNP_METHOD.SHORT_NAME METH_SHORT_NAME,
  SNP_METHOD.INT_JAVA_NAME AS METHOD_NAME,
  SNP_PROF_METH.GENERIC_PRIV,
  SNP_METHOD.I_OBJECTS,
  SNP_OBJECT.INT_JAVA_NAME AS OBJECT_NAME
FROM SNP_PROF_METH
INNER JOIN SNP_PROFILE
ON SNP_PROFILE.I_PROF = SNP_PROF_METH.I_PROF
INNER JOIN SNP_METHOD
ON SNP_PROF_METH.I_METH = SNP_METHOD.I_METH
INNER JOIN SNP_OBJECT
ON SNP_METHOD.I_OBJECTS     = SNP_OBJECT.I_OBJECTS
WHERE SNP_PROFILE.PROF_NAME = 'OPERATOR'
MINUS
SELECT -- SNP_PROFILE.PROF_NAME,
  SNP_METHOD.SHORT_NAME METH_SHORT_NAME,
  SNP_METHOD.INT_JAVA_NAME AS METHOD_NAME,
  SNP_PROF_METH.GENERIC_PRIV,
  SNP_METHOD.I_OBJECTS,
  SNP_OBJECT.INT_JAVA_NAME AS OBJECT_NAME
FROM SNP_PROF_METH
INNER JOIN SNP_PROFILE
ON SNP_PROFILE.I_PROF = SNP_PROF_METH.I_PROF
INNER JOIN SNP_METHOD
ON SNP_PROF_METH.I_METH = SNP_METHOD.I_METH
INNER JOIN SNP_OBJECT
ON SNP_METHOD.I_OBJECTS     = SNP_OBJECT.I_OBJECTS
WHERE SNP_PROFILE.PROF_NAME = 'LIMITED_OPERATOR';

Leave a Reply

Subscribe to Posts | Subscribe to Comments

Popular Post

Labels

Blog Archive

Copyright © ODI Pundits - Oracle Data Integrator - Maintained by Arjun Lagisetty