0

I am using oracle 11gR2 database in which I was trying to wrap my scripts. I read the documents and tried to wrap a sql script which contains a create table statement. I used below commands:

wrap iname=ORDER.sql oname=ORDER_TEST.sql
wrap iname=ORDER.sql oname=ORDER_TEST.wrp
wrap iname=ORDER.sql oname=ORDER_TEST.plb

But in all 3 format the files created have same codes visible, no encryption is happening. Also, I have tried same on a package body which get encrypted properly. Now, I need to know does only package bodies has this facility of wrapping. Can I wrap other scripts like create table, trigger, view etc..?

4

PL/SQL Source Text Wrapping

You can wrap the PL/SQL source text for any of these stored PL/SQL units, thereby preventing anyone from displaying that text with the static data dictionary views *_SOURCE:

  • Package specification
  • Package body
  • Type specification
  • Type body
  • Function
  • Procedure

A script containing a CREATE TABLE statement does not fall into any of the above categories.

Also, keep in mind, unwrapping such source takes seconds (for example: http://www.codecrete.net/unwrapit/). Oracle generously classified this method as low-assurance security (see above URL), but I would rather classify this as non-existent security.

  • Yeah, I wouldn't even bother. It's security through obscurity – Philᵀᴹ Jun 21 '17 at 14:51
  • @Balazs Papp So, which will be the best method to secure the codes migrating to production instance? or simply saying, how to hide the codes/queries in oracle 11g db? – SHS Jun 22 '17 at 4:56
  • @SHS: why do you think you need to do that? – a_horse_with_no_name Jun 22 '17 at 5:09
  • You can't. Wrapping also makes it hard for DBAs to do their job – Philᵀᴹ Jun 22 '17 at 7:49
  • @Philᵀᴹ Could you please explain how the wrapping makes DBAs job difficult? In which kind of scenarios ? – SHS Jun 22 '17 at 11:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.