PostgreSQL Rol Kimlik Doğrulama Yöntemleri (trust,md5,sha256,ident)

PostgreSQL Rol Kimlik Doğrulama Yöntemleri (trust,md5,sha256,ident),

PostgreSQL de kimlik doğrulaması yapılırken pg_hba.conf  ile postgresql.conf devreye girmektedir. Kullanıcı postgresql e bağlanması için ilk olarak pg_hba.conf dosyasına bakar burada kullanılan yönteme göre doğrulamayı yapar , doğrulama sonucunda user şifre kontrolüne geçilir ve user sifre doğru ise bağlantı sağlanır. pg_hba.conf üzerinden ip bazlı, ip bloğu bazlı veya kullanıcı bazlı kısıtlamalar koyabiliriz.

Bu yazımda pg_hba.conf üzerinde ki md5,trust sha256,ident parametrelerinden bahsedeceğim.

TRUST:

Trust:   Postgresql e bağlanırken şifresiz bağlanmak için kullanılır. PostgreSQL e bağlanırken kullanıcıya şifre verdiğiniz durumda bile pg_hba.conf üzerinde trust ise kullanıcı şifresiz bağlanabilecektir. Pg_hba.conf üzerinde kullanıcı şifresiz şekilde bağlandı fakat cluster içerisinde sadece veritabanı içerisinde ki tek tabloya yetkisi varsa sadece o tabloyu görebilir daha fazlasını göremez.

 

MD5:

 

MD5, MIT Profesörü Ronald Rivest tarafından tasarlanan, bir kriptografik  algoritmadır. MD4’ün yeterince güvenli olmadığı kanıtlanınca MD4 yerine gelmiştir. Pg_hba.conf üzerinde MD5 algoritmasını kullanmak için gerekli değişiklikler yapabilirsiniz . Pg_hba.conf üzerinden MD5 parametresinin seçilmesi durumunda şifre clear text olarak gönderilmek yerine şifreli şekilde gönderilir .Bu sayede network snifing olaylarında şifrenin ele geçirilmesini önüne geçilmiş olacaktır. PostgreSQL de pg_authid içerisinde user ile bilgiler ve şifrenin MD5 değeri bulunmaktadır. Pg_authid içerisinde bulunan kullanıcının şifresinin MD5 halinin ele geçirilmesi durumunda MD5 değeri çözülerek şifre ile erişilmesi mümkündür.  Günümüzde MD5 algoritmaları da artık güvensiz olarak görülmekte ve bunun yerine SCRAM_SHA-256 kullanılmaktadır.

SCRAM-SHA-256: 

 

SCRAM-SHA-256 algoritması , MD5 güvensiz hale gelmesinden sonra kullanılmaktadır. MD5 algoritmasından daha güçlü olmasından dolayı kullanılmaktadır. SCRAM-SHA-256 algoritmasını kullanmak için postgresql.conf üzerinden password_encryption parametresini değiştirmeniz gerekmektedir. Bu değişiklik yapıldıktan sonra pg_hba.conf üzerinde de SCRAM-SHA-256 parametresini ekleyerek  kullanıcıların şifresini SCRAM-SHA-256 algoritmasına göre tutabilirsiniz.

İdent: 

İdent ile işletim sistemi üzerinde kullanıcı ile postgresql e bağlanmak için kullanılmaktadır.

 

 

Yukarıda bahsedilenler yöntemler en çok kullanılan yöntemlerdir. Bunlar haricinde PAM Authentication,

Certificate Authenticatin,RADIUS Authentication ,LDAP Authenticationlar gibi yöntemler kullanılmaktadır.

Loading