PHP - Altyapıları, ORM, Encapsulation

3 Cevap php

Kenara dilleri / programlama ortamlarının, PHP, ORM bir çerçeve kullanarak ve hala DAL / BLL için kapsülleme uymak birçok geliştiriciler vardır? Birkaç geliştiriciler bir ekip yönetme ve benim geliştiriciler ORM yerleşik kullanarak çünkü çerçevelerin çoğu günlük kod teftiş yapmak için bana ihtiyaç olduğunu bulma yaşıyorum.

Şu anda, ben sınıfları oluşturmak ve onlara ek sorgular / yazma fonksiyonları için bir alana sahip, kendimi rezil etmek için bir araç kullanıyorum. Olsa neler oldu neler, bunlar veri iznine uygun kontrolleri yapıyor, ya da anahtar alanları şeklinde manipüle izin vermeyerek güvenlik açıklarını yaratıyor edilir.

Yeni bir ekip ve (Ben Python / Ruby çerçeveler aynı sorunları gördüm) yeni bir dil olsun başka herhangi bir öneri.

3 Cevap

Bir takım atmadan asla bir seçenek: yerine onu geliştirmek!

  • Bu konularda onları daha bilinçli hale getirmek için güvenlik atölyeler düzenlemek.
  • Tanıtmak (hatta daha iyi: them tanıtmak istiyoruz) (prepared statements iki örnek bir security-aware hungarian notation veya kullanımını) kod kılavuzu bu sorunları ele daha iyi hatları
  • Kod incelemelerde kısa geliş adresi - sadece bulunan sorunlu parçacıkları göstermek ve güvenlik için çok önemli olduğunu açıklamak, güvenliğini ihmal için onları suçlamıyorum [birini seçin: Bu proje / müşteri / şirketinizin itibarını / şahsen]
  • Onları kendi ya da eşin koduna güvenlik denetimleri yapalım. Onları bu tür güvenlik açıkları yararlanmaya ne kadar kolay olduğunu öğrenelim.
  • Daha iyi bir güvenlik modeli destekleyen diğer araçlar / çerçeveler bulun. Ama uyardı: Bu seçenek very pahalı! Sizin programcılar eski çerçevesinde kodunu korumak ve yeni bir tane (: Onlar yeni bir çerçeve ile birlikte yeni bir dil öğrenmek gerekir kötü durum) öğrenmek gerekir

Ama temelde bu sizin geliştiricileri ile işbirliği çözmek zorunda olduğu bir konudur. Onlara savaş ilan ederse, siz ne olursa olsun (geliştiriciler için sonucu.) Kaybetmeye uğrarsınız

Eğer kodlama kültürünü geliştirmek istediğiniz gibi bana geliyor. Rules of Extreme Programming bakabilirsiniz. Belki birkaç teknikleri kabul edebilir.

Temelde, ben şu anda geliştiriciler ve sizin aranızda çok az iletişim var olduğu izlenimini alıyorum. Ben sadece içine okuma olabilir, ama Devs mahzende kilitli ve başka bir yerde oturan ve them hakkında sinirli alıyorsanız gibi bana geliyor. Düşünce bu tür değiştirin. Sen takımın bir parçası.

Lütfen geliştiriciler koduna tanıtmak güvenlik farkında değilseniz, haftalık kod değerlendirme sahip düşünün. Geliştiriciler yazdıkları kodu hakkında konuşalım. Onları birbirlerinden öğrenelim. Topluca sahip kodunu olun. Foster öğrenme ve yapıcı eleştiri.

Team hayır yoktur, unutmayın.

Ben önerebilir Nepthali? Bu bir ORM değil, ama çerçeve güvenliği zorlamak için tasarlanmıştır. I.E. tüm değişkenler ekrana çıktı önce kodlanmış; explicitely değil çok tanımlanmadığı sürece.

Hiçbir ORM, vb böylece istediğiniz içine hangisi ORM takabilirsiniz sahip, aynı zamanda oldukça yalın. Aslında, oldukça güzel.