وب سرویس چیست
فهرست مطالب
آخرین به روزرسانی در 29/07/2022
در این مقاله قصد داریم توضیحات کاملی را در رابطه با وب سرویس بدهیم.
برای بسیاری از کاربران سوال است که وب سرویس چیست و چه کاربردی دارد و در چه نوع هایی می باشد.
ما در این مقاله به صورت کامل به پاسخ تمامی این سوالات خواهیم پرداخت.
تا پایان با ما همراه باشید.
وب سرویس چیست
وب سرویس هر نرم افزاری است که خود را از طریق اینترنت در دسترس قرار می دهد و از یک سیستم پیام رسانی استاندارد XML استفاده می کند.
XML برای رمزگذاری تمام ارتباطات به یک وب سرویس استفاده می شود.
به عنوان مثال، یک کلاینت با ارسال یک پیام XML یک سرویس وب را فراخوانی می کند، سپس منتظر پاسخ XML مربوطه می ماند.
از آنجایی که تمام ارتباطات در XML است، وب سرویس ها به هیچ سیستم عامل یا زبان برنامه نویسی وابسته نیستند.
به عنوان مثال جاوا می تواند با php ارتباط برقرار کند.
یا برنامه های ویندوز می توانند با برنامه های یونیکس ارتباط برقرار کنند.
به طور کلی می توان گفت وب سرویس مجموعه ای از پروتکل ها و استانداردهای باز است که برای تبادل داده ها بین برنامه ها یا سیستم ها استفاده می شود.
وب سرویس ها ، برنامههای کاربردی مستقل ، مدولار، توزیعشده و پویا هستند که میتوان آنها را توصیف ، منتشر کرد ، قرار داد یا از طریق شبکه برای ایجاد محصولات ، فرآیندها و زنجیرههای تأمین فراخوانی کرد.
این برنامه ها می توانند محلی ، توزیع شده یا مبتنی بر وب باشند.
وب سرویس ها بر اساس استانداردهای باز مانند TCP/IP، HTTP، Java، HTML و XML ساخته شده اند.
به طور خلاصه ، طبق تعاریف بالا یک وب سرویس ، سرویسی است که :
- از طریق اینترنت یا شبکه های خصوصی (اینترانت) در دسترس است
- از یک سیستم پیام رسانی استاندارد XML استفاده می کند
- به هیچ سیستم عامل یا زبان برنامه نویسی وابسته نیست
- از طریق یک دستور زبان XML رایج توصیف می شود
اجزای وب سرویس
بستر اصلی وب سرویس XML + HTTP است.
همه سرویس های وب استاندارد با استفاده از اجزای زیر کار می کنند :
SOAP (پروتکل دسترسی به اشیاء ساده)
(Universal Description, Discovery and Integration) UDDI
WSDL (زبان شرح وب سرویس)
تمام این اجزا در بخش های بعدی توضیح داده می شود.
یک وب سرویس با استفاده از استانداردهای باز مانند HTML، XML، WSDL و SOAP ارتباط بین برنامه های مختلف را امکان پذیر می کند.
- XML برای برچسب گذاری داده ها
- SOAP برای انتقال پیام
- WSDL برای توصیف در دسترس بودن سرویس
شما می توانید یک وب سرویس مبتنی بر جاوا در Solaris بسازید که از طریق برنامه ویژوال بیسیک شما که روی ویندوز اجرا می شود قابل دسترسی است.
یا میتوانید از سی شارپ برای ساخت وب سرویس های جدید در ویندوز استفاده کنید که میتوانند از برنامه وب شما که مبتنی بر JavaServer Pages (JSP) است و روی لینوکس اجرا میشود، فراخوانی کنید.
مثال
یک سیستم ساده مدیریت حساب و پردازش سفارش را در نظر بگیرید.
پرسنل حسابداری از یک برنامه مشتری ساخته شده با ویژوال بیسیک یا JSP برای ایجاد حساب های جدید و وارد کردن سفارشات مشتری جدید استفاده می کنند.
منطق پردازش این سیستم به زبان جاوا نوشته شده است و بر روی یک ماشین سولاریس قرار دارد که برای ذخیره اطلاعات با یک پایگاه داده نیز تعامل دارد.
مراحل انجام این عملیات به شرح زیر است :
برنامه مشتری اطلاعات ثبت حساب را در یک پیام SOAP دسته بندی می کند.
این پیام SOAP به عنوان متن درخواست HTTP POST به وب سرویس ارسال می شود.
وب سرویس درخواست SOAP را باز می کند و آن را به دستوری تبدیل می کند که برنامه بتواند آن را درک کند.
برنامه اطلاعات را در صورت نیاز پردازش می کند و با یک شماره حساب منحصر به فرد جدید برای آن مشتری پاسخ می دهد.
سپس، وب سرویس پاسخ را در یک پیام SOAP دیگر بسته بندی می کند، که در پاسخ به درخواست HTTP خود، آن را به برنامه مشتری ارسال می کند.
برنامه مشتری پیام SOAP را برای به دست آوردن نتایج فرآیند ثبت حساب باز می کند.
مزایا و دلایل استفاده از وب سرویس
بهبود عملکرد موجود در شبکه
وب سرویس واحدی از کد مدیریت شده است که می تواند از راه دور با استفاده از HTTP فراخوانی شود.
یعنی با استفاده از درخواست های HTTP می توان آن را فعال کرد.
وب سرویس ها به شما این امکان را می دهد که عملکرد کدهای موجود خود را از طریق شبکه نمایش دهید.
هنگامی که در شبکه نمایش داده شد، سایر برنامه ها می توانند از عملکرد برنامه شما استفاده کنند.
قابلیت متصل کردن
وب سرویس ها به برنامه های مختلف اجازه می دهند با یکدیگر ارتباط برقرار کنند و داده ها و خدمات را بین خود به اشتراک بگذارند.
سایر برنامه ها نیز می توانند از وب سرویس استفاده کنند.
به عنوان مثال، یک برنامه VB یا .NET می تواند با وب سرویس های جاوا ارتباط برقرار کند و بالعکس.
از وب سرویس ها برای مستقل کردن پلتفرم اپ و فناوری نیز استفاده می شود.
پروتکل استاندارد شده
وب سرویس از پروتکل استاندارد صنعتی برای ارتباطات استفاده می کنند.
هر چهار لایه (Service Transport، XML Messaging، Service Description و Service Discovery لایههای) از پروتکلهای کاملاً تعریف شده در پشته پروتکل سرویسهای وب استفاده میکنند.
این استانداردسازی پشته پروتکل به کسب و کار مزایای زیادی مانند گستره وسیعی از انتخاب ها، کاهش هزینه به دلیل رقابت و افزایش کیفیت می دهد.
ارتباطات کم هزینه
وب سرویس ها از SOAP روی پروتکل HTTP استفاده میکنند،
بنابراین میتوانید از اینترنت کمهزینه موجود خود برای پیادهسازی وب سرویس استفاده کنید.
این راه حل در مقایسه با راه حل های اختصاصی مانند EDI/B2B هزینه بسیار کمتری دارد.
علاوه بر SOAP از طریق HTTP، وب سرویس همچنین می تواند بر روی سایر مکانیسم های انتقال قابل اعتماد مانند FTP نیز پیاده سازی شود.
ویژگی های وب سرویس
مبتنی بر XML
وب سرویس ها از XML در لایه های نمایش داده و انتقال داده استفاده می کنند.
استفاده از XML هرگونه اتصال شبکه ، سیستم عامل یا پلتفرم را حذف می کند.
برنامه های کاربردی مبتنی بر وب سرویس ها در سطح اصلی خود بسیار قابلیت همکاری و برقراری ارتباط را دارند.
Loosely Coupled
مصرف کننده یک وب سرویس مستقیماً به آن وب سرویس وابسته نیست.
رابط وب سرویس می تواند در طول زمان برای تعامل با سرویس تغییر کند.
یک سیستم کاملاً جفت شده به این معنی است که منطق کلاینت و سرور کاملاً با یکدیگر مرتبط هستند، به این معنی که اگر یک رابط تغییر کند، دیگری باید به روز شود.
اتخاذ یک معماری آزادانه جفت شده تمایل دارد تا سیستم های نرم افزاری را قابل مدیریت تر کند و امکان یکپارچه سازی ساده تر بین سیستم های مختلف را فراهم کند.
Coarse-Grained
زبان های شی گرا مانند جاوا خدمات خود را از طریق روش های فردی به نمایش می گذارند.
یک روش فردی برای ارائه هر گونه قابلیت مفید در سطح شرکتی بسیار خوب است.
ساختن یک برنامه جاوا از ابتدا مستلزم ایجاد چندین روش fine-grained است که سپس به یک سرویس Coarse-Grained تبدیل می شود که توسط مشتری یا سرویس دیگری مصرف می شود.
کسبوکارها و رابطهایی که در معرض نمایش قرار میدهند باید Coarse-Grained باشند.
فناوری وب سرویس روشی طبیعی برای تعریف سرویس های Coarse-Grained ارائه می دهد .
Remote Procedure Calls (RPC)
وب سرویس ها به مشتریان اجازه می دهد تا procedures ، توابع و متدها را روی اشیاء ریموت با استفاده از یک پروتکل مبتنی بر XML فراخوانی کنند.
procedures ریموت پارامترهای ورودی و خروجی را که یک وب سرویس باید پشتیبانی کند، نشان می دهد.
توسعه کامپوننت از طریق Enterprise JavaBeans (EJBs) و .NET Components به طور فزاینده ای به بخشی از معماری و استقرار سازمانی در چند سال گذشته تبدیل شده است.
هر دو فناوری از طریق مکانیسم های مختلف RPC توزیع شده و قابل دسترسی هستند.
یک وب سرویس با ارائه سرویس ها خود، معادل سرویس های یک مؤلفه سنتی، یا با ترجمه فراخوانی های دریافتی به فراخوانی یک EJB یا یک مؤلفه دات نت، از RPC پشتیبانی می کند.
پشتیبانی از اسناد پیشرفته
یکی از مزایای کلیدی XML متد عمومی آن برای نمایش نه تنها داده ها، بلکه اسناد پیچیده است.
این اسناد می توانند به سادگی نشان دادن یک آدرس فعلی باشند، یا می توانند به همان اندازه پیچیده باشند که نمایانگر کل کتاب یا درخواست برای نقل قول (RFQ) باشند.
معماری وب سرویس
Service Provider (ارائه دهنده ی سرویس)
این ارائه دهنده وب سرویس است.
ارائه دهنده سرویس این سرویس را پیاده سازی کرده و در اینترنت در دسترس قرار می دهد.
Service Requestor (درخواست کننده سرویس)
این هر مصرف کننده وب سرویس است.
درخواست کننده با باز کردن یک اتصال شبکه و ارسال یک درخواست XML از یک وب سرویس موجود استفاده می کند.
Service Registry (ثبت سرویس)
این یک فهرست منطقی متمرکز از سرویس ها است.
رجیستری مکانی مرکزی را فراهم می کند که توسعه دهندگان می توانند سرویس های جدید را منتشر کنند یا سرویس های موجود را پیدا کنند.
Web Service Protocol Stack (پشته پروتکل سرویس وب)
گزینه دوم برای مشاهده معماری وب سرویس، بررسی پشته پروتکل وب سرویس در حال ظهور است.
پشته هنوز در حال تکامل است، اما در حال حاضر دارای چهار لایه اصلی است.
Service Transport (حمل و نقل سرویس ها)
این لایه وظیفه انتقال پیام ها بین برنامه ها را بر عهده دارد.
در حال حاضر، این لایه شامل پروتکل (HTTP)، پروتکل انتقال ایمیل ساده (SMTP)، پروتکل انتقال فایل (FTP) و پروتکل های جدیدتر مانند (BEEP) است.
XML Messaging (پیام XML)
این لایه مسئول رمزگذاری پیام ها در قالب XML مشترک است تا پیام ها در هر دو طرف قابل درک باشند.
در حال حاضر این لایه شامل XML-RPC و SOAP است.
Service Description (شرح سرویس ها)
این لایه وظیفه توصیف رابط عمومی برای یک وب سرویس خاص را بر عهده دارد.
در حال حاضر، توضیحات سرویس ها از طریق زبان توصیف وب سرویس ها (WSDL) انجام می شود.
Service Discovery (کشف سروس ها)
این لایه مسئول متمرکز کردن سرویس ها در یک رجیستری مشترک و ارائه قابلیت انتشار یا یافتن آسان است.
در حال حاضر، Service Discovery از طریق (UDDI) انجام می شود.
با تکامل وب سرویس ها ، لایه های اضافی ممکن است اضافه شود و فناوری های اضافی ممکن است به هر لایه اضافه شود.
Hyper Text Transfer Protocol (HTTP)
در حال حاضر، HTTP محبوب ترین گزینه برای انتقال سرویس ها است.
HTTP ساده، پایدار و به طور گسترده ای مستقر است.
علاوه بر این، اکثر فایروال ها به ترافیک HTTP دسترسی می دهند.
این اجازه می دهد تا پیام های XMLRPC یا SOAP به عنوان پیام های HTTP ظاهر شوند.
اگر میخواهید برنامههای راه دور را ادغام کنید، خوب است، اما تعدادی از نگرانیهای امنیتی را ایجاد میکند.
Blocks Extensible Exchange Protocol (BEEP)
این یک جایگزین امیدوارکننده برای HTTP است..
BEEP مستقیماً روی TCP لایه بندی شده است و شامل تعدادی ویژگی داخلی است، از جمله initial handshake protocol ، احراز هویت، امنیت و مدیریت خطا.
با استفاده از BEEP می توان پروتکل های جدیدی را برای برنامه های مختلف از جمله پیام رسانی فوری، انتقال فایل، پخش محتوا و مدیریت شبکه ایجاد کرد.
SOAP به هیچ پروتکل حمل و نقل خاصی وابسته نیست.
در واقع می توانید از SOAP از طریق HTTP، SMTP یا FTP استفاده کنید.
بنابراین یک ایده امیدوارکننده استفاده از SOAP بر روی BEEP است.
برای آشنایی بیشتر با پروتکل ها کلیک کنید.
چند نمونه از وب سرویس ها
ما دو درخواست کننده وب سرویس خواهیم نوشت : یکی مصرف کننده مبتنی بر وب (برنامه ASP.NET) و دیگری مصرف کننده مبتنی بر برنامه ویندوز.
کد ارائه شده در زیر اولین نمونه وب سرویس ما است که به عنوان یک ارائه دهنده سرویس کار می کند و دو متد (add و SayHello) را به عنوان وب سرویس ها برای استفاده توسط برنامه ها نشان می دهد. این یک الگوی استاندارد برای یک وب سرویس است.
وب سرویس های دات نت از پسوند asmx. استفاده می کنند.
توجه داشته باشید که متدی که به عنوان یک وب سرویس در معرض دید قرار می گیرد دارای ویژگی WebMethod است.
این فایل را به عنوان FirstService.asmx در IIS ، virtual directory ذخیره کنید (همانطور که در پیکربندی IIS توضیح داده شد ؛ برای مثال c:\MyWebSerces).
FirstService.asmx
<%@ WebService language = "C#" class = "FirstService" %>
using System;
using System.Web.Services;
using System.Xml.Serialization;
[WebService(Namespace = "http://localhost/MyWebServices/")]
public class FirstService : WebService{
[WebMethod]
public int Add(int a, int b) {
return a + b;
}
[WebMethod]
public String SayHello() {
return "Hello World";
}
}
این کد برای تست یک وب سرویس باید منتشر شود.
یک وب سرویس می تواند بر روی اینترانت یا اینترنت منتشر شود.
ما این وب سرویس را در IIS در حال اجرا بر روی یک local machine منتشر خواهیم کرد.
اجازه دهید با پیکربندی IIS شروع کنیم.
Start → Settings → Control Panel → Administrative tools → Internet Services Manager را باز کنید.
وب سایت پیش فرض را باز کرده و راست کلیک کنید.
دایرکتوری مجازی Virtual Directory Creation Wizard باز می شود.
روی ;New &#rarr کلیک کنید.
صفحه “Virtual Directory Alias” باز می شود.
نام Virtual Directory را تایپ کنید.
به عنوان مثال، MyWebServices. روی Next کلیک کنید.
صفحه “Web Site Content Directory” باز می شود.
نام مسیر دایرکتوری را برای virtual directory را وارد کنید.
به عنوان مثال، c:\MyWebServices. روی Next کلیک کنید.
صفحه “Access Permission” باز می شود.
تنظیمات را مطابق با نیاز خود تغییر دهید.
اجازه دهید تنظیمات پیش فرض را برای این تمرین حفظ کنیم.
روی دکمه Next کلیک کنید.
پیکربندی IIS را تکمیل می کند.
برای تکمیل تنظیمات روی Finish کلیک کنید.
برای آزمایش اینکه آیا IIS به درستی پیکربندی شده است، یک فایل HTML (به عنوان مثال، x.html) را در دایرکتوری مجازی (C:\MyWebServices) ایجاد شده در بالا کپی کنید.
اکنون Internet Explorer را باز کرده و http://localhost/MyWebServices/x.html را تایپ کنید. باید فایل x.html را باز کند.
توجه : اگر کار نکرد، سعی کنید لوکال هاست را با آدرس IP دستگاه خود جایگزین کنید.
اگر هنوز کار نمی کند، بررسی کنید که آیا IIS در حال اجرا است یا خیر.
ممکن است نیاز به پیکربندی مجدد IIS و دایرکتوری مجازی داشته باشید.
برای آزمایش این وب سرویس، FirstService.asmx را در IIS virtual directory ایجاد شده در بالا (C:\MyWebServices) کپی کنید.
وب سرویس را در اینترنت اکسپلورر (http://localhost/MyWebServices/FirstService.asmx) باز کنید.
باید صفحه وب سرویس شما را باز کند.
صفحه باید دارای پیوندهایی به دو متد باشد که به عنوان وب سرویس توسط برنامه ما در معرض دید قرار گرفته است.
تست وب سرویس
همانطور که دیدیم، نوشتن وب سرویس در .NET Framework آسان است.
اما میخواهیم کار را سخت تر کنیم.
همانطور که قبلاً گفته شد، ما دو نوع service consumers (مصرف کننده سرویس) خواهیم نوشت،
یکی مبتنی بر وب و دیگری مصرف کننده مبتنی بر برنامه ویندوز.
اجازه دهید اولین service consumers خود را بنویسیم.
Web-Based Service Consumer
یک Web-Based Service Consumer را مطابق زیر بنویسید.
اسمش را WebApp.aspx بگذارید.
توجه داشته باشید که این یک برنامه ASP.NET است.
این را در virtual directory وب سرویس (c:\MyWebServices\WebApp.axpx) ذخیره کنید.
این نرم افزار دارای دو فیلد متنی است که برای دریافت اعداد از کاربر برای افزودن استفاده می شود.
دارای یک دکمه Execute است که با کلیک کردن بر روی آن وب سرویس های Add و SayHello دریافت می شود.
WebApp.aspx
<%@ Page Language = "C#" %>
پس از ایجاد مصرف کننده، باید یک پروکسی ایجاد کنیم تا وب سرویس مصرف شود.
این کار به صورت خودکار توسط ویژوال استودیو دات نت برای ما هنگام ارجاع به سرویس وب اضافه شده انجام می شود.
در اینجا مراحلی وجود دارد که باید دنبال شوند :
یک پروکسی برای مصرف وب سرویس ایجاد کنید.
پروکسی با استفاده از ابزار WSDL ارائه شده با .NET SDK ایجاد می شود.
این ابزار اطلاعات را از وب سرویس استخراج می کند و یک پروکسی ایجاد می کند.
پروکسی فقط برای یک وب سرویس خاص معتبر است.
اگر نیاز به مصرف سایر وب سرویس ها دارید، باید یک پروکسی برای این سرویس نیز ایجاد کنید.
ویژوال استودیو دات نت یک پروکسی به طور خودکار برای شما با اضافه شدن مرجع وب سرویس ایجاد می کند.
با استفاده از ابزار WSDL ارائه شده به همراه NET SDK، یک پروکسی برای وب سرویس ایجاد کنید.
فایل FirstSevice.cs را در دایرکتوری فعلی ایجاد می کند.
برای ایجاد FirstService.dll (پراکسی) برای وب سرویس باید آن را کامپایل کنیم.
c:> WSDL http://localhost/MyWebServices/FirstService.asmx?WSDL
c:> csc /t:library FirstService.cs
پروکسی کامپایل شده را در دایرکتوری bin از virtual directory وب سرویس (c:\MyWebServices\bin) قرار دهید.
Internet Information Services (IIS) به دنبال پراکسی در این فهرست می گردد.
service consumer را به همان متدی که قبلاً انجام دادیم ایجاد کنید.
توجه داشته باشید که یک شی از پروکسی وب سرویس در consumer نمونه سازی می شود.
این پروکسی از تعامل با سرویس مراقبت می کند.
URL مصرف کننده را در IE تایپ کنید تا آن را آزمایش کنید (به عنوان مثال، http://localhost/MyWebServices/WebApp.aspx).
Web Service Consumer مبتنی بر Windows Application
نوشتن یک Web Service Consumer مبتنی بر Windows Application مانند نوشتن هر برنامه دیگر ویندوز است.
شما فقط باید پروکسی را ایجاد کنید (که قبلاً انجام داده ایم) و هنگام کامپایل برنامه به این پروکسی ارجاع دهید.
در زیر برنامه ویندوز ما است که از وب سرویس استفاده می کند.
این برنامه یک شیء وب سرویس (البته پراکسی) ایجاد می کند و متدهای SayHello و Add را روی آن فراخوانی می کند.
WinApp.cs
using System;
using System.IO;
namespace SvcConsumer {
class SvcEater {
public static void Main(String[] args) {
FirstService mySvc = new FirstService();
Console.WriteLine("Calling Hello World Service: " + mySvc.SayHello());
Console.WriteLine("Calling Add(2, 3) Service: " + mySvc.Add(2, 3).ToString());
}
}
}
آن را با استفاده از c:\>csc /r:FirstService.dll WinApp.cs کامپایل کنید.
WinApp.exe را ایجاد می کند. برای تست اپلیکیشن و وب سرویس آن را اجرا کنید.
حال این سوال پیش میآید: چگونه میتوان مطمئن شد که این اپلیکیشن واقعاً وب سرویس را فراخوانی میکند؟
آزمایش آن ساده است.
وب سرور خود را متوقف کنید تا امکان تماس با وب سرویس وجود نداشته باشد.
اکنون برنامه WinApp را اجرا کنید.
این یک مشکل در زمان اجرا ایجاد می کند.
اکنون وب سرور را دوباره راه اندازی کنید. باید کار کند.
امنیت وب سرویس
امنیت برای وب سرویس بسیار مهم است.
با این حال ، نه XML-RPC و نه SOAP specifications هیچ الزامات امنیتی یا احراز هویت صریحی ندارند.
سه مشکل امنیتی خاص با سرویس های وب وجود دارد :
- محرمانه بودن
- احراز هویت
- امنیت شبکه
اگر مشتری درخواست XML را به سرور ارسال کند، آیا میتوانیم اطمینان حاصل کنیم که ارتباط محرمانه باقی میماند؟
پاسخ در اینجا نهفته است :
XML-RPC و SOAP عمدتاً در بالای HTTP اجرا می شوند.
HTTP از لایه سوکت های امن (SSL) پشتیبانی می کند.
ارتباطات را می توان از طریق SSL رمزگذاری کرد.
SSL یک فناوری اثبات شده است و به طور گسترده ای مستقر شده است.
یک وب سرویس واحد ممکن است از زنجیره ای از برنامه ها تشکیل شده باشد.
به عنوان مثال، یک سرویس بزرگ ممکن است سرویس سه برنامه دیگر را به هم متصل کند.
در این مورد، SSL کافی نیست.
پیام ها باید در هر گره در طول مسیر سرویس رمزگذاری شوند و هر گره نشان دهنده یک پیوند ضعیف بالقوه در زنجیره است.
در حال حاضر، هیچ راه حل توافقی برای این موضوع وجود ندارد، اما یک راه حل امیدوارکننده ، استاندارد رمزگذاری W3C XML است.
این استاندارد چارچوبی برای رمزگذاری و رمزگشایی کل اسناد XML یا فقط بخش هایی از یک سند XML فراهم می کند.
می توانید آن را در www.w3.org/Encryption بررسی کنید
احراز هویت
اگر مشتری به یک وب سرویس متصل شود ، چگونه کاربر را شناسایی کنیم؟
آیا کاربر مجاز به استفاده از خدمات است؟
گزینه های زیر را می توان در نظر گرفت ، اما توافق روشنی در مورد یک طرح احراز هویت قوی وجود ندارد.
HTTP شامل پشتیبانی داخلی برای احراز هویت اولیه و خلاصه است ، و بنابراین میتوان از سرویس ها به همان متدی محافظت کرد که اسناد HTML در حال حاضر محافظت میشوند.
SOAP Digital Signature (SOAP-DSIG) از رمزنگاری کلید عمومی برای امضای دیجیتالی پیام های SOAP استفاده می کند.
این به مشتری یا سرور امکان می دهد تا هویت طرف مقابل را تأیید کند.
آن را در www.w3.org/TR/SOAP-dsig بررسی کنید.
امنیت شبکه
در حال حاضر هیچ پاسخ آسانی برای این مشکل وجود ندارد و موضوع بحث های زیادی بوده است.
در حال حاضر، اگر واقعاً قصد دارید پیامه ای SOAP یا XML-RPC را فیلتر کنید، یک امکان این است که تمام درخواستهای HTTP POST را که نوع محتوای خود را روی text/xml تنظیم میکنند، فیلتر کنید.
جایگزین دیگر فیلتر کردن header attribute SOAPAction HTTP است.
فروشندگان فایروال همچنین در حال توسعه ابزارهایی هستند که به صراحت برای فیلتر کردن ترافیک وب سرویس طراحی شده اند.
مهرسا امینی
برنامه نویس ، انیماتور ، سئوکار
موفقیت پس از برخواستن از شکست ها به وجود می آید