نمایش نتایج 1 تا 11 از 11

نام تاپیک: تعین هویت در وب سرویسها

  1. #1
    مهمان

    Tick تعین هویت در وب سرویسها

    با سلام
    من یک وب سرویس دارم و باید در برنامه ی کلاینت در ویندوز یوزر و پسورد را بگیرم و سپس به وب سرویس ارسال کنم(نوعی تعیین هویت)
    جطوری میشه؟
    با تشکر

  2. #2
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    2,342
    در وب سرویس یک تابع تعریف کن که آی دی و پسورد را بگیرد و پردازش کند.
    سپس در برنامه ی کلاینت که مصرف کننده ی وب سرویس است به سادگی این تابع وب سرویس را صدا بزن و به آن پارامتر پاس کن.

  3. #3
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379
    خوب حالا چطوری دسترسی به یک سری بخشهای خاص در وب سرویس را با توجه به این Username/Pass محدود کنم؟

    بعبارت بهتر دسترسی به بعضی بخشهای وب سرویس نیازمند Login باشد؟

  4. #4
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    2,342
    فرض کنید یوزر ها همه ثبت نام کرده اند و دارای username و پسورد هستند.
    شما یک تابع login به صورت WebMethod تعریف می کنید که در کلاینت قابل دسترسی باشد.
    این تابع bool بر می گرداند ( یا شخص صحیح لاگین کرده یا خیر و یوزر نیم و پسورد در کلاینت وارد می شود و روی سرور پردازش).
    سپس در برنامه ی کلاینت قبل از صدا زدن هر قسمتی و استفاده از هر قسمت وب سرویس باید این تابع را صدا بزنید.
    ( یا اینکه برای کم شدن رفت و آمد ها می شود یک صفحه ی لاگین اجباری را در اول کار گذاشت )

  5. #5
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379
    من میخوام Login‌ یکبار صورت بگیره و بقیه کار در صورت Login بودن نیازی به Authentication در هر Request نداشته باشه.

  6. #6
    باید از <Security> المنت استفاده کنی ( حالا حس و حال نوشتن مطلب مفصل نیست . اگر بعدا" بود در مورد امنیت سرویسهای وب یک مقاله مینویسم . بهر حال مطمئنم خودت بقیه اش رو میتونی در بیاری )
    UNIX is simple. It just takes a genius to understand its simplicity
    -- Dennis Ritchie

  7. #7
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    2,342
    البته بحث های پیشرفته تری هم در این مورد وجود دارد (که ای اس پی دات روش خاص خودش (Authentication ) را دارد )
    HTTP Security and ASP.NET Web Services
    http://msdn.microsoft.com/library/de...tpsecurity.asp

    http://www.ondotnet.com/pub/a/dotnet...bservices.html

    http://www.codeproject.com/cs/webser...ebservices.asp

  8. #8
    سرویسهای وب مستقل از پیاده سازی سمت سرور کلاینت هستند . قواعد اونها هم یونیک و یکتاست چه جاوا چه دلفی چه دات نت و ... فرقی نمیکنه . تشخیص هویت یا signed است یا unisigned . در مورد اول میشه به یک سیستم کلایتن سرور عضو بستری مبتنی بر PKI اشاره کرد که از X.509 Certification یا کلیدهای عبور کربراس استفاده میکنه و برای مورد دوم هم Plain Text User/pass Authentication ( که این مورد رو باید حتما" از کانالهای ایمن عبور داد و گرنه Spoofing یا hijacking میتونه فاتحه سیستم رو بخونه ) ولی اینکه احراز هویت متقارن باشه یا غیر متقارن و یا اینکه نحوه عبور اطلاعات شناسائی چطور باشه یک حرفه ، بحث Authorization یک حرف دیگه . یعنی ورای بحث شناسائی ، حالا که شناسائی حاصل شد ، میزان دسترسی ، یا محیطهای مجاز ، توابع مجاز ، کلاسهای مجاز ، و ... غیر مجاز کدامها هستند یک بحث دیگه . SecurityToken و UserElementToken عناصری هستند که توسط اونها در لایهء WSDL ایمنی سرویس مب ایجاد میشه . ( یعنی وقتی قراره استفاده کننده ، تعریف خدمات رو دریافت کنه ، فقط خدمات مجاز رو خواهد دید . این میتونه برای هر کاربر یا برای هر گواهی امنیتی- اعتباری متفاوت باشه و میشه برای هر گروه از اینها سکیوریتی المنتهای مختلف تعریف کرد ) امنیت وب سرویس فقط محدود به لایهء WSDL نیست ( یعنی تعریف سرویس ) . هنگام کاربری از سرویسها هم میشه برای توابع یا اشیاء محدودیت ایجاد کرد و ... :roll:

    باشه برای یک فرصت مناسب که ما هم دپرس نباشیم
    خوش باشید
    UNIX is simple. It just takes a genius to understand its simplicity
    -- Dennis Ritchie

  9. #9
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    2,342
    البته با توجه به متفاوت بودن محیط اینترنت با بحث شبکه های داخلی در عمل مفاهیم مطرح شده ی بالا در ای اس پی دات نت کاربردی ندارند و در صورت نیاز یک مقاله می توانم در این زمینه ارائه دهم
    برای مطالعه بیشتر دوستان می توانند به کتاب زیر فصل سکیوریتی آن مراجعه کنند
    Essentials of ASP. net programming with C#‎ examples
    (لینک دانلود این کتاب در همین بخش موجود است)
    (در ای اس پی دانت عملا بحث ویندوز آوتنتیکیشن (یکی از سه نوع موجود) و مباحث مرتبط با آن (هر چند وجود دارند) کاربردی ندارند)

  10. #10
    البته با توجه به متفاوت بودن محیط اینترنت با بحث شبکه های داخلی در عمل مفاهیم مطرح شده ی بالا در ای اس پی دات نت کاربردی ندارند و در صورت نیاز یک مقاله می توانم در این زمینه ارائه دهم
    ساختار اینترنت با شبکه های داخلی در این مورد هیچ تفاوتی ندارد . استانداردهای امنیتی مانند ساختارهای دو طرفهء احراز هویت یا تصدیق هویت ساده و معمولی همگی مبتنی بر وجود یک سرویس و انتشار یک درخواست است و نه چیز دیگه . SOAP و WSDL هم فارغ از محل کاربرد و ابزار تولید کننده و ابزار میزبان و ابزار استفاده کننده دارای ویژگیهای امنیتی خاصی هستند که در همهء محیطها قابل استفاده هستند . به عنوان مثال برای دسترسی به بانک اطلاعاتی یک دانشگاه که از داخل اینترانت با حمایت کربراس صورت میگیره و سکیوریتی المنتهای وب سرویس میزان اجازهء کاربر را مشخص میکنند ، برای دسترسی از طریق اینترنت به بانک اطلاعاتی ابتدا باید از CA دانشگاه یک گواهی درخواست کرد که گواهی مزبور هویت کاربر نرم افزار را برای وب سرویس مشخص میکند و مجددا" قواعد امنیتی در لایهء WSDL اعمال میشه .
    UNIX is simple. It just takes a genius to understand its simplicity
    -- Dennis Ritchie

  11. #11
    مهمان
    اگر میشه برای هر روشی یه کد مثال بیاورید
    با تشکر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •