docu
This commit is contained in:
parent
3a0e541905
commit
cd425f0c81
5 changed files with 61 additions and 8 deletions
BIN
docs/images/lmssetup/openEdxAPIAccess1.bmp
Normal file
BIN
docs/images/lmssetup/openEdxAPIAccess1.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 601 KiB |
BIN
docs/images/lmssetup/openEdxAPIAccess2.bmp
Normal file
BIN
docs/images/lmssetup/openEdxAPIAccess2.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.3 MiB |
BIN
docs/images/lmssetup/openEdxAPIAccess3.bmp
Normal file
BIN
docs/images/lmssetup/openEdxAPIAccess3.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 502 KiB |
BIN
docs/images/lmssetup/openEdxAPIAccess4.bmp
Normal file
BIN
docs/images/lmssetup/openEdxAPIAccess4.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.2 MiB |
|
@ -7,21 +7,42 @@ Overview
|
|||
--------
|
||||
|
||||
To be able to connect to a learning management system (LMS) and view and use the courses provided by a LMS is an essential feature of the SEB Server.
|
||||
To define an exam or e-assessment and set it up for the use with SEB we use some data of a course that is running on an LMS like identifier,
|
||||
To create an exam or e-assessment, based on a course existing on a LMS, to use with SEB we need some data of this course from the LMS like,
|
||||
start- end-time, name and others. If we furthermore want to be able to automatically restrict the course for SEB access only we need to have proper
|
||||
integration API's in place on both sides, the LMS and the SEB Server. This integration is separated into two main features so far called:
|
||||
integration API's in place on both sides, the LMS and the SEB Server. This integration is separated into two main features so far. This are:
|
||||
|
||||
**Course API**
|
||||
|
||||
This API, provided by the LMS, is used by the SEB Server to query the available courses and the needed data for each course. This API
|
||||
is essential to be able to import a course from the LMS as an exam into SEB Server and configure the course as an e-assessment with SEB.
|
||||
Usually this API comes as a REST or SOAP API with the core LMS implementation. For the Open edX system `this <https://courses.edx.org/api-docs/>`_
|
||||
standard API is used and for the Moodle LMS `this <https://docs.moodle.org/dev/Web_service_API_functions>`_ standard API is used
|
||||
by the SEB Server to query courses
|
||||
Usually this API comes as a REST or SOAP API with the core LMS implementation.
|
||||
|
||||
SEB Server supports this course API's so far:
|
||||
- Open edX: The standard system `Open edX REST API <https://courses.edx.org/api-docs/>`_. The SEB Server uses the "courses" endpoints to get course data.
|
||||
- Moodle: The standard system `Moodle REST API <https://docs.moodle.org/dev/Web_service_API_functions>`_. The SEB Server uses the "core_course" endpoints to get course data.
|
||||
|
||||
|
||||
**SEB restriction API**
|
||||
|
||||
Usually this are REST API's
|
||||
If the automated SEB restriction functionality is available for a LMS depends on the following requirements:
|
||||
|
||||
- There must exist a SEB integration plugin that offers an API to put and pull SEB restrictions in the form of Config-Keys and/or Browser-Exam-Keys
|
||||
To the LMS and a specific course on the LMS to restrict the access. Such a plugin may also offer additional restriction features like restricting
|
||||
on course section or course components or only for specified user roles.
|
||||
- The SEB integration plugin must be installed on the LMS that is used by the SEB Server.
|
||||
|
||||
For more information about known SEB integration plugins that are supported by the SEB Server see :ref:`lms-setup-rest-plugin-label`
|
||||
|
||||
Regardless if a supported LMS is missing the SEB integration plugin installation, the LMS can be used with the Course API and a exam
|
||||
setup will be possiblie but without automated SEB restriction feature.
|
||||
|
||||
To be able connect to an LMS from SEB Server, we need to create an API access-acount on the LMS side that can be used by the SEB Server to
|
||||
access the API of the LMS. How to to this for the different supported types of LMS see ref:`lms-api-account-label`
|
||||
After such an account was created the account credentials, username and password, can be used by the SEB Server to connect to the LMS.
|
||||
Therefore we need to create a LMS Setup on the SEB Server.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Use Cases
|
||||
|
@ -33,15 +54,47 @@ Use Cases
|
|||
|
||||
|
||||
|
||||
|
||||
Create API Account on LMS
|
||||
.. _lms-api-account-label:
|
||||
Create API Access Account on LMS
|
||||
--------------------------
|
||||
|
||||
**Open edX**
|
||||
|
||||
To be able to create an API access-account on Open edX you need a user-account with staff and administration privileges. Following the steps below:
|
||||
|
||||
- Login to Open edX LMS Administration with an appropriate user-account that has administration rights. And find the Users section:
|
||||
|
||||
.. image:: images/lmssetup/openEdxAPIAccess1.bmp
|
||||
:align: center
|
||||
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/lmssetup/openEdxAPIAccess1.bmp
|
||||
|
||||
- Create a new User-Account that acts as an API account. The account must at least have the permissions to query the course API of Open edX and to access the seb_openedx plugin permission.
|
||||
- Make sure that "Staff" status is checked for the account.
|
||||
|
||||
.. image:: images/lmssetup/openEdxAPIAccess2.bmp
|
||||
:align: center
|
||||
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/lmssetup/openEdxAPIAccess2.bmp
|
||||
|
||||
- Back in the administration homepage, find the OAUT2 - Client section and create a new API Client Access for the given User-Account. The Client id and Client secret are automatically generated by Open edx.
|
||||
|
||||
.. image:: images/lmssetup/openEdxAPIAccess3.bmp
|
||||
:align: center
|
||||
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/lmssetup/openEdxAPIAccess3.bmp
|
||||
|
||||
.. image:: images/lmssetup/openEdxAPIAccess4.bmp
|
||||
:align: center
|
||||
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/lmssetup/openEdxAPIAccess4.bmp
|
||||
|
||||
Once the client registration was successful the client id and client secret can be used within the SEB Server to access the course- and SEB-restriction API of Open edX as described in the next step section
|
||||
|
||||
|
||||
.. _lms-setup-rest-plugin-label:
|
||||
Install SEB restriction API plugin
|
||||
----------------------------------
|
||||
|
||||
**Open edX**
|
||||
|
||||
There is a SEB integration plugin developed and supported by `eduNEXT <https://www.edunext.co/>`_.
|
||||
- `Documentation <https://seb-openedx.readthedocs.io/en/latest/>`_
|
||||
- `Repository <https://github.com/eduNEXT/seb-openedx>`_
|
||||
|
||||
|
|
Loading…
Reference in a new issue