آموزش برنامه نویسی تحت وب - آموزش XML

 

مقايسه بين MSXML 4.0 و دات نت
مایکروسافت دو روش متفاوت بمنظور کار با XML ، در اختيار برنامه نويسان قرار داده است :

  • MSXML، که در ابتدا پارسر XML ناميده مي شد.

کلاس هاي XML فريمورک دات نت
MSXML 4.0
، با پارسر MSXML جايگزين شده است . عملکرد MSXML 4.0 در اغلب موارد مشابه کلاس هاي فريمورک دات نت است . تفاوت عمده در نحوه استفاده از عناصر است . در MSXML بمنظور ارائه امکانات از اشياء COM)Componenet Object Model) استفاده شده ( ازManaged code استفاده نمي گردد ) و داراي امکانات از قبل ساخته اي براي SAX)Simple API for XML) است .
MSXML 4.0
، شامل سرويس هاي زير است :

DOM
XSD
XPath 1.0
XSLT 1.0


  • SAXيک مدل برنامه نويسي و مشابه با DOM است

Schema Object Mode
Schema Object Model)SOM) ، شامل امکانات API اضافه ، بمنظور دستيابي به سندهاي XML Schema از طريق برنامه نويسي است .
کلاس هاي XML فريمورک دات نت ، عمليات مشابهي را نظير MSXML 4.0 انجام مي دهند. طراحي کلاس هاي فوق بگونه اي است که امکان استفاده از آنان در يک محيط مديريت يافته، خصوصا" سرويس هاي وب XML ،وجود دارد .
جدول زير ويژگي هر يک را نشان مي دهد :

استاندارد کنسرسيوم وب

MSXML ( محيط مبتنی بر COM )

کلاس های XML فريمورک دات نت ( محيط مديريت يافته دات نت )

XML 1.0 and Namespaces in XML

yes

yes

XPath

yes

yes

XSLT

yes

yes

DOM Level 1

yes

yes

DOM Level 2 Core

no

yes

XML Schemas

yes

yes

XML Schema Object Model(SOM)

yes (فقط خواندنی)

yes

Simple API for Xml (SAX)

yes

no


XML
و امنيت در دات نت


XML
،مهمترين امکان ذخيره سازي داده ها و انتقال اطلاعات د ر فريمورک دات نت محسوب مي گردد. بنابراين تمام ملاحظات امنيتي در فريمورک دات نت، به رويکردهاي امنيتي XML مربوط مي گردد . دستيابي به سرويس هاي وب XML مي تواند محدود به سرويس گيرندگان تائيد شده و مجاز باشد( مشابه دستيابي کاربران مجاز به يک وب سايت ) .

مدل مبتني بر شي XML براي رمزنگاري اشياء


کلاس SecurityElement ، مدل XML لازم بمنظور رمزکردن اشياء را ارائه مي نمايد. کلاس فوق ، بمنظور استفاده همراه يک سيستم ايمني در نظرگرفته شده است و امکان استفاده از آن بعنوان يک کلاس شي XML عمومي وجود نخواهد داشت .

XML signature .

کنسرسيوم وب در حال پياده سازي مشخصه اي براي امضاء ديجيتالي مبتني بر XML است . System.Security.Cryphtography.xml ،مدلي مبتني بر XML براي استفاده از سيستم امنيتي فريمورک دات نت بوده که از امضاهاي XML حمايت مي نمايد. مدل فوق اين امکان را به اشياء XML خواهد داد که از طريق يک امضاء ديجيتالي تاييد گردند . رمزنگاري باعث حفاظت اطلاعات در مقابل نمايش و يا تغييرات شده وبدين ترتيب يک کانال ايمن ارتباطي ايجاد خواهد شد .

رمزنگاري سرويس هاي وب XML بمنظور انتقال


برنامه هاي مبتني بر دات نت از پروتکل SOAP ، بمنظور ارتباط با سرويس هاي وب XML استفاده مي نمايند( فرمت اوليه پيام ها ) . کتابخانه کلاس فريمورک دات نت ، ضمائم SOAP را بمنظور اجراء ، همراه با يک متد سرويس وب XML ، ارائه مي نمايد . namespace ، شامل کلاس هائي است که پروتکل هاي مورد نياز براي انتقال داده ها را فراهم مي نمايد .

ارسال مدارک تائيد شده .


در موارديکه يک سند XML ايمن شده باشد ،بدون ارسال مدارک لازم، امکان دستيابي و استفاده از آن وجود نخواهد داشت. کلاس XmlTextReader ،امکان ارسال مدارک را از طريق استفاده از کلاس CredentialCache موجود در System.Net فراهم مي نمايد .