php basit yetkilendirme / login yeteneği

4 Cevap php

Ben ilk defa benim sitenin üzerine kullanıcı giriş uygulamak için arıyorum. Benim kendi çözüm oluşturmak, ya da bir şey açık kaynak uygulamak ya mutluyum, ancak hiçbir paketi şimdiye kadar benim arama bariz bir seçim olmuştur. Aynı şekilde, ben iyi bir ara php programcısı olarak, benim kendi çözüm rulo eğer belirgin bir şey özledim, ve iyi ve gerçekten açık kapı bırakmak için son derece olası olduğumu tam olarak farkında değilim.

Herhangi bir öneriniz? Biz burada süper hassas veya ödeme veri bahsetmiyoruz, ama eşit, insanların pisliği siteme sahip değil hevesli değilim!

requirements are - php based - simple as possible, not need for fancy bells and whistles - not Zend framework, since i've now rolled my own very basic frameworkthanks to this post

Giriş için teşekkür ederiz.

4 Cevap

Birkaç iyi bir güvenlik yakaladım ait olan

  • never veritabanında bir un-şifreli kullanıcıların parola saklamak
  • never, kullanıcıların parola veya oturumu veya çerez veri şifre bile karma saklayın.
  • Eğer oturum açma güvenli olduğundan emin olması gerekir Eğer https kullanmak zorunda.

Ben kurabiye ile giriş sistemlerine binada bu makale çok yararlı bulundu:

"Sen çocuk gözünü koyacağım."

Güvenlik zordur. Bunu söylemekten nefret ediyorum, ama senin oran güvenli, basit bir yetkilendirme düzeni oldukça ince yapım. Burada kolay modu vardır. Yani çeşitli çerçeveler / CMSes doğrulama kodu bir demet aracılığıyla okuma ve başkalarının onu nasıl yapmış görmek ve araştırma başlayabilir diğer yerlerde başlamak isteyebilirsiniz.

Here are some links: http://www.topmost.se/personal/articles/casual-cryptography-for-web-developers.htm http://pear.php.net/packages.php?catpid=1

I some http kimlik yeterlidir kullanarak kendi bina kullandığı için bulabilirsiniz. Ben bir başlangıç ​​noktası olarak this öneririz.

Eğer kendi temel çerçevesini olduğundan, ortak bazı yerde doğrulama kodu dahil etmek çok zor olmamalı.

Bazı avantajları

  • Değil bir sürü kod.
  • Does not require cookies or URL rewriting.

Dezavantajları

  • Doesn't scale well to more granular access control.
  • No easy way to "log out".

--
bmb

Bu bir acemi olarak, kod o kadar da zor ve eğlenceli değil.

Sen (MySQL veritabanı diyelim) veri depolamak için bir yere ihtiyacım var.

En azından bir giriş alanı var, ve bir şifre alanı olmalıdır. (Şifre örneğin sha1 () kullanılarak crypter saklanmalıdır).

Şimdi, bir giriş formu sergilemek zorundayız. Ben bu sizin için Tamam olduğunu varsayalım.

Biz giriş ve şifre almak zaman, ne yapılması gereken nedir?

Login_base ile bir maç == login_form ve password_base == sha1 (password_form) olduğu wether görmek için veritabanını sorgulamak.

Evet ise, örneğin bir oturumda gibi bir şey ayarlayın.

Yani bir yapman gereken bir sayfada, sadece bir session set olup olmadığını kontrol etmelisiniz.

Bu, esas içindir; o zaman bunu bazı düzeyleri ekleyebilir ve.