日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

silverlight 跨域socket

發(fā)布時間:2025/3/8 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 silverlight 跨域socket 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
http://msdn.microsoft.com/en-us/library/cc645032(VS.95).aspx
一切都是臨時的,beta2相對于beta1改了很多,不知道正式發(fā)布時是否還會改變。 翻譯的作用是備忘。 Silverlight 2 beta 支持2種訪問遠程服務(wù)器的方式: System.Net命名空間中的WebClient和HTTP類。這些類使用HTTP或者HTTPS訪問。 System.Net.Sockets命名空間中的Socket類。這些類提供更低層次的socket接口,可以用在更普通的網(wǎng)絡(luò)通訊應(yīng)用中。 這兩種情況都需要提供安全機制以防止silverlight程序發(fā)起未經(jīng)允許的連接。潛在風(fēng)險包括: DOS***:大量的遠程PC用來***一個特定的站點 DNS改寫***:把受害站點的DNS該寫為silverlight源站點,從而讓silverlight訪問非源站點 反向連接***:讓用戶的silverlight訪問某個遠程節(jié)點,從而***者可以通過此連接訪問用戶的私有網(wǎng)絡(luò)(這個***的模式是,用戶訪問了一個惡意silverlight站點,下載了silverlight并運行,該silverlight建立一個到私有網(wǎng)絡(luò)的連接,例如內(nèi)部file server,從而實現(xiàn)偷竊內(nèi)部file server數(shù)據(jù)的功能) Silverlight設(shè)計出了防止以上的***之外,還立足于提供管理員更好的控制。 原有的設(shè)計是僅允許silverlight訪問源站點。beta1的這個安全模型僅僅允許silverlight通過socket訪問下載的那個站點。這個源站點可以是localhost,如果這個silverlight直接從文件中打開的話。 beta包含了跨域連接的支持從而允許訪問非源站點。這個重要特性允許silverlight程序使用已有的web service。Silverlight 2 Runtime在允許一個網(wǎng)絡(luò)連接之前,需要首先從該網(wǎng)站下載一個安全策略文件。這個安全策略文件僅影響WebClient和HTTP類的跨域網(wǎng)絡(luò)訪問。WebClient和HTTP類在訪問源的時候,無須安全策略文件。 對于socket,這個安全策略系統(tǒng)不僅影響跨域訪問,也影響源訪問。即便是源訪問,也需要安全策略。這和beta1不一樣。beta1中源訪問總是被允許的。 安全策略系統(tǒng)基礎(chǔ) Silverlight 存在2種安全策略文件: Flash policy file - Adobe Flash所使用的crossdomain.xml文件。這個策略文件僅僅用于WebClient和HTTP類。 Silverlight policy file - 可以用來在Web/Socket兩種。該文件和Flash策略文件有不同的格式。 在允許到某個網(wǎng)絡(luò)資源的連接之前,Silverlight2 Runtime會試圖從該網(wǎng)絡(luò)資源下載一個安全策略文件。不同的訪問方式有不同的下載方式。 如果連接是WEB跨域,Silverlight2 運行時使用HTTP協(xié)議下載安全策略文件。Silverlight2 運行時首先試圖從目標(biāo)域的根下載Silverlight策略文件clientaccesspolicy.xml,如果能獲得這個文件(即便解析該文件出現(xiàn)錯誤),它也用該文件做跨域策略文件。如果找不到該文件,Silverlight運行時試圖從目標(biāo)域的根下載flash策略文件crossdomain.xml。這個flash策略文件必須允許連接所有域。 如果是socket連接(跨域或者源訪問),Silverlight2運行時試圖連接目標(biāo)站點的943端口(固定端口)。如果可以建立,Silverlight運行時發(fā)送一個特殊的字符串到服務(wù)器以獲得策略文件。Silverlight2運行時會等待目標(biāo)站點返回Silverlight策略文件。如果返回了(即便解析出錯),也會用作策略文件。 如果策略文件正確解析,并且保證了權(quán)限,連接會建立。否則,連接以及以后的連接均被阻止。 另一個socket連接的限制是服務(wù)器端口必須在4502-4534之內(nèi)。如果服務(wù)器提供服務(wù)器的端口不在其內(nèi),可以用程序重定向(例如ssh) 為WebClient/HTTP部署安全策略文件,系統(tǒng)管理員需要配置web service,以便可以下載策略文件。 為socket部署安全策略文件,系統(tǒng)管理員需要配置一個單獨的認證服務(wù)。 如下是一個開放socket 4502~4506端口的策略文件。必須listen在943端口。(這個問題很令人郁悶,這個綁定沖突怎么解決?)
????
??????
????????
??
????????
??????
????
?
如果發(fā)現(xiàn)943被bind,kill掉該process,啟動自己的server,同時策略文件允許所有。

總結(jié)

以上是生活随笔為你收集整理的silverlight 跨域socket的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。