GÖRÜNÜŞLER (VİEWS)
Görünüş Temel tablolar üzerinde yeni bir tablo almak için yapılan işlemlerin sonucu Sanal tablo- gerçekten veri tabanında yoktur ve kullanıcı isteği ile oluşturulur CREATE VIEW görünüş_adı[sütun_adı[,…])] AS sorgu [ WITH[CASCADE I LOCAL ] CHECK OPTION]
Görünüş -örnek B3 şubesinde çalışanlar hakkında, maaş bilgilerinin yer almadığı görünüş oluşturmalı CREATE VIEW staff3 AS SELECT sno, fname,lname,address, tel_no,position FROM staff WHERE bno=‘B3’; B3 şubesi yöneticisinin, yalnız kendi şubesinde çalışanlar hakkında ayrıntılı bilgi ala bileceği görünüşü oluşturmalı CREATE VIEW manager3_staff AS SELECT* FROM staff WHERE bno=‘B3’;
görünüşten yeni görünüşün alınması CREATE VIEW staff3 AS SELECT sno, fname,lname,address, tel_no,position FROM manager3_staff; Bilgilerin görünüşten alınması SELECT * FROM manager3_staff; Manager3_staff staff3 staff
Gruplaştır ma ve bitiştirme işlemlerinin görünüşlerde kullanılması Kiralık evleri kontrol eden personeller hakkında görünüş oluşturmalı ( şube numarası, personel numarası ve kontrol ettikleri evlerin sayısı) CREATE VIEW staff_prop_cnt(branch_no,staff_no,cnt) AS SELECT s.bno,s.sno,COUNT(*) FROM staff s, property_for_rent p WHERE s.sno=p.sno GROUP BY s.bno,s.sno;
Görünüşün silinmesi ve güncellenmesi DROP VIEW görünüş_adı[RESTRICT I CASCADE] CASCADE-tüm ilgili nesneler silinecek RESTRICT-yalnız görünüşte atıfta bulunulan nesneler silinecek CREATE VIEW manager3_staff AS SELECT* FROM staff WHERE bno=‘B3’; WITH CHECK OPTION; Staff tablosu üzerinde manager3_staff görünüşü oluşturuluyor. Görünüşte with check option ifadesi güncellemelerin görünüşe uygunluğunun kontrol edileceğini gösteriyor
Güncelleme sorunları UPDATE manager3_staff SET bno=‘B5’ WHERE sno=‘SG37’; INSERT INTO manager3_staff VALUES (‘SL15’,’Mary’,’Black’,’2 Hillcrest,London,NV2’,’ ’,’Assistant’,’F’,’ ’,8000,’WM787850T’,’B2’); Sorgu işlenilmeyecek, çünkü ‘B2’ manager 3_staff görünüşünün üyesi değildir. Bu görünüşte yoklama olduğu için INSERT işleminin görünüş koşullarına uygunluğu yoklanılacak
Güncelleme Sorunları (devamı) CREATE VIEW low_salary AS SELECT* FROM staff WHERE salary<=1000; CREATE VIEW high_salary AS SELECT* FROM staff WHERE salary>10 000; WITH LOCAL CHECK OPTION
Güncelleme Sorunları (devamı-2) CREATE VIEW manager3_staff AS SELECT* FROM high_salary WHERE bno=‘B3’; UPDATE manager3_staff SET salary=9500 WHERE sno=‘SG37’; Güncelleme baş tutmayacak; görünüşün oluşturulma koşulu ile tutarsızlık bulunmaktadır (9500<10000) staff High_salary Manager3_staff
GÜVENLİK
GÜVENLİK (SECURITY) VT güvenliği- bilgisayar olmadan veya bilgisayarlı yöntemlerle dış ve iç tehditlere karşı veri tabanının korunması Güvenliğin bozulması sonuçları –Güvenliğin kaybı –Gizliliğin kaybı –Bütünlüğün kaybı –Erişebilirliğin kaybı
Tehditler (threat) Tehdit-veri tabanı sistemine olumsuz etki gösteren olay veya durum İç ve dış tehdit Donanım tehditleri VTYS ve uygulama tehditleri VT tehditleri İletişim Ağı tehditleri Kullanıcı tehditleri Programcı/operatör tehditleri Veri/Veri yöneticisi tehditleri
Güvenlik Önlemleri Bilgisayar Tabanlı Denetim yetkilendirme (autorization) görünüşler yedekleme ve kurtarma (backup and recovery) bütünlük şifreleme /encryption) yöntemler
Yetkilendirme- sisteme veya sistemin nesnelerine kişinin meşru erişimini sağlayan hakların veya ayrıcalıkların onaylanması Geçerli kılma (authentication)- kullanıcının doğru kullanıcı olup olmadığının belirlenmesi mekanizması Yedekleme-periyodik olarak veri tabanının kopyasının alınması ve dosyaların (programların) çevrimdışı bellek ortamlarında saklanılması Günlük (journaling)- hatalardan sonra koruma etkililiğini arttırmak için güncelleme kayıtlarının tutulması Güvenlik Önlemleri (devamı)
Sahiplik ve ayrıcalık Kullanıcı kimliği TürügrupÜye kimliği SG37userSalesSG37 SG14userSalesSG14 SG5user Salesgroup ReadUpdateInsertDeleteall
Erişim Denetimi matrisi Kullanıcı kimliği PnoTypePriceOnoSnoBno Sorgu lama sayısı sınırı SG SG51111 yok Sales ReadUpdateInsertDeleteall
Şifreleme (encryption)- özel program aracılığıyla verilerin, şifreaçıcı olmadan okunmasının mümkün olmadığı biçime dönüştürülmesi Güvenlik yöntemleri – yetkilendirme ve geçerli kılma – yedekleme – kurtarma – denetim (audit) – yeni uygulama programlarının kurulması – sistem yazılımının kurulması (yükseltilmesi- upgrading)
Bilgisayarsız Güvenlik Önlemleri Güvenlik stratejisi ve gizlilik planı Personel denetimi Donatımın güvenliği Sözleşmeler Fiziki erişimlerin denetimi Bilgisayarların Güvenliği VTYS ve Web güvenliği
Güvenlikle bağlı risklerin çözümle n mesi süreci güvenlik grubunun oluşturulması Çözümleme kapsamının belirlenmesi Tüm mevcut önlemlerin tanımlanması Tüm değerli verilerin tanımlanması ve değerlendirilmesi Tüm tehditlerin ve risklerin tanımlanması ve değerlendirilmesi Önlemlerin seçilmesi, maliyet/yarar çözümlemesi Tavsiyelerin hazırlanması Güvenlik sisteminin dene timi
Gizlilik-Privacy Gizlilik- Kasıtlı veya kasıtsız olarak bireysel bilgilerin edinmesinin, yazılmasının, saklanmasının, söylenmesinin yasak olması Veri Koruma (protection)- bireysel verilen kasıtlı veya kasıtsız tehlikelerden korunması ve uygun güvenlik önlemlerinin oluşturulması