Bu giriş sistemi yeterince güvenli mi?

0 Cevap php

Bazı yeni özellikler eklemek için giriş sistemi içine baktıktan sonra, ben çok güvenli olmadığını öğrendim. Auth çerez user id, stamp, version, PASSWORD IN THE RAW, and a cookie id En azından ben böyle yaptım biri değilim söyleyebilirim şifreleme oldu, bir önceki geliştirici yaptım. (Evet, ben şifre yerine düz metin veritabanında bir karma olarak kaydedilir gerektiğini biliyorum. Orijinal geliştirici o şekilde yaptım ve ben henüz sabit değil.)

Yani güvenli giriş ve burada ve web üzerinde güvenli çerezlerin hakkında okuma bir sürü iş yaptım. Ben değil güvenli bir şekilde yapmak için ne kadar kolay olduğunu görebilirsiniz.

Site hakkında

  • aynı zamanda toplum şeyler (mesaj panosu, galeri) bir yeri vardır bir e-ticaret sitesi
  • giriş sayfası HTTPS zorlanır
  • Tüm hesap sayfaları ve ödeme de HTTPS zorlanır
  • Geçerli parola şifre veya e-posta adresini değiştirmek için gereklidir

İşte benim planım:

Goller:

  • Birden fazla yerde oturum açmanız beable
  • mağaza güvenli parçaları için tekrar giriş gerekir, sadece 30-60 dakika, çerez seti güvenli sürer sadece
  • mevcut tüm giriş görmek için seçenek
  • her yerde oturumu seçeneği
  • backend giriş güvenli ve daha uzun sürer. ofis dışından sınırlı giriş

      user gets page:
       no auth:
        have user sign in with username & pass          
        create new token
        expires =
         https on store: 30-60 min 
         backend in office: 5 days
         backend remote: 30-60 min?
         regular without remember me: session or 24 hours?
         regular with remember me: 30 days
        insert into user_session
        set cookie
       auth:
        token in db:
         set uid
         generate new token, new expires, insert into DB, remove old?
         upddate cookie
        token not in db:
         logout, requre sign in
    
    
      table user_session:
       uid
       uid_as   (for being 'logged in' as another user, admin feature only)
       token
       type
       ip address
       expires
       stamp
    
    
      cookie value: token|hash(token + user id, server key) 
    

Ben okudum ki her gelen, o ben ile geldi budur. Ama bir şey eksik gibi hissediyorum. Planımın veya sitenin tamamı için HTTPS kullanan başka daha güvenli hale getirmek için yollar ile herhangi bir sorun var mı? (Şu anda bir bazı sorunlara neden olur, ama daha sonra bu içine bakarak olacak)

0 Cevap