You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Appends site-specific iframe-targeted user-identifying links to the menu bar.
5
-
You can also hide the link from the menu and use the redirect link to use it as a link in a course.
4
+
This plugin exposes signed user-specific links to external services.
6
5
7
-
After activation, configure a __salt__ then select region __menu_administrator__.
6
+
Flow
7
+
----
8
8
9
-
In the __Administration__ menu, in block __Plugins__,
10
-
you will find a link __User Remote Services__ to manage the services in the main menu (title and URL) and also get the redirect URL to use in a course.
9
+
1. Enable the plugin from the plugin list.
10
+
2. Configure the plugin settings:
11
+
- Salt: required to generate signed hashes.
12
+
- Hide links from navigation menu: optional.
13
+
3. Open the plugin administration page and create remote services with HTTP/HTTPS URLs.
14
+
4. Authenticated users can open the service through:
15
+
- iframe.php?serviceId=ID
16
+
- redirect.php?serviceId=ID
17
+
18
+
Generated parameters
19
+
--------------------
20
+
21
+
Iframe URLs receive:
22
+
23
+
- username
24
+
- hash
25
+
26
+
Redirect URLs receive:
27
+
28
+
- uid
29
+
- hash
30
+
31
+
The remote service can verify the hash with:
32
+
33
+
```php
34
+
password_verify($salt.$userId, $hash)
35
+
```
36
+
37
+
Security notes
38
+
--------------
39
+
40
+
- Only authenticated Chamilo users can open service links.
41
+
- Service URLs must use HTTP or HTTPS.
42
+
- Empty or invalid service IDs are rejected.
43
+
- The plugin does not create or update Chamilo users.
44
+
- The plugin only signs the current authenticated user and redirects/embeds the configured service.
$strings['InvalidServiceTitle'] = 'Please enter a service title.';
31
+
$strings['InvalidServiceUrl'] = 'Please enter a valid HTTP or HTTPS URL.';
32
+
$strings['MissingSaltWarning'] = 'Configure a salt before exposing remote service links. The salt is required to generate signed user URLs.';
33
+
$strings['NoServicesConfigured'] = 'No remote services have been configured yet.';
34
+
$strings['OpenInIframe'] = 'Open in iframe';
35
+
$strings['OpenRedirect'] = 'Open redirect URL';
36
+
$strings['RemoteServicesDescription'] = 'Manage external services that receive signed user URLs from Chamilo. Only authenticated users can open these links.';
37
+
$strings['ServiceCreated'] = 'The remote service has been created.';
38
+
$strings['ServiceDeleted'] = 'The remote service has been deleted.';
39
+
$strings['ServiceManagement'] = 'Remote service management';
40
+
$strings['ServiceUnavailable'] = 'This remote service is not available. Check that the plugin is enabled, the salt is configured and the URL is valid.';
$strings['InvalidSecurityToken'] = 'Token de seguridad inválido.';
29
+
$strings['InvalidServiceTitle'] = 'Ingrese un título para el servicio.';
30
+
$strings['InvalidServiceUrl'] = 'Ingrese una URL HTTP o HTTPS válida.';
31
+
$strings['MissingSaltWarning'] = 'Configure una sal antes de exponer enlaces de servicios remotos. La sal es necesaria para generar URLs firmadas de usuario.';
32
+
$strings['NoServicesConfigured'] = 'Todavía no hay servicios remotos configurados.';
33
+
$strings['OpenInIframe'] = 'Abrir en iframe';
34
+
$strings['OpenRedirect'] = 'Abrir URL de redirección';
35
+
$strings['RemoteServicesDescription'] = 'Administra servicios externos que reciben URLs firmadas de usuario desde Chamilo. Solo usuarios autenticados pueden abrir estos enlaces.';
36
+
$strings['ServiceCreated'] = 'El servicio remoto ha sido creado.';
37
+
$strings['ServiceDeleted'] = 'El servicio remoto ha sido eliminado.';
38
+
$strings['ServiceManagement'] = 'Gestión de servicios remotos';
39
+
$strings['ServiceUnavailable'] = 'Este servicio remoto no está disponible. Verifique que el plugin esté activo, la sal esté configurada y la URL sea válida.';
0 commit comments