E-Bilisim Uzmanı | Yeni Tema
imleme

Ana Sayfa Hakkımızda İletişim Videolar Yorumlar Arşiv
Full Sürüm Oyunlar Full Sürüm Programlar Full Sürüm APK Full Sürüm İOS

Oracle WRAP Utility

Merhaba Arkadaşlar,

Bu yazımda sizelere “WRAP” aracının ne olduğunu? PL/SQL kodlarımızı bu araç ile nasıl gizleyebileceğimizi anlatacağım. Oracle, yazdığı paketlerin (internal packages olarak bilinir) içeriğini wrap ile gizlemektedir. Mesela DBMS ile başlayan DBMS_JOB, DBMS_SCHEDULE, v.s paketlerin body kısmını görmek istediğimizde aşağıdaki gibi gizlenmiş olarak görmekteyiz.

01 CREATEORREPLACE PACKAGE BODY SYS.dbms_job wrapped
02 a000000
03 1
04 abcd
05 abcd
06 abcd
07 abcd
08 abcd
09 abcd
10 21a3 b16
11 lo1iuGKabyEptQ7AYEgtdK75BmEwg5Wr3l4FYKAPamS0YVj3PRYchH0hld1fVjvwrMuAW69P
12 IRpr66AU9anSde7G/s0SEqGnRq1lMtPIv5oS+LkLjWMsdviZ/8mTU+AsGapF4qqdz3JR4PZt
13 fzqcP2JOVo84jcefz+RAsEnvMxsTLRYBAxaBTlykY2wPpW6+XqZvj/lmCFhU18E/3TEWpRQb
14 5qZckusO2rpG787GwuV+s2zCeeXxFg4vs4uaQo05AYljfhxjOKSSbLg3TUk/VlckCE6PhXK/
15 ...
16 /

Bizde Oracle kurulumu ile gelen “WRAP” aracını kullanarak yazdığımız procedure, function veya paketleri gizleyebiliriz. Oracle 10g R2 ile birlikte DBMS_DDL paketi yardımı ile de dinamik kod gizleme işlemi yapabiliriz. WRAP komutu işletim sistemi üzerinde çalışan bir araçtır. Kullanım prototipi aşağıdaki gibidir.

1 wrap iname=input_file  oname=output_file

Burada iname, bizim içeriğini gizleyeceğimiz PL/SQL kod bloğudur. Oname ise gizlenmiş kod bloğunun kaydedileceği dosya adıdır. Oname belirtmeyebiliriz. Bu durumda source kodun bulunduğu dosya adı(input_file) “.plb” uzantısıyla kaydedilir. Aşağıdaki gibi bir prosedürümüz olsun. Ve “WRAP” aracını kullanarak içeriğini gizleyelim.

1 CREATEORREPLACEPROCEDUREtalip_test AS
2 BEGIN
3   DBMS_OUTPUT.PUT_LINE('Test proseduru');
4 END;
5 /

Yukarıdaki prosedürü talip_test.sql adıyla işletim sistemi üzerine kayıt edelim. “WRAP” ile içeriğini aşağıdaki gibi gizleyelim.

1 $ wrap iname= talip_test.sql
2 PL/SQL Wrapper: Release 11.2.0.1.0- Production on Thu Mar 10 13:50:13 2011
3 Copyright (c) 1993, 2009, Oracle.  All rights reserved.
4 Processing talip_test.sql to talip_test.plb

talip_test.plb isimli gizlenmiş kod bloğumuz oluştu. Bir editör ile baktığımızda içeriği aşağıdaki gibidir.

01 CREATEORREPLACEPROCEDURE talip_test wrapped
02 a000000
03 1
04 abcd
05 abcd
06 abcd
07 abcd
08 abcd
09 abcd
10 abcd
11 abcd
12 abcd
13 abcd
14 abcd
15 abcd
16 abcd
17 abcd
18 abcd
19 7
20 4d 89
21 BnIWMXkTu2kwu8RXi1DM+jgMrZUwg5nnm7+fMr2ywFwWoUf6VuOWoWLRzLh0i8DAMv7Shglp
22 uFKbskr+KLK957KzHQYwLK4k6rKBL8jlrFHkBneJJVEJMi720eokH/Y5pqcyH4I=
23 /

Gizlenmiş yukarıdaki kodu veritabanına direk deploy edebiliriz. Deploy ettikten sonrada problemsiz kodumuzu aşağıdaki gibi çalıştırabiliriz.

1 SQL>exec talip_test;
EBİLİSİMUZMANI

SİTEMİZDE TOPLAM | 265 | KONU BULUNMAKTADIR.
ebilisimuzmani.tr.gg
Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol