Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu örnek, WSHttpBinding bağlamayı, Windows kimlik doğrulaması ile mesaj düzeyinde güvenlik kullanacak şekilde yapılandırmayı gösterir. Bu örnek, "Başlarken" üzerine kurulmuştur. Bu örnekte, hizmet Internet Information Services'te (IIS) barındırılır ve istemci bir konsol uygulamasıdır (.exe).
Uyarı
Bu örnek için kurulum yordamı ve derleme yönergeleri bu konunun sonunda yer alır.
wsHttpBinding< için> varsayılan güvenlik, Windows kimlik doğrulamasını kullanan ileti güvenliğidir. Bu örnekteki yapılandırma dosyaları, mode olarak ve özniteliğini <>olarak açıkça ayarlar.Message Bu değerler bu bağlama için varsayılan değerlerdir, ancak kullanımlarını göstermek için aşağıdaki örnek yapılandırmada gösterildiği gibi açıkça yapılandırılmıştır.
<bindings>
<wsHttpBinding>
<binding>
<security mode="Message">
<message clientCredentialType="Windows"/>
</security>
</binding>
</wsHttpBinding>
</bindings>
İstemci uç noktası yapılandırması, hizmet uç noktası için mutlak bir adres, bağlama ve sözleşmeden oluşur. İstemci bağlaması uygun securityMode ve authenticationMode ile yapılandırılır.
<system.serviceModel>
<client>
<endpoint address=
"http://localhost/servicemodelsamples/service.svc"
binding="wsHttpBinding"
bindingConfiguration="Binding1"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
</client>
<bindings>
<wsHttpBinding>
<!-- The default security for the WSHttpBinding is -->
<!-- Message security using Windows authentication. -->
<!-- This configuration explicitly defines the security mode -->
<!-- as Message and the clientCredentialType as Windows -->
<!-- for demonstration purposes. -->
<binding name="Binding1">
<security mode="Message">
<message clientCredentialType="Windows"/>
</security>
</binding>
</wsHttpBinding>
</bindings>
</system.serviceModel>
Hizmet kaynak kodu, çağıranın kimliğine erişmek için ServiceSecurityContext öğesinin nasıl kullanılabileceğini göstermek amacıyla değiştirildi.
public string GetCallerIdentity()
{
// The Windows identity of the caller can be accessed on the ServiceSecurityContext.WindowsIdentity.
return OperationContext.Current.ServiceSecurityContext.WindowsIdentity.Name;
}
Örneği çalıştırdığınızda, işlem istekleri ve yanıtları istemci konsolu penceresinde görüntülenir. - adlı GetCallerIdentity ilk yöntem, çağıran kimliğinin adını istemciye geri döndürür. İstemciyi kapatmak için konsol penceresinde ENTER tuşuna basın.
Örneği ayarlamak, derlemek ve çalıştırmak için
Windows Communication Foundation Örnekleri içinOne-Time Kurulum Yordamını yaptığınızdan emin olun.
Çözümün C# veya Visual Basic .NET sürümünü oluşturmak için Windows Communication Foundation Örneklerioluşturma başlığındaki yönergeleri izleyin.
Örneği tek veya bilgisayarlar arası bir yapılandırmada çalıştırmak için Windows Communication Foundation Örneklerini Çalıştırma başlığındaki yönergeleri izleyin.