Ana içeriğe atla

Web Projelerinde Doğru Yetkilendirme Tekniği

Masaüstü ve ya kişisel uygulamalar için yetkilendirme önemli olmasa da, çok kullanıcılı web projelerinde yetkilendirmelerin doğru şekilde yapılması, kullanıcıların ve ya kullanıcı gruplarının hangi servislere, metotlara erişebileceğini düzenlemek çok önemlidir. Proje geliştirme metodundan bağımsız olarak yetkilendirme yapısının, proje başlangıcında doğru bir şekilde yapılandırılması gerekiyor. Örneğin proje geliştirme metodolojisi olarak Agile kullanıyor olsanız bile proje başlangıcında yetkilendirme yapısını oluşturmak çok önemlidir. Hatta kendi firma veya organizasyon yetkilendirme yapınızı oluşturmak proje başlangıç sürecinde işlerinizi çok kolaylaştıracaktır. Özellikle yazılımların çok hızlı üretilmesi gerektiği durumlar için hazır yetkilendirme yapısının olması işinizi çok kolaylaştıracaktır. Kendi yetkilendirme yapınızı oluşturuyorsanız bu yapının da evrensel olması, yani tüm projelere uygulanabilir olması çok önemlidir. Bu makalemde, tüm projelere uygulanabilir ortak bir yetkilendirme yapısının oluşturulması konusunu anlatacağım. Amacım Authentication ve Authorization işlemlerinin uygulanmasını anlatmak değil. Bu makalenin temel amacı Authorization işlemi için altyapının hazırlanmasıdır. Hangi ortamda veya hangi programlama dili kullandığınızdan bağımsız olarak tüm programlama dillerinin altyapısında bu iki işlemi de destekleyen yapı mevcuttur. Bu yapılar küçük projeler için geçerli olsa da evrensel boyutta, tüm projelere uygulanabilir değildir.  


Doğru yetkilendirme işlemleri için önemli nokta kullanıcı ve kullanıcı grubu yetkilendirmesinin uygulanabilir olmasıdır. Örneğin on bin, yüz bin veya milyonlarca kullanıcınız olduğunu düşünün. Bu sayıda bir kullanıcı kitlesinin yetkilendirmesini tek-tek yapmak imkansızdır. Bu yüzden kullanıcı grubu tanımlaması önemlidir. Aynı zamanda özel kullanıcıları da düşünürseniz bazı kullanıcılara özel yetkiler vermek isteyebilirsiniz. Bu durumda da kullanıcı bazlı yetkilendirme yapısının olması çok önemlidir. Burada anlatmak istediğim konu yetkilendirme işleminin kullanıcı bazlı ve kullanıcı grubu bazlı yapılabilir olmasının tüm projeler için ihtiyaç olduğudur. Sınırları kesin olan projelerde bile, öyle bir durum oluşabilir ki, kullanıcı bazlı yetkilendirme yapmak zorunda kalabilirsiniz. Örneğin misafir kullanıcılar için yeni kullanıcı grubu oluşturabilirsiniz, ama 1 kişiye vereceğin yetkilendirme için ayrı bir kullanıcı grubu oluşturmak belirli bir süre sonra projenizin kontrolünü zorlaştırır. O yüzden projelerde doğru yetkilendirme için, kullanıcı bazlı yetkilendirme ve kullanıcı grubu bazlı yetkilendirme yapılabilmelidir. Bu işlemler için kullandığınız programlama diline uygun yapıyı kullanmak size kalmış. Kullanıcı grubu tanımlamaları için enumlar kullanabilirsiniz veya direk veri tabanına kullanıcı gruplarını, yetkileri yazıp Authorization işlemi yaparken doğrulatabilirsiniz. Örneğin veri tabanında işlem yetkilendirmelerini yazarken kullanıcı grubu yetki yerine, kullanıcı yetki yazarak çözüm üretebilirsiniz. Bu veri tabanında daha fazla kayıt olmasına, sorgulama işleminin daha uzun sürmesine de neden olabilir. O yüzden benim kullandığım yöntem kullanıcı grubu yetki, ve kullanıcı yetki gibi bir yapıyı kullanmayı sizde de kendi projelerinize uygulayabilirsiniz. Bu makalenin temel amacı zaten doğru yetkilendirme mantığını anlatmak. Buna uygun çözümler üretebilecek kapasitede olduğunuzu düşünüyorum…
Son olarakta CMS yazılımlarına değineceğim. Web projeleri için CMS yazılımları kullanıyorsanız, bu yazılımların çoğunun kendi yetkilendirme yapısının olduğunu görebilirsiniz. Eğer proje için CMS yazılımlarından birini kullanıyorsanız, bu yazılımların altyapısındaki yetkilendirme yapısını kullanmanız tavsiye ederim. Hatta CMS seçimi yaparken de, yetkilendirme yapısını inceleyerek seçim yapın. 
Özetleyecek olursak ve tecrübeme dayanarak söylüyorum ki kullanıcı ve kullanıcı grubu yetkilendirmesini birlikte kullanmalısınız. Eğer projeye yeni başlıyorsanız bu teknikleri kullanın. Eğer projeniz belirli bir noktaya gelmiş ve kullanıcı ve kullanıcı grubu yetkilendirmesi yoksa mümkün olduğunca anlattığım şekilde bir yetkilendirme yaparsanız, projenin geleceği için doğru bir seçim yapmış olursunuz... 

Yorumlar

Bu blogdaki popüler yayınlar

Medyan (Ortanca) Nedir? Nasıl Hesaplanır? Nerelerde Kullanılır?

Medyan işlemi olasılık hesaplamalarında sıkça kullanılan bir sayı dizisinin ortalamasını hesaplamak için alternatif yöntemlerden bir tanesidir. Ortanca medyan işleminin diğer adıdır. Matematiksel olarak medyan işlemi bir sayı dizisi küçükten büyüğe sıralayarak ortada kalan elemanı medyan değeri olarak belirleme işlemidir. Örnek verecek olursak: 2, 1, 5, 4, 5, 1, 2, 3, 5 serisi sıralanırsa 1, 1, 2, 2, 3, 4, 5, 5, 5 serisi elde edilir. Bu seri 9 elemanlı olduğundan ortadaki, yani 5. eleman (medyan) olacaktır. 5. eleman 3 sayısıdır. Yani ortanca değeri 3'dür Eleman sayısı tek sayı olan bir seride medyan değerin sırasının hesaplaması şu şekilde formüle edilir. Medyanın Sırası = (Eleman Sayısı + 1) / 2 Bu formülü yukarıdaki örneği uygulayacak olursak; Medyanın Sırası = (9 + 1) / 2 = 5 Veri serisi eleman sayısı bir çift sayı ise bu durumda serinin 2 medyanı olacaktır. Örneğin 2, 1, 5, 4, 5, 1, 2, 3, 5, 4 serisi sıralandığında 1, 1, 2, 2, 3, 4, 4, 5, 5, 5 s

Ağaçlar Kireçle veya Badana İle Neden Boyanır?

Ağaçlar kireçle boyanmasının veya badana yapılmasının hem çevreye hem de doğaya, ağaçlara faydası var. Bu makalede bu geleneği enine boyuna tartışmaya çalıştık. Ağaca zarar veren mikrop ve bakterileri öldürür. Ağacı çok aşarı soğuk havalarda ve çok aşırı sıcak havalarda korur. Ağacın çürümesini ve kurtlanmasını önler. Ağacın gövdesinin alabileceği zararları en az düzeyde düşürmeyi sağlar. Hoş, güzel, hijyenik, temiz pırıl pırıl bir görüntü oluşturur. Ayrıca çok sıcak havalarda da ağacı yanmaya karşı korumak. En büyük etkisi soğuk havalarda ağacı don vurmalarına karşı korumak . Küresel ısınma göz önüne alındığında mevsim değişiklikleri ani don, ani ısı artışları ve azalışları sonucunun doğuracağı etkenler için yararlı etkin bir yöntem. Gövdeden obur dalların çıkmasını azaltmak için sürülür. Kireçleme ağaçları güneş yanığından korumak için yapılıyor. Ağaçlar da güneşten yanabiliyorlar. Bu arada odun dokudaki gözenekleri doldurarak kapattığı için, zararlıların yuv

Azərbaycan Dilində Vurğu Qəbul Etmeyen Şekilçiler

Sözlərdə hecalardan birinin digərlərinə nisbətən daha qüvvətli deyilməsinə heca vurğusu deyilir. Üzərinə vurğu düşən hecaya isə vurğulu heca deyilir. Azərbaycan dilində vurğu adətən söz sonuna düşür. Söz şəkilçi qəbul ederkən vurğu adətən şəkilçinin üzərinə keçir. Məsələn: çiç ə k - çiçəkl ə r - çiçəklərd ə n məkt ə b - məktəbl i - məktəblil ə r - məktəblilərd ə n Buna baxmayaraq dilimizdə bir sıra şəkilçilər var ki onlar vurğu qebul etmirlər. Bu məqalədə Azərbaycan dilində vurğu qebul etməyən şəkilçilər incələnəcək ve bu şekilçilərin hansı hallarda vurğu qebul edib hansı hallarda vurğu qebul etmediyi araşdırılacaqdır. Eyni zamanda bildirmək istəyirəm ki vurğu ilə bağlı daha geniş və ətraflı məlumat üçün Azərbaycan Dilində Vurğunun Praktik Məsələləri adlı məqaləyə də nəzər yetirə bilərsiniz.  1. İsimlərdəki şəxs(xəbərlik) şəkilçiləri Məsələn: müəli'məm müəli'msən müəli'mdir müəli'mik müəli'msiniz müəli'mdirlər Qeyd: -dır4