2010-12-16 15 views
6

iphone, android ve blackberry mobil uygulaması tarafından kullanılan bir API'im var, başkalarının API'yi kullanmasına izin vermek istemiyorum ya da SOAP API'sini görüyorum.Genel web hizmeti API'sı özel olarak nasıl yapılır?

Bunu nasıl yaparım?

Not: IP'yi kısıtlayıp web hizmetini özel yaparsam, mobil uygulama çalışmayı durduracak olursa, herkese açık yaparsam herkes web hizmetini görebilir.

cevap

9

Bir başlangıç ​​noktası olarak WSDL yayınını devre dışı bırakabilirsiniz. Bu sayede, yalnızca bir proxy oluşturmuş olan istemciler web servisini bulabilir ve kullanabilir. Tabii ki hizmet hala kamuya açık olacak ve bir SOAP isteğini doğru şekilde biçimlendirmeyi bilen herhangi bir kişi bunu arayabilecektir. İkinci adım, güvenliği (özel anahtarlar, HTTPS, istemci sertifikaları, vb.) Tanıtmaktan ibaret olacaktır, böylece yalnızca güvenilir istemciler hizmeti tüketebilirler.

0

Trafikten herkes burnunu çekebilir ve her yönüyle çok fazla çekebilir. Böylece, trafiği şifrelemeye yardımcı olsa da, bunu engelleyemezsiniz. Ne ne yapabilir kayıtlı kullanıcılara erişim kısıtlamak, ancak uygulamanız kayıtsız kullanıma izin veriyorsa iyi oynayamayabilir.

0

Potansiyel olarak HTTPS üzerinden çalıştırabilir ve istemci sertifikaları gerekebilir. Söz konusu mobil platformların, özel istemci sertifikalarını ne kadar desteklediğine bağlıdır. Tabii ki, eğer istemci sertifikası uygulamadan kopyalanırsa, o zaman sadece açık ...

3

İlk öneri Tamam, WSDL yayınını durdur, eğer bunu kullanırsan.

Ancak temel olarak, sizin için uygulama için yetkilendirme/yetkilendirme mekanizması uygulamak zorundasınız. , Yöntem vardır giriş gerektiğini

  1. çek kimlik bilgileri - giriş/şifre
  2. çek http isteği ajan ayarları - Çünkü eğer mobil cihaz

iki gereksinimleri çerez tarafından (bu isteğe izin eşleşirse örneğin) veya tüm API yöntemi için girilecek olan yetkilendirme belirteci döndürün. Belirteç tamam ise, API yöntemi işe yarar .. değil - örneğin, 404 döndürür.

0

WSDL'yi devre dışı bırak, kimlik bilgilerini denetlemek için HTAP'leri SOAP üstbilgileriyle birlikte kullanın (örneğin, kullanıcı adı ve karma parola kelimesini gönderin). HTTPS kullanarak, SOAP başlığı dahil olmak üzere bu verilerin şifrelenmiş olduğunu unutmayın. Belirli bir IP'den yeterli sayıda yanlış istek kaydedilirse, bu IP adresini bir süre kara listeye alabilirsiniz.

İlgili konular