自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

WCF元數(shù)據(jù)應(yīng)用方法介紹

開(kāi)發(fā) 開(kāi)發(fā)工具
WCF元數(shù)據(jù)的相關(guān)操作在實(shí)際應(yīng)用中是一個(gè)非常重要的操作技巧,但是對(duì)于初學(xué)者來(lái)說(shuō)這方面的知識(shí)還是比較復(fù)雜的。在這里我們就先來(lái)系統(tǒng)的了解一下相關(guān)操作技巧。

今天我們會(huì)在這篇文章中以一個(gè)案例,為大家詳細(xì)分析一下WCF元數(shù)據(jù)的正確應(yīng)用方法,主要就是針對(duì)其安全防護(hù)方面的應(yīng)用。希望初學(xué)者們可以根據(jù)我們介紹的內(nèi)容對(duì)此有一個(gè)充分的掌握。#t#

最近在做一個(gè)項(xiàng)目,應(yīng)用了WCF進(jìn)行分布式開(kāi)發(fā),中間還涉及到消息路由器等,好在有WCF提供了強(qiáng)大的基礎(chǔ)支持,當(dāng)然,本身也作了不少的擴(kuò)展,實(shí)際,我最關(guān)心的是WCF的安全問(wèn)題,網(wǎng)上不少朋友介紹的WCF的安全也是少得可憐,微軟發(fā)布的WCF Security GUID好像講得也只是入門(mén)級(jí)別的教程,離真正應(yīng)用到項(xiàng)目中還是有很大的距離,這也讓我萌發(fā)了分享的想法,今天先放出來(lái)占個(gè)位置吧,有反對(duì)的朋友磚頭輕點(diǎn),呵~,可以告訴你,WCF的安全里,有很多的小秘密,當(dāng)然還是要告訴你,并且有此小秘密是要自己去體驗(yàn)后才知道,在博客排版方面,李會(huì)軍(軍哥)讓人感覺(jué)最舒服,在解說(shuō)方面,軍哥也是以簡(jiǎn)潔著稱(chēng),我在這里也學(xué)習(xí)一下,一起簡(jiǎn)潔吧,我希望以后的WCF安全探討里,一次只講一個(gè)小內(nèi)容好了~

概述

Windows Communication Foundation (WCF) 是 Microsoft 為構(gòu)建面向服務(wù)的應(yīng)用程序而提供的統(tǒng)一編程模型(摘自MSDN),在分布式環(huán)境下的安全問(wèn)題尤為重要,如果你覺(jué)得使用了WCF默認(rèn)的安全措施可以讓你高枕無(wú)憂,那明天你可就以回家種田了,當(dāng)然,對(duì)于學(xué)習(xí)來(lái)說(shuō),足夠了~,但我們講的是真正的項(xiàng)目應(yīng)用,WCF在各種協(xié)議下的安全提供和保證是不盡相同的。

背景

某天,經(jīng)理老陳對(duì)程序員小李說(shuō):小李,我們公司外包到一個(gè)項(xiàng)目,但是客戶要求采用分布式部署,現(xiàn)在項(xiàng)目快接近尾聲了,由于我們采用的是WCF,所以在部署的時(shí)候出現(xiàn)了一點(diǎn)問(wèn)題,我們的服務(wù)好像誰(shuí)都能訪問(wèn)得到啊,這是為什么呢?

問(wèn)題呈現(xiàn)

小李***件事就是去查看了服務(wù)配置文件,真的是不看不知道,一看嚇一跳,原來(lái)開(kāi)發(fā)WCF時(shí),采用的都是默認(rèn)的配置,全是自動(dòng)生成的代碼,沒(méi)有經(jīng)過(guò)任何的改動(dòng),一想到項(xiàng)目將會(huì)以這種姿態(tài)交付,小李著實(shí)捏了一把汗。

  1. < services> 
  2. < service name="WcfServiceLibrary2.Service1" 
    behaviorConfiguration="WcfServiceLibrary2.Service1Behavior"> 
  3. < host> 
  4. < baseAddresses> 
  5. < add baseAddress = "http://localhost:8731/
    Design_Time_Addresses/WcfServiceLibrary2/Service1/"
     /> 
  6. < /baseAddresses> 
  7. < /host> 
  8. < endpoint address ="" binding="wsHttpBinding" 
    contract="WcfServiceLibrary2.IService1"> 
  9. < identity> 
  10. < dns value="localhost"/> 
  11. < /identity> 
  12. < /endpoint> 
  13. < endpoint address="mex" binding="mexHttpBinding" 
    contract="IMetadataExchange"/> 
  14. < /service> 
  15. < /services> 
  16. < behaviors> 
  17. < serviceBehaviors> 
  18. < behavior name="WcfServiceLibrary2.Service1Behavior"> 
  19. < serviceMetadata httpGetEnabled="True"/> 
  20. < serviceDebug includeExceptionDetailInFaults="False" /> 
  21. < /behavior> 
  22. < /serviceBehaviors> 
  23. < /behaviors> 

解決之道

小李***件事就是把配置文件給修改好了,接著解決了困擾老陳許久的問(wèn)題。

1、刪除WCF元數(shù)據(jù)交換終結(jié)點(diǎn)信息

  1. < endpoint address="mex" binding="mexHttpBinding" 
    contract="IMetadataExchange"/> 

2、將http協(xié)議獲取元數(shù)據(jù)重置為:false

  1. < serviceMetadata httpGetEnabled="false"/> 

3、一般我們都會(huì)在開(kāi)發(fā)時(shí)配置為WCF元數(shù)據(jù)據(jù)可發(fā)現(xiàn),但是切記,發(fā)布你的服務(wù)前,一定要?jiǎng)h除了,目前,服務(wù)在一定范圍上得到了保護(hù)

4、最終配置如下

 

  1. < services> 
  2. < service name="WcfServiceLibrary2.Service1" 
    behaviorConfiguration="WcfServiceLibrary2.Service1Behavior"> 
  3. < host> 
  4. < baseAddresses> 
  5. < add baseAddress = "http://localhost:8731/
    Design_Time_Addresses/WcfServiceLibrary2/Service1/"
     /> 
  6. < /baseAddresses> 
  7. < /host> 
  8. < endpoint address ="" binding="wsHttpBinding" 
    contract="WcfServiceLibrary2.IService1"> 
  9. < identity> 
  10. < dns value="localhost"/> 
  11. < /identity> 
  12. < /endpoint> 
  13. < /service> 
  14. < /services> 
  15. < behaviors> 
  16. < serviceBehaviors> 
  17. < behavior name="WcfServiceLibrary2.Service1Behavior">   
  18. < serviceDebug includeExceptionDetailInFaults="False" /> 
  19. < serviceDebug includeExceptionDetailInFaults="False"/>
    < /behavior>< /serviceBehaviors>< /behaviors> 

以上就是對(duì)WCF元數(shù)據(jù)的相關(guān)介紹。

責(zé)任編輯:曹凱 來(lái)源: 博客園
相關(guān)推薦

2009-11-09 17:30:20

WCF元數(shù)據(jù)

2009-12-22 17:30:47

WCF Address

2009-12-21 16:04:45

WCF Dispose

2009-11-06 10:01:07

WCF服務(wù)元數(shù)據(jù)

2009-12-21 17:40:25

WCF會(huì)話

2010-03-02 10:50:57

WCF元數(shù)據(jù)交換

2009-12-22 16:14:01

WCF服務(wù)元數(shù)據(jù)

2010-02-22 14:09:08

WCF Dispose

2010-02-23 14:24:50

WCF狀態(tài)保存

2010-02-25 16:07:28

WCF REST

2010-02-23 17:05:38

2010-02-22 17:07:50

WCF綁定元素

2010-02-26 14:12:27

WCF元數(shù)據(jù)

2010-02-25 09:58:05

WCF配置指定Addr

2010-02-24 09:59:19

WCF服務(wù)異步代理

2009-12-21 18:10:50

WCF實(shí)現(xiàn)事件通知

2010-02-22 16:34:17

WCF性能計(jì)數(shù)器

2009-12-21 16:37:41

WCF獲取服務(wù)元數(shù)據(jù)

2009-12-07 13:55:10

WCF工具

2010-03-02 17:35:20

WCF服務(wù)加載
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)