Using web services
Using web services

 

این نوشته توضیح می دهد که چگونه یک مدیر می تواند یک وب سرویس (web service) را برای دسترسی کاربران به یک سرویس (service) تنظیم کند. هر کاربر یک کلید امنیتی خاص و منحصر به فرد ( همچنین به عنوان “token – نشانه” نیز شناخته می شود ) برای دسترسی به سرویس دارد.

 

فعال کردن وب سرویس

  1. دسترسی به  Administration > Site administration > Advanced features
  2. بررسی ‘Enable web services’ و سپس کلیک بر روی ‘Save Changes’

توجه : به دلایل امنیتی، تنها زمانی که قصد استفاده از وب سرویس ها را دارید آن ها را فعال کنید.

Enabling protocols
Enabling protocols

مسیر  Access Administration > Site administration > Plugins > Web services > Manage protocols ، پروتکل های (SOAP, REST, XMLRPC, AMF, …) را در صورت نیاز فعال می کند.

 

Enable_web_service
Enable_web_service

 

معمولا بنا بر درخواست های خارجی کاربران ، پروتکلی که باید فراخوانی و استفاده شود ، فعال می شود.

 

فعال کردن مستندات تابع وب سرویس – Enabling web service function documentation

نتایج مستندات تابع وب سرویس (حتی در صفحه مدیریت پروتکل ها)،در مستندات وب سرویس مخصوص کاربر در صفحه کلیدهای امنیتی (Security Keys) مربوط به خودش، در دسترس است. این گزینه عمدتا برای توسعه دهندگان خدمات وب سرویس کلاینت مفید است. اگر هیچ کسی وب سرویس کلاینت  را ایجاد نکند، نیازی به فعال کردن این ویژگی نیست.

 

Security_keys_and_documentation
Security_keys_and_documentation

 

ایجاد کردن یک سرویس – Creating a service

اگر هیچ کدام از وب سرویس های قبلی نیاز شما را برطرف نکرد، شما می توانید سرویس مورد نظر خودتان را ایجاد کنید. به عنوان مثال، انتخاب کنید که کدام تابع وب سرویس استاندارد از طریق آن سرویس در دسترس باشد.

شما می توانید تنها توابع خاصی را که مورد نیازتان است را فعال کنید، به این طریق امنیت خودتان را به خطر نمی اندازید.

 

Create_a_service
Create_a_service

دسترسی به  Administration > Site administration > Plugins > Web services > External services و سپس کلیک بر روی Add new custom service.

اگر گزینه  ‘Authorised users only’ فعال باشد ، شما نیاز دارید کاربران احراز هویت شده را به صورت دستی انتخاب کنید. در غیر این صورت به تمام کاربران دارای مجوز مناسب ، اجازه داده می شود.

اگر گزینه  ‘Required capability’ فعال باشد ، هر کاربری که به وب سرویس دسترسی داشته باشد ، در برابر این قابلیت انتخاب شده ، بررسی می شود. (این گزینه تنها یک لایه امنیتی اضافی است.)

یک نام را وارد کنید و بررسی کنید فعال است و یا نه.

بر روی دکمه “اضافه کردن سرویس – Add service” کلیک کنید.

 

اضافه کردن تابع به سرویس – Adding functions to the service

سرویس شما در حال حاضر خالی است و کاری انجام نمی دهد. توابع وب سرویس باید اضافه شوند. انتخاب شما توسط مواردی که اجازه می دهید تا برنامه خارجی انجام دهد ، مشخص می شود. برای این مثال، «ایجاد گروه – Create group » را انتخاب کنید.

  1. لینک ‘ اضافه کردن تابع – Add functions‘ را کلیک کنید.
  2. تابع ‘ایجاد گروه – create group‘ را انتخاب کنید و دکمه ‘اضافه کردن توابع – Add functions‘ را کلیک کنید.

توجه داشته باشید که توابع ضعیف (deprecated ) را نمی توان به سرویس اضافه کرد، اگرچه آنهایی که قبلا بخشی از یک سرویس هستند می توانند در آنجا باقی بمانند تا از پایگاه داده کد Moodle حذف شوند.

شما باید به فهرست توابع سرویس برگردید. ‘قابلیت های مورد نیاز – Required Capabilities’ برای هر تابع نشان داده شده است. کاربران برای اجرای یک تابع نیاز به قابلیت های مورد نیاز دارند. همچنین توصیف عملکرد در مستندات API می تواند به شما اطلاعات بیشتری در مورد قابلیت های مورد نیاز بدهد.(Administration > Site administration > Plugins > Web services > API Documentation).

Select_a_web_service_function
Select_a_web_service_function

 

فعال سازی قابلیت ها – Enabling capabilities

مرحله نهایی اختصاص مجوزهای  مناسب است. به قابلیت های زیر باید مجوز داده شود:

  • moodle/webservice:createtoken : برای اجازه دادن به کاربران برای ایجاد یک کلید امنیتی
  • webservice/rest:usewebservice/rest:usewebservice/rest:usewebservice/rest:use که پروتکل های فعال را منطبق (match) میکند.
  • سرویس Required capability اگر (Administration > Site administration > Plugins > Web services > Manage services >Edit link) تنظیم شود.
  • قابلیت های مورد نیاز برای توابع وب سرویس:  این قابلیت های مورد نیاز در هنگام اضافه کردن یک تابع به سرویس لیست می شوند. برای کسب اطلاعات بیشتر در مورد نقش ها و قابلیت ها، مستندات نقش مدیریت (Manage roles) را بخوانید.

پس از انجام این مجوزها، وب سرویس باید تنظیم شود. کاربران باید بتوانند کلید امنیتی شخصی خود را بدست آورند.

 

تنظیمات اختیاری – Alternative settings

احراز هویت کاربران خاص – Authorise only specific users

  1.  Administration > Site Administration > Plugins > Web services > External Services
  2. انتخاب لینک Authorised users (سرویس باید در لینک ویرایش به عنوان Authorised users only تنظیم شده باشد.)
  3. انتخاب تعدادی کاربر و کلیکک کردن بر روی دکمه Add

اگر نیاز باشد که برخی از قابلیت ها به یک کاربر مجاز اختصاص داده شود ، مودل آن ها را نشان می دهد. علاوه بر این اگر بر روی نام کامل کاربر احراز هویت شده کلیک کنید، می توانید برخی از گزینه های خاص را تنظیم کنید: مانند محدوده IP و Valid until.

Authorised_users_link
Authorised_users_link

 

ایجاد کردن یک توکن – creating a token

این ویژگی به شما کمک میکند که برای کاربران خاص توکن ایجاد کنید. اگر کاربر قابلیت moodle/create:token را نداشته باشد،این ویژگی می تواند مفید باشد. این تنها راه ایجاد یک نشانه (token) برای یک مدیر است. به دلایل امنیتی، نشانه ها (token) به طور خودکار در صفحه کلیدهای امنیتی مدیر تولید نمی شوند.

  1. Administration > Site Administration > Plugins > Web services > Manage tokens
  2. Add را کلیک کنید.
  3. created user and service را انتخاب کنید.
  4. دکمه Save changes را بفشارید.

به دلیل اینکه شما یک نشانه (token) برای این کاربر ایجاد کرده اید، لازم نیست که “moodle / webservice: createtoken” را به او اختصاص دهید. در نهایت، توجه داشته باشید که همانطور که می توانید کاربران را احراز هویت کنید، همانطور نیز می توانید محدوده IP و Valid until را برای یک نشانه (token) تنظیم کنید.

Authorised_user_selection_page
Authorised_user_selection_page

 

Create_token
Create_token

 

منبع : سایت رسمی مودل

استفاده از وب سرویس ها در مودل

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *