rulo kendi ve açık parametreleri eklemek etmeyin - o gerçekten çok fazla işim!
WCF güvenlik özelliklerine bakın - bunlardan bolca! Ör. Mesajın güvenliğini sağlayın ve mesajın içindeki kimlik bilgilerini girin - kutunun dışında, yanınızda ekstra kodlama gerekmez!
Kontrol dışarı bu mükemmel Michele Leroux Bustamante tarafından WCF güvenlik konusunda madde: Senin durumunda http://www.devx.com/codemag/Article/33342
, ben kullanıcı adı kimlik bilgileriyle mesaj güvenliğini öneririm - Eğer her iki ucunda bu yapılandırmanız gerekir:
Sunucu tarafı: istemci tarafında aynı ayarları uygulamak gerekir
<bindings>
<basicHttpBinding>
<binding name="SecuredBasicHttp" >
<security mode="Message">
<message clientCredentialType="UserName"/>
</security>
</binding>
</basicHttpBinding>
</bindings>
<services>
<service name="YourService">
<endpoint address="http://localhost:8000/MyService"
binding="basicHttpBinding"
bindingConfiguration="SecuredBasicHttp"
contract="IYourService" />
</service>
</services>
Ve:
<bindings>
<basicHttpBinding>
<binding name="SecuredBasicHttp" >
<security mode="Message">
<message clientCredentialType="UserName"/>
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost:8000/MyService"
binding="basicHttpBinding"
bindingConfiguration="SecuredBasicHttp"
contract="IYourService" />
</client>
Şimdi sunucu ve istemci güvenliği üzerinde anlaşmaya - istemci üzerinde, daha sonra böyle kullanmak kullanıcı adı ve şifresini belirtmek istiyorum:
Sunucu tarafında
YourServiceClient client = new YourServiceClient();
client.ClientCredentials.UserName.UserName = "your user name";
client.ClientCredentials.UserName.Password = "top$secret";
, bunları gerekir Bu kullanıcı kimlik bilgilerinin nasıl doğrulandığını ayarlamak için - genellikle bir Windows etki alanına (Active Directory) veya ASP.NET üyelik sağlayıcısı modeline karşı. Her durumda, kullanıcı kimlik bilgileri tanımladığınız mağazayla doğrulanamıyorsa, çağrı reddedilir.
Bu biraz yardımcı olur umarım - güvenlik WCF'de büyük bir konudur ve çok sayıda seçeneğe sahiptir - bu biraz göz korkutucu olabilir, ama sonuçta genellikle mantıklıdır! :-)
Marc
Güzel görünüyor; Eğer ham (httpwebrequest) kullanıyorsanız bu (veya benzer bir şey) kullanılabilir olup olmadığını biliyor musunuz? Aynı şekilde güvenli olmasını istediğim özel bir RPC yığını var (tabii ki önemsiz bir cevapsa yeni bir queston olarak sorabilirim) –
Evet; bkz http://www.silverlightshow.net/items/Cookies-in-Silverlight-Web-Requests.aspx – blowdart
Ta; Şuna bakacağım; -p –