2016-04-03 24 views
0

Müzik akışı için bir mobil ve web uygulamasına sahibim. İşte benim gerçek mimarisidir:Mobil/web istemcileri ve arka uç arasında yalnızca güvenilen bir iletişimi nasıl yapabilirim?

  • RESTful servis (Bahar Boot)
  • Bahar Güvenlik
  • OAuth2
  • HTTPS

soruları CA tarafından belgeli alanı ile yapılır: Nasıl Yalnızca mobil müşterilerimle arka uçlarım arasında bir iletişim yapıyorum? CRSF olmadan (mobil uygulamalar için

  1. Bir arka uç: iki web hizmetleri oluşturmak - (web istemcisi ve arka uç arasında aynı şey)

    Benim önerim iki parça sorunu bölmek olduğunu kullanıcı sertifikalı

  2. Web oynatıcısı için bir arka uç (CRSF korumalı) yalnızca web oynatıcısının etki alanından gelen istekleri kabul eder. Mobil sorun için

,

ben Fiddler kullanarak HTTPS şifresini ve URL, başlıklar, jeton gibi önemli bilgiler elde proxy üzerinden mobil isteklerinde devreye edebiliyorum.

Ancak, arka uç ile mobil uygulamalar arasında yalnızca güvenilen bir iletişim gibi başka bir CA tarafından durdurulduğunda reddedilen istekleri reddetmekten kaçınmak için bir yaklaşım olduğunu biliyorum. Mobil çözüm için bunu nasıl yapabilirim? tarayıcı kimseye başlıkları, URL'ler ve belirteçleri gösterecektir çünkü Web oynatıcısı sorun için


,

o sorun daha büyük.

Mobil uygulama gibi bu bilgileri gizleyemediğimden, arka uç kabul etme isteklerini yalnızca web oynatıcısının etki alanından yapabilirim. Bu dava için en iyi çözüm nedir?


GÜNCELLEME

decomple mobil istemci hayal daha basittir. Anahtarları, jetonları ve URL'leri koruyamadığım/koruyamadığım için öneri olup, arka uçtaki numaralı telefondaki istekleri sınırlamaktır. Ama bunu web oynatıcısında nasıl yapabilirim? Herkes için aynı belirticiye sahibim (kullanıcının kimlik doğrulaması yok).

Bu belge decompile mobile clients hakkında anladım. http://pt.slideshare.net/denimgroup/developing-secure-mobile-applications-17732256

+1

İstemci denetleyemezsiniz. Birisi her zaman müşterinizi kodabilir ve istedikleri değişiklikleri yapabilir. –

+0

@NeilMcGuigan, haklısın, sorumu yeni bir öneriyle güncelledim. Teşekkürler –

cevap

0

asymmetric cryptography'u kullanmanızı öneririm. Bir sunucudan ortak bir anahtar istersiniz ve aşağıdaki tüm iletişimleri şifreleyin. Ve sadece arka ucun ne yazdığınızı anlayacaktır, çünkü sadece bir mesajın şifresini çözmek için özel bir anahtarı vardır.

Kullanıcılarınızın, şifrelenmemiş verileri doğrudan istemci belleğinden ayıklayabileceklerini unutmayın. Ve buna izin vermenin gerçek bir yolu yok!