autenticar_usuario_confiable
Es un escenario posible la necesidad de integración con otros sistemas.
Si ya existe un sistema web en el que:
- los usuarios se loguean y consultan una serie de cursos disponibles,
- cada curso esta asociado con un aula de la plataforma, y
- los usuarios se encuentran replicados en ambos sistemas.
Surge el requerimiento de que el usuario pueda hacer clic en un determinado curso y automáticamente sea redirigido al campus sin pasar por las validaciones de login nuevamente, porque ya lo hizo la primera vez que ingresó en su sistema.
Para este caso, la plataforma brinda el servicio web:
Autenticar usuario confiable
autenticar_usuario_confiable (id_usuario as String , (opcional) id_grupo as Integer)
el método nos proporciona una url con la cual podremos loguearnos a la plataforma con el usuario pasado como parámetro, sin la necesidad de especificar la contraseña. También podemos realizar el logueo directamente en un grupo en particular.
Devuelve: result
Una url que permite el acceso del usuario a la plataforma.
Funcionamiento
- Para loguearnos a la plataforma con un usuario, ejecutamos el WS con el parámetro 'id_usuario'.
- Para loguearnos directamente a un grupo específico de la plataforma, ejecutamos el WS con los parámetros 'id_usuario' y 'id_grupo'
- El acceso generado será válido mientras que el usuario asociado al mismo no haya iniciado sesión (tenga un nuevo acceso)
Ejemplo de Respuesta
Ejemplo de respuesta de la llamada autenticar_usuario_confiable para un usuario particular:
- Llamada:
<aula:autenticar_usuario_confiable>
<aula:id_usuario>alberto</aula:id_usuario>
<aula:id_grupo></aula:id_grupo>
</aula:autenticar_usuario_confiable>
En esta llamada, podemos observar que se solicita autenticar al 'usuario'= "alberto", sin especificar un grupo
- Respuesta:
<autenticar_usuario_confiable_response xmlns="urn:Educativa/Aula/">
<result>http://manuel.e-ducativa.x/open_70803/aula/acceso.cgi?temporal_access=KTwNJLfpX6OtMLWvruZwtvfeVsn&clase=USUARIO</result>
</autenticar_usuario_confiable_response>
Errores de validación
- Educativa::Aula::Error::UsuarioInexistente - cuando el usuario indicado en el parámetro no existe.
- Educativa::Aula::Error::GrupoInexistente - cuando el parámetro id_grupo esta establecido pero el grupo es inexistente.
- Educativa::Aula::Error::UsuarioInexistenteEnGrupo - cuando se especifica el parámetro id_grupo pero este no se encuentra asignado al usuario.
- Educativa::Aula::Error::UsuarioDesactivo - cuando el usuario esta desactivo en el grupo especificado o esta desactivo en todos los grupos y no se especifica el parámetro id_grupo