ILIAS
release_5-4 Revision v5.4.26-12-gabc799a52e6
◀ ilDoc Overview
howto.php
Go to the documentation of this file.
1
<?
php
2
/*
3
4
How SOAP authentication works.
5
6
SOAP authentication can be used for external systems that use ILIAS as a
7
subsystem in a way that the external system provides links into ILIAS
8
that look like ILIAS permanent link and include additionally parameters
9
to provide SSO between the external (master) system and ILIAS.
10
11
Basic Workflow
12
13
(1) The external system allows users to login and creates a session.
14
(2) The external system provides links to learning ressources that are located
15
in ILIAS. The links include the parameters
16
- ext_uid (ID of the user in the external system)
17
- soap_pw (a temporary password, the external system may change these
18
for every creation of a link if necessary)
19
(3) The user clicks on the link.
20
(4) ILIAS recognizes the SOAP parameters in the link and asks the external
21
system via a SOAP call, whether the credentials provided belong to a
22
valid session.
23
(5) The external system sends a response, the response may also contain
24
basic user data (firstname, lastname, email).
25
(6) If the session is valid, ILIAS opens a new session for the user. If the
26
user does not exist, ILIAS creates a new account using the provided user
27
data.
28
29
Links:
30
31
The links should look like permanent links + soap_pw and ext_uid, e.g.:
32
goto.php?clientid=abc&target=crs_123&soap_pw=kjWjb34&ext_uid=500
33
34
SOAP call to the external server:
35
36
There is an example implementation of a SOAP server (=external master system)
37
in classes/class.ilSoapDummyAuthServer.php). The main soap call is:
38
39
isValidSession:
40
in:
41
array('ext_uid' => 'xsd:string',
42
'soap_pw' => 'xsd:string',
43
'new_user' => 'xsd:boolean')
44
out:
45
array('valid' => 'xsd:boolean',
46
'firstname' => 'xsd:string',
47
'lastname' => 'xsd:string',
48
'email' => 'xsd:string')
49
50
*/
php
Services
SOAPAuth
howto.php
Generated on Thu Jan 30 2025 19:02:04 for ILIAS by
1.8.13 (using
Doxyfile
)