• WCF中加密数据信息


    View Code
     1 //在使用wcf中,正常传输数据中,是没有加密的,这样来数据会很不安全的,如下:
    2
    3 //// wcf coding
    4
    5 public class Service1 : IService1
    6 {
    7 public string GetData(int value)
    8 {
    9 return string.Format("You entered: {0}", value);
    10 }
    11
    12 }
    13
    14 ///web.config 是默认配置。
    15
    16 <?xml version="1.0" encoding="utf-8"?>
    17 <configuration>
    18
    19 <system.web>
    20 <compilation debug="true" targetFramework="4.0" />
    21 </system.web>
    22 <system.serviceModel>
    23 <behaviors>
    24 <serviceBehaviors>
    25 <behavior>
    26 <!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 -->
    27 <serviceMetadata httpGetEnabled="true"/>
    28 <!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 -->
    29 <serviceDebug includeExceptionDetailInFaults="false"/>
    30 </behavior>
    31 </serviceBehaviors>
    32 </behaviors>
    33 <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
    34 </system.serviceModel>
    35 <system.webServer>
    36 <modules runAllManagedModulesForAllRequests="true"/>
    37 </system.webServer>
    38 </configuration>
    39
    40
    41
    42 ///把以上部署到IIS上,运行成功!



    QQ截图20111225223717

    ////在创建一个winfrom程序,引用这个wcf服务地址  http://localhost/Service1.svc

    image

    View Code
    1 ///调用wcf中的GetData(int value)方法
    2
    3 using (GetWcfInfo.ServiceReference1.Service1Client client = new ServiceReference1.Service1Client())
    4 {
    5 MessageBox.Show(client.GetData(1987));
    6 }



    image

    //如上,调用成功!这时我们用http抓取工具可又看到我们调用时后返回的原数据。

    image

    ////如果此项目中的数据信息很重要,不想叫它人用此类的方法抓取到我们的数据时,要怎么办呀?wcf中我们可又使用自定义数据类型加密,也可又使用默认微软提供的加密方式:如:X509,下面就用X509加密后的wcf使用传输数据信息。只是简单的配置了一下.config文件,跟创建了两个证书(X509)。



    image

    ///上图是采用X509加密方式来进行数据传输的,可又看出,信息已经完全被加密了。



  • 相关阅读:
    [LeetCode] 965. Univalued Binary Tree
    [LeetCode] 811. Subdomain Visit Count
    [LeetCode] 509. Fibonacci Number
    [LeetCode] 1200. Minimum Absolute Difference
    [LeetCode] 590. N-ary Tree Postorder Traversal
    input单选框美化——自定义样式
    input单选框——获取选中值和设置选中值
    [LeetCode] 933. Number of Recent Calls
    mysql 一次性插入的数据量过大报错max_allowed_packet解决方法
    springboot+mybatis+达梦数据库
  • 原文地址:https://www.cnblogs.com/server126/p/2301372.html
Copyright © 2020-2023  润新知