zoukankan      html  css  js  c++  java
  • WCF 安全性 之 Windows

    案例下载

    http://download.csdn.net/detail/woxpp/4113172

    服务端配置代码

      <system.serviceModel>
        <services>
          <service name="WcfServiceLibrary.ServiceTcp">
            <endpoint address="net.tcp://localhost:8731/WcfServiceLibrary"
              binding="netTcpBinding" bindingConfiguration="testnetTcpBinding"
              contract="WcfServiceLibrary.IService1">
              <identity>
                <dns value="localhost" />
              </identity>
            </endpoint>
            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
            <host>
              <baseAddresses>
                <add baseAddress="http://localhost:8732/WcfServiceLibrary" />
              </baseAddresses>
            </host>
          </service>
        </services>
        <behaviors>
          <serviceBehaviors>
            <behavior>
              <!-- 为避免泄漏元数据信息,
              请在部署前将以下值设置为 false 并删除上面的元数据终结点  -->
              <serviceMetadata httpGetEnabled="True"/>
              <!-- 要接收故障异常详细信息以进行调试,
              请将以下值设置为 true。在部署前设置为 false 
                以避免泄漏异常信息-->
              <serviceDebug includeExceptionDetailInFaults="False" />
            </behavior>
          </serviceBehaviors>
        </behaviors>
        <bindings>
          <netTcpBinding>
            <binding name="testnetTcpBinding">
              <security mode="Message">
                <transport clientCredentialType="None" protectionLevel="None"></transport>
                <message clientCredentialType="Windows"/>
              </security>
            </binding>
          </netTcpBinding>
        </bindings>
      </system.serviceModel>

    客户端调用代码 通过代理类

    http://www.cnblogs.com/woxpp/p/6232298.html

    客户端代码

        //获取域名
                String hostName = Dns.GetHostName();
                IPHostEntry ipH = new IPHostEntry();
                ipH = Dns.Resolve(hostName); 
                NetTcpBinding netTcp = new NetTcpBinding();
                netTcp.Security.Mode = SecurityMode.Message;
                netTcp.Security.Transport.ProtectionLevel = ProtectionLevel.None;
                netTcp.Security.Transport.ClientCredentialType = TcpClientCredentialType.None;
                netTcp.Security.Message.ClientCredentialType = MessageCredentialType.Windows;
                ChannelFactory<IService1> factory = new ChannelFactory<IService1>(netTcp);
                factory.Credentials.Windows.ClientCredential.UserName = "panpan.xu";
                factory.Credentials.Windows.ClientCredential.Password = "123.xpp";
                factory.Credentials.Windows.ClientCredential.Domain = "panpanxu-PC";
                IService1 proxy = factory.CreateChannel(new EndpointAddress("net.tcp://localhost:8731/WcfServiceLibrary"));
                txtMessage.Text = proxy.GetDataUsingDataContract(new WcfServiceLibrary.CompositeType() { StringValue = "sssss" }).StringValue;
      
  • 相关阅读:
    PHP js使用ajax异步处理方式请求PHP,解决数组中文乱码
    PHP Apache服务配置
    opencv高斯背景建模
    Opencv,腐蚀,膨胀,轮廓检测,轮廓外接多边形
    opencv删除二值图中较小的噪点色块
    opencv图像操作
    opencv统计二值图黑白像素个数
    JAVA常用工具类
    Netty4 学习笔记之四: Netty HTTP服务的实现
    分享一些JAVA相关资源
  • 原文地址:https://www.cnblogs.com/woxpp/p/6232319.html
Copyright © 2011-2022 走看看