folder Tahribat.com Forumları
linefolder Asp - Php - Cgi - Perl
linefolder PHP Rest Api Güvenliği Nasıl Sağlanır ?



PHP Rest Api Güvenliği Nasıl Sağlanır ?

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ★★★★
    Genki
    Genki's avatar
    Kayıt Tarihi: 24/Ağustos/2005
    Erkek

    Evet beyler sorumuzu detaylandıracak olursak , rest api şeklinde çalışma yaparken aldığınzı güvenlik önlemleri nelerdir ?

    Senaryo üzerinden gidersek ,

    Bir üyelik sistemi olduğunu varsayıp üye kaydı , üye login işlemlerini yaparken güvenlik olarak nelerdir ?

     

    site.com/api/uyeOlustur adresinde üyeliğimizi oluşturacağımız functionu çağırdığımzıda hangi güvenlik önlemlerini nasıl alıyorsunuz ?

    Mesala üyelik oluşturuken kullanıcıya güvenlik kodu soruyormusunuz, soruyorsanız kodu nerede oluşturup kullanıcıya sunuyorsunuz ?

    Yada login işleminde token kullanımını nasıl yapıyorsunuz, token oluşturup doğrulama dışında başka işlemler yapıyormusunuz ?

    Hadi biraz bu konuları tartışalım bakalım nasıl fikirler ortaya çıkacak

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    MhmdAlmz
    MhmdAlmz's avatar
    Kayıt Tarihi: 09/Ağustos/2015
    Erkek

    Hocam token'i sadece deneme amaçlı kullanmıştım Proje içine tokenli işlem dahil etmedim şuana kadar gerek duyarsam eklerim .

    Token de şöyle oluyor mesela Kullanıcı adı şifre doğru ise Kullanıcıya Değişken tokenler veriyorsun bu tokenlerle get veya post işlemini yapıyorsun. 

    Bu sebepten dolayı adam giriş yapmadığı sürece adamların senin servisini kullanmasına izin vermiyorsun.

    Bide şöyle bir önem almak gerekiyor mesela adam sonsuz defa senin servisine post ederek bütün başarılı loginleri çekebilir bunun için de 3.-5. denemeden sonra Adama "hayırdır sen heykır mısın yoksa ? " dedirtmen gerekiyor.

    bide şöyle bir önlem alınması gerekiyor mesela 1 key ile bütün işlemleri yapamaz kullanıcıyı da izlemen gerekiyor. Hatta yaptığı postlara falan da kısıt koylamısın örneğin E-ticaret sistemi yaptım diyelim adam giriş yaptı ordan tokeni çekti. bu adam o token ile milyon tane ürünü sepete koyabilir yada 1 ürünü 50-60 defa alıp tek 1 defa ödeme yapabilir bunların da önlemleri almak gerekiyor sunucu tarafında. Şahsen ben gerek kalmadıkça program içerisine kod yazmamaya çalışıyorum . hep sunucu çalışsın ama bu seferde sunucuyu yoruyorum . Tartışılabilir :D bunlar benim bildiğim yada bildiğimi sandıklarım :) 


    Andolsun kuşluk vaktine ve dindiği zaman o geceye ki, Rabbin sana veda etmedi ve darılmadı! Ve kesinlikle senin için sonu önünden (ahiret dünyadan) daha hayırlıdır. ileride Rabbin sana verecek de hoşnut olacaksın! O, seni bir yetim iken barındırmadı mı? Seni, yol bilmez iken (doğru) yola koymadı mı? Seni bir yoksul iken zengin etmedi mi? Öyle ise, sakın yetime kahretme (onu horlama)! El açıp isteyeni de azarlama! Fakat Rabbinin nimetini anlat da anlat!
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    NmC
    NmC's avatar
    Kayıt Tarihi: 23/Kasım/2008
    Erkek

    https://jwt.io/

    Login için bu standarta bakabilirsin.

    Ip request limiti koymak mantıklı.

    Telefon için yazdığını varsayıyorum. Captcha falan kullanıcıyı soğutan birşey telefonda. Ama illa yapıcam diyorsan kodu server tarafında oluşturup resim url'ini vermen gerek.

    Genel olarak aklıma gelenler bunlar.


    There are 10 types of people in the world. Those who knows binary and those who dont...
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ★★★★
    Genki
    Genki's avatar
    Kayıt Tarihi: 24/Ağustos/2005
    Erkek

    cevaplar için sağolun beyler, varmı farklı yöntemleri olan, şunu şunu kullanıyorum şöyle yapıyorum diyen

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    cache
    cache's avatar
    Kayıt Tarihi: 01/Şubat/2014
    Erkek

    Redbeanphp ve router kullanıyorum. Her kullanici için her login olduğunda bi token oluşuyor. Veritabanındaki token ile eşleşiyorsa sonuc olumlu oluyor


    En iyisi olmadan önce, her zaman en kötüsü olmaz mı ?
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ★★★★
    Genki
    Genki's avatar
    Kayıt Tarihi: 24/Ağustos/2005
    Erkek

    Hafta sonu konuyu kimse görmemiş olabilir bi uplayalım, yorumları , fikirleri bekliyoruz

  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    RockZs
    RockZs's avatar
    Kayıt Tarihi: 30/Haziran/2002
    Erkek

    hocam kullanıcı girişleri (auth) ile uğraşmak istemezseniz https://auth0.com/ adresini inceleyebilirsiniz. bu hizmeti servis olarak ücreti mukabilinde sağlıyorlar. dokümanları oldukça geniş.

    ayrıca https://www.owasp.org/index.php/REST_Security_Cheat_Sheet adresinden de faydalanılabilir.

  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    PcK0
    PcK0's avatar
    Kayıt Tarihi: 13/Nisan/2007
    Erkek

    Soruların birazcık hatalı ama anladığımı tahmin ettiğim gibi yazmaya çalışayım.

    Güvenlik önlemleri klasik sistemler ile restful api sistemler için farklı değil. Her işlem için cookie değeri istenebilir ya da cookie mümkün olmuyorsa post değerine token eklenmesi sağlanır.

    Ve sadece giriş ve kayıt için değil her post ile yapılan isteklerde bir güvenlik değeri olmasında fayda var. Tabi bu post değeri veritabanını etkiliyor ya da hatrı sayılır miktarda işlem yükü oluşturan post istekleri ise eklemek lazım. Yoksa post ile yapılacak işlem güvenlik değerinin çözülmesinden daha az sistem kaynağı harcıyorsa eklemeye gerek yoktur.

    Güvenlik kodu(captcha) için ise sistemin anlık durumuna göre girilmesini istemek daha iyidir. Örneğin son bir saatte bin adet yeni üye oluşturulmuş ise sistem saldırı altında diye yeni üyelik için güvenlik kodu girilmesi zorunlu hale getirilir ve o gün kayıt olan her üyenin de sisteme giriş yaptıktan sonra güvenlik kodu girmesi istenir.

    Güvenlik kodu girilmesi gerektiği zamanlarda /kayit-ol sayfası istendiğinde form tokenı iliştirir gibi resim urlsini de ekleyeceksin. Hatta resmi base64 şeklinde bile iliştirebilirsin.

    Token dışında en önemli güvenlik önlemi IP. Onuda şöyle yapmak en iyisi oluyor. Mesela bir üye giriş yapmış ve IP bilgisi kişinin Türkiye/Ankara'da olduğunu söylüyor. Ve bu adamın IP'si sürekli Türkiye bilgisini sağlıyor. Üye birden İngiltere IP'si ile bağlanırsa hemen şifre girmesini istiyoruz. Şüpheli işlem olarak isim veriyoruz. Tabi bunu uygulamak üyelerin ne kadar önemli bilgileri olduğuna bağlıdır.

    Böyle daha başka yöntemlerde var ama en verimlisi bunlar.

    Edit: en önemli şeyi unutmuşum HTTPS. İç ağdan verilerin çalınmamasıda oldukça önemli konu.

    PcK0 tarafından 11/Nis/16 19:53 tarihinde düzenlenmiştir

    Sadece bi imza..
Toplam Hit: 1176 Toplam Mesaj: 8
güvenlik api güvenlik rest