PDA

View Full Version : دسترسی به توابع وب سرویس



مهدی رحیم زاده
چهارشنبه 31 اردیبهشت 1393, 23:45 عصر
با سلام خدمت همه دوستان عزیز
یک سوال برام پیش اومده میخوام نظر دوستان رو هم بدونم . فرض کنید که یک وب سرویس داریم که توش یک تابع public تعریف کردیم. حالا اگر کسی بتونه این وب سرویس رو پیدا کنه میتونه به توابع اون هم دسترسی پیدا کنه و هر کدوم رو که خواست اجرا کنه. حالا چکار کنیم که نتونه این کار رو انجام بده؟
اگر تابع رو private کنیم دیگه خارج از وب سرویس به اون دسترسی نداریم. راهکار برای این موضوع چیه؟
با تشکر

parvizwpf
پنج شنبه 01 خرداد 1393, 00:26 صبح
میتونید رمزنگاری کنید . یا با کد خاصی که خودتون میشناسید اونو اجرا کنید.
http://www.codeguru.com/csharp/csharp/cs_webservices/security/article.php/c19403/Web-Services-Security-in-The-NET-Framework.htm

مهدی رحیم زاده
چهارشنبه 07 خرداد 1393, 00:02 صبح
با تشکر از پاسخ شما
یعنی راهی نیست که اصلا وب سرویس از طریق url در دسترس نباشه؟

mehdi.mousavi
چهارشنبه 07 خرداد 1393, 10:27 صبح
با تشکر از پاسخ شما یعنی راهی نیست که اصلا وب سرویس از طریق url در دسترس نباشه؟

سلام.
Web Service ای که از طریق URL (یا به بیان دیگه، وب) در دسترس نباشه که دیگه Web Service نیست؛ Service هستش.
شاید شما هم واقعا نیاز به نوشتن یک Windows Service دارید، یا حتی یک Library. اما اگر هدفتون واقعا کنترل دسترسی
به Web Method های یک Web Service هستش، باید از روش های استاندارد موجود برای این کار بهره ببرید.

موفق باشید.

مهدی رحیم زاده
شنبه 10 خرداد 1393, 07:41 صبح
سلام.
Web Service ای که از طریق URL (یا به بیان دیگه، وب) در دسترس نباشه که دیگه Web Service نیست؛ Service هستش.
شاید شما هم واقعا نیاز به نوشتن یک Windows Service دارید، یا حتی یک Library. اما اگر هدفتون واقعا کنترل دسترسی
به Web Method های یک Web Service هستش، باید از روش های استاندارد موجود برای این کار بهره ببرید.

موفق باشید.
با سلام جناب مهندس موسوی
ممنون از پاسخ خوبی که گذاشتید . کاملا درست گفتید من در واقع میخوام دسترسی به web method های وب سرویس رو کنترل کنم که هر کسی نتونه از وب متد ها استفاده کنه. فرمودید روش های استاندارد میتونید عناوین این روش ها رو بفرمایید که بنده در موردشون تحقیق کنم؟
با تشکر

mehdi.mousavi
شنبه 10 خرداد 1393, 14:32 عصر
با سلام جناب مهندس موسوی ممنون از پاسخ خوبی که گذاشتید . کاملا درست گفتید من در واقع میخوام دسترسی به web method های وب سرویس رو کنترل کنم که هر کسی نتونه از وب متد ها استفاده کنه. فرمودید روش های استاندارد میتونید عناوین این روش ها رو بفرمایید که بنده در موردشون تحقیق کنم؟ با تشکر

سلام.
لطفا به این URL (https://www.owasp.org/index.php/Web_Service_Security_Cheat_Sheet) رجوع کنید. اینجا بصورت تیتر وار، به عناوین مطالبی که باید بهش توجه کنید (در مورد امنیت Web Service ها)
اشاره شده. طبیعتا بسته به تکنولوژی مورد استفاده، باید از ابزارها و روش های متفاوتی برای پیاده سازی اونها استفاده کنید.
اینکه چطور اینها رو با هم Mix & Match کنید به عهده خودتونه، اما منظور من از اینکه گفتم از روش های استاندارد استفاده کنید
این بود که فرضا از رشته ای Hard Code شده سمت Client و Server برای بررسی دسترسی Caller استفاده نکنید چون این اولین
روشی هستش که عموم افراد به ذهنشون میاد و بیش از اون چیزی که تصورش رو کنن، آسیب پذیره. در هر حال، این ویدئو (http://www.asp.net/web-forms/videos/authentication/simple-web-service-authentication) میتونه
نقطه شروع خوبی برای ASP.NET Web Service ها باشه (اگر از این ها استفاده کرده باشید، چون فرضا برای SOAP-Based Web Service ها
به روش های دیگه ای باید عمل کرد).

موفق باشید.