Firebird 3 veri şifreleme nasıl olur?
-
- Üye
- Mesajlar: 189
- Kayıt: 30 Eyl 2013 10:17
Firebird 3 veri şifreleme nasıl olur?
Merhabalar,
Firebird 3 ile birlikte verilerin içerisini şifreleme özelliğide gelmiş görünüyor. Bununla ilgili çalışma yapan oldu mu acaba?
Biraz araştırdım ama nasıl yapilacağini çözemedim.
Teşekkürler.
Firebird 3 ile birlikte verilerin içerisini şifreleme özelliğide gelmiş görünüyor. Bununla ilgili çalışma yapan oldu mu acaba?
Biraz araştırdım ama nasıl yapilacağini çözemedim.
Teşekkürler.
- fesiharslan
- Üye
- Mesajlar: 591
- Kayıt: 20 Eki 2006 11:37
- Konum: Erzurum
- İletişim:
Re: Firebird 3 veri şifreleme nasıl olur?
Merhaba;
Veri şifreleme benim de merak ettiğim ve sabırsızlıkla beklediğim özelliklerden biriydi.
Bu konuda @ramazan_t arkadaşımızın bir çalışması olmuş.
viewtopic.php?f=18&t=35675&hilit=firebird#p192308
Veri şifreleme benim de merak ettiğim ve sabırsızlıkla beklediğim özelliklerden biriydi.
Bu konuda @ramazan_t arkadaşımızın bir çalışması olmuş.
viewtopic.php?f=18&t=35675&hilit=firebird#p192308
-
- Üye
- Mesajlar: 189
- Kayıt: 30 Eyl 2013 10:17
Re: Firebird 3 veri şifreleme nasıl olur?
Teşekkür ederim fesih bey,
Linki inceledim. İngilizcem yetersiz olduğu için olsa gerek konuyu tam olarak anlayamadim. "Alter table" ile şifreleme yapiyor ama parametre olarak plugin istiyor. Bu plug-in nedir ve ben bunlari nerede kullanacagim. Trigerlar icerisinde kullanacaksam key bilgisi acik yazildigi icin herkes tarafindan gorunmeyecek mi?
Birde db dosyasini baska bir pc ye tasidigimda tum bu guvenlik ayarlari sifirlanacak mi?
Teşekkürler.
Linki inceledim. İngilizcem yetersiz olduğu için olsa gerek konuyu tam olarak anlayamadim. "Alter table" ile şifreleme yapiyor ama parametre olarak plugin istiyor. Bu plug-in nedir ve ben bunlari nerede kullanacagim. Trigerlar icerisinde kullanacaksam key bilgisi acik yazildigi icin herkes tarafindan gorunmeyecek mi?
Birde db dosyasini baska bir pc ye tasidigimda tum bu guvenlik ayarlari sifirlanacak mi?
Teşekkürler.
Re: Firebird 3 veri şifreleme nasıl olur?
examples/dbcrypt altında örnek bir proje varmış plugin geliştirmek için. Plugin işlevsel değil demiş, isteğinize göre yazın. Her hangi bir yerde özel olarak kullanmanıza gerek yok, sistem kendisi kullanacak. Yani db şifresi olan yine erişecek, sistem otomatik olarak şifleme ve çözme işlemini yapacak. Şifreleme için kullanılcak keyler client tarafından da gönderilebilir demiş.
Şifreli bir db'yi taşırsanız plugin olmadan açamazsınız. plugin içinde key içerecek diye bir şart yok, plugin key'i başka bir yerden alıyor olabilir. Zaten key ile datayı aynı makinada tutmak mantıklı değil.
Buradaki temel kural makinaya fiziksel erişim ile db erişiminin aynı kişi yetkisinde olmaması.
şifreleme ve çözme işlemleri performans gerektiren işler olduğu için plugin desteği vererek kullanıcılara bırakmışlar yöntemi. isteyen xor yazar isteyen rsa2048.
Şifreli bir db'yi taşırsanız plugin olmadan açamazsınız. plugin içinde key içerecek diye bir şart yok, plugin key'i başka bir yerden alıyor olabilir. Zaten key ile datayı aynı makinada tutmak mantıklı değil.
Buradaki temel kural makinaya fiziksel erişim ile db erişiminin aynı kişi yetkisinde olmaması.
şifreleme ve çözme işlemleri performans gerektiren işler olduğu için plugin desteği vererek kullanıcılara bırakmışlar yöntemi. isteyen xor yazar isteyen rsa2048.
Re: Firebird 3 veri şifreleme nasıl olur?
"With Firebird 3 comes the ability to encrypt data stored in database. Not all of the database file is encrypted: just data, index and blob pages."
release notes dan alıntı mealen, tüm database değil sadece datalar şifrelenir.
plugin page ve index sayfalarını şifreliyor muş. Okuduğum yeri tam bulamadım, fb dökümanlarında bir yerdeydi sanırım.
"Firebird-3.0.0/examples/dbcrypt/cryptDb.pas" plugin source u bu. pas içinde nasıl compile edileceğinide yazmış, ama sıkıntı fpc linux istiyor olması yani bunu ancak linux da derleyebilirsiniz. sebebi, dependencies ler ve onlarıda linux sürümünde var. osx de dahi yoktu. Oturupta derlemeye çalışmadım bu arada.
ALTER DATABASE ENCRYPT WITH <PLUGIN_NAME> [ KEY <key-name> ]
bu dataları şifreliyor, diyelimki şifrelediniz. db başka makinaya alındı, plugini kopyalamak işi çözer. bir diğer çözüm, db yi kopyalamadan önce
ALTER DATABASE DECRYPT
bu 3 kelimeyi yazıp çalıştırmak. Buna şimdi şifrelemek mi diyorlar ?bu sadece yaptım oldu yada çok istediler alın işte gibi bir şey. Tavsiyem bununla uğraşmayın. 3 kelime ile iptal edilen şifremi olur arkadaş. İptaliçin şifre dahi gerekmiyor!!!! fırsat bulursam forumlarınada yazmayı düşünüyorum, yada üye olan varsa yazabilir, ne kadar çok kişi dile getirirse olma ihtimali yükselir.
Yanılmıyorsam Alex db ye şifre koyma işinde şifreyi nerede saklıyacağız sorunu var demiş. db de kullanıcı system table ı var, role lar bunlara göre yapılıyor sanırım. onuda geçtim, 31 char lık alan kullanıyorlar, securydb de, şifre için. db dede sadece şifre için bukadar bir alan yeter. oda db create edilirken verilir. API dede değişiklik yapılır, username ve pass server bağlantısı için kullanılıyor. dbpass diye bir parametre daha eklenir, buda db ye bağlanmadan önce kontrol edilir. bu create eden şifre admin yetkili ve db ye tüm müdahaleyi yapacak kişi olur. hepimizin istediğide bu değil mi zaten ? db de ki kullanıcılara role işlerini bu kullanıcı ile yaparız, gerekirsede admin yekili kullanıcı ekleriz buda var olan sistemdeki gibi çalışır, yani şifre mifre istemeden bodozlamadan dalar sisteme
release notes dan alıntı mealen, tüm database değil sadece datalar şifrelenir.
plugin page ve index sayfalarını şifreliyor muş. Okuduğum yeri tam bulamadım, fb dökümanlarında bir yerdeydi sanırım.
"Firebird-3.0.0/examples/dbcrypt/cryptDb.pas" plugin source u bu. pas içinde nasıl compile edileceğinide yazmış, ama sıkıntı fpc linux istiyor olması yani bunu ancak linux da derleyebilirsiniz. sebebi, dependencies ler ve onlarıda linux sürümünde var. osx de dahi yoktu. Oturupta derlemeye çalışmadım bu arada.
ALTER DATABASE ENCRYPT WITH <PLUGIN_NAME> [ KEY <key-name> ]
bu dataları şifreliyor, diyelimki şifrelediniz. db başka makinaya alındı, plugini kopyalamak işi çözer. bir diğer çözüm, db yi kopyalamadan önce
ALTER DATABASE DECRYPT
bu 3 kelimeyi yazıp çalıştırmak. Buna şimdi şifrelemek mi diyorlar ?bu sadece yaptım oldu yada çok istediler alın işte gibi bir şey. Tavsiyem bununla uğraşmayın. 3 kelime ile iptal edilen şifremi olur arkadaş. İptaliçin şifre dahi gerekmiyor!!!! fırsat bulursam forumlarınada yazmayı düşünüyorum, yada üye olan varsa yazabilir, ne kadar çok kişi dile getirirse olma ihtimali yükselir.
Yanılmıyorsam Alex db ye şifre koyma işinde şifreyi nerede saklıyacağız sorunu var demiş. db de kullanıcı system table ı var, role lar bunlara göre yapılıyor sanırım. onuda geçtim, 31 char lık alan kullanıyorlar, securydb de, şifre için. db dede sadece şifre için bukadar bir alan yeter. oda db create edilirken verilir. API dede değişiklik yapılır, username ve pass server bağlantısı için kullanılıyor. dbpass diye bir parametre daha eklenir, buda db ye bağlanmadan önce kontrol edilir. bu create eden şifre admin yetkili ve db ye tüm müdahaleyi yapacak kişi olur. hepimizin istediğide bu değil mi zaten ? db de ki kullanıcılara role işlerini bu kullanıcı ile yaparız, gerekirsede admin yekili kullanıcı ekleriz buda var olan sistemdeki gibi çalışır, yani şifre mifre istemeden bodozlamadan dalar sisteme
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Re: Firebird 3 veri şifreleme nasıl olur?
Buradaki arkadaşların şifreleme işleminden beklentisi farklı sanırım. Bir çok arkadaş, db yapısı gözükmesin, db kopyalanarak başka makinada açılmasın beklentisinde benim gördüğüm. Ancak kurumsal piyasa ve diğer db üreticilerinin böyle bir beklentisi olduğunu sanmıyorum.
Diğer db'lerde olduğu gibi fiziksel olarak db dosyalarına erişim olduğunda verilere erişilememesi amaçlanmış sadece. MSSQL'de de mantık aynı. Sonuçta yetkili bir kullanıcınız varsa db şifreleri de olsa verileri kullanabilirsiniz, ekstra birşey yapmanıza gerek olmaz.
@freeman35 3 komutla kalkan şifrelememi olur demişsiniz ancak büyük ihtimalle yetkiye bağlı bir komuttur. Yetkiniz varsa tabiki yapabilirsiniz.
Yukarıda da yazdığım gibi, sunucuya fiziksel erişen kişiyi, db admin'i ve şifreleme key'ini fiziksel olarak ayırmazsanız şifrelemenin hiç bir anlamı yok. Diğer veri tabanları için de durum aynı.
Diğer db'lerde olduğu gibi fiziksel olarak db dosyalarına erişim olduğunda verilere erişilememesi amaçlanmış sadece. MSSQL'de de mantık aynı. Sonuçta yetkili bir kullanıcınız varsa db şifreleri de olsa verileri kullanabilirsiniz, ekstra birşey yapmanıza gerek olmaz.
@freeman35 3 komutla kalkan şifrelememi olur demişsiniz ancak büyük ihtimalle yetkiye bağlı bir komuttur. Yetkiniz varsa tabiki yapabilirsiniz.
Yukarıda da yazdığım gibi, sunucuya fiziksel erişen kişiyi, db admin'i ve şifreleme key'ini fiziksel olarak ayırmazsanız şifrelemenin hiç bir anlamı yok. Diğer veri tabanları için de durum aynı.
Re: Firebird 3 veri şifreleme nasıl olur?
@mkysoft 3 kelime de şifre parametresi yok. local de login olurken de db yi create ederken de, kullanıcı adı ve şifre belirtmeye gerek yok. Yani local kullanımlarda hiç bir şey için yetkilendirme yok. Evet haklısın, fazla kurulsal düşünülmüş. local i herkes kendi pc sini kullanır, sorumlusuda o dur diye düşünüyorlar sanırım. Yazıyı bulamadım, dbcrypt için gereken şifre yanılmıyorsam db içine kaydediliyor. Banada burdan sonrası mantıksız geliyor işte, db ye şifre ekleniyor, kullanırken bununla şifreleniyor, ama şifre gerektirmeyen decrypt dedinmi şifre kalkıyor. isql den de çalıştırılacak bir komut herhangi bir tool da gerekmiyor.
Evet bende metadata nın görünmemesini istiyorum, 2.5 da sp ve trigger body lerini silerdim. Ben onlarca zaman harcamışım, bişi bilmeyen birisinin çalıp ben yaptım demesini istemem. Bunuda fb 3 de kaldırmışlar, body leride nullayamıyoruz.
Diğer lerinde olmaması, firebird dede olmamalı demek değildir diye düşünüyorum, bu eksiklikse, ve çok kişi tarafından talep ediliyorsa bunun olması gerektiğini düşünüyorum.
Evet bende metadata nın görünmemesini istiyorum, 2.5 da sp ve trigger body lerini silerdim. Ben onlarca zaman harcamışım, bişi bilmeyen birisinin çalıp ben yaptım demesini istemem. Bunuda fb 3 de kaldırmışlar, body leride nullayamıyoruz.
Diğer lerinde olmaması, firebird dede olmamalı demek değildir diye düşünüyorum, bu eksiklikse, ve çok kişi tarafından talep ediliyorsa bunun olması gerektiğini düşünüyorum.
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
-
- Üye
- Mesajlar: 189
- Kayıt: 30 Eyl 2013 10:17
Re: Firebird 3 veri şifreleme nasıl olur?
Merhabalar,
Öncelikle cevaplarınız için teşekkür ederim. Aslında benim sorunum musterilerim flash disklerde verilerini tutuyor. Bu flash lar kayboldugunda verilere erisilememesi veya yetkisiz kisilerin musterinin pc basina oturup db leri alip giderse evinde bu db lerin icindeki verilere ulaşamamalari.
Firebird 3 ile veya disardan baska yontemlerle bunu yapmanın yolunu ariyorum.
Öncelikle cevaplarınız için teşekkür ederim. Aslında benim sorunum musterilerim flash disklerde verilerini tutuyor. Bu flash lar kayboldugunda verilere erisilememesi veya yetkisiz kisilerin musterinin pc basina oturup db leri alip giderse evinde bu db lerin icindeki verilere ulaşamamalari.
Firebird 3 ile veya disardan baska yontemlerle bunu yapmanın yolunu ariyorum.
-
- Üye
- Mesajlar: 189
- Kayıt: 30 Eyl 2013 10:17
Re: Firebird 3 veri şifreleme nasıl olur?
Teşekkür ederim Ramazan bey.