Content

Moodle OAuth 2.0 Plugin

- Plugin: https://moodle.org/plugins/auth_googleoauth2
- Documentação: https://docs.moodle.org/dev/OAuth2_Services

Configurando Moodle OAuth Plugin

1. Faça o Download do plugin para sua versão do moodle em https://moodle.org/plugins/auth_googleoauth2
tela do doenload do pluggin do Oauth para Moodle

2. Habilite a autenticação por OAuth:
TODO: Incluir print screen

3. Configure o Plugin OAuth2 Moodle (configuração OAuth):

Lembre-se de deixar a palavra "SUAP" no nome utilizado na configuração para permitir a vinculação de contas pelo plugin de integração dos Diários do SUAP com o Moodle

4. Configure o Plugin OAuth2 Moodle (Endpoints):

authorization_endpoint | https://suap.ifsp.edu.br/o/authorize/
token_endpoint | https://suap.ifsp.edu.br/o/token/
userinfo_endpoint | https://suap.ifsp.edu.br/comum/user_info/

5. Configure o Plugin OAuth2 Moodle (Mapeamento de campos):

O endpoint do userinfo retorna os dados do usuário conforme seu perfil (aluno, servidor ou prestador de serviço)

{"username": "BT3016043", "email": "natalia.silva@aluno.ifsp.edu.br", "first_name": "NATALIA", "last_name": "SILVA", "name": "NATALIA CRISTINA SILVA", "matricula_prontuario": "BT3016043", "id": 1173807, "user_role": "ALUNO"}

{"username": "3581080", "email": "pauloevaristo@ifsp.edu.br", "first_name": "Paulo", "last_name": "Silva", "name": "Paulo Evaristo Silva", "matricula_prontuario": "BV212946", "id": 161600, "user_role": "SERVIDOR"}

{"username": "33344455566", "email": "estelasilva@gmail.com", "first_name": "ESTELA", "last_name": "SILVA", "name": "ESTELA CRISTINA SILVA", "matricula_prontuario": "33344455566", "id": 1173207, "user_role": "PRESTADORSERVICO"}

- Mapeamento dos campos:

Nome do campo no SUAP | Campo do perfil no Moodle

name | alternatename

Nome Social (é possível deixar o alternatename como exibição padrão no Moodle)

user_role | department

Servidor ou Aluno

email | email

Endereço de e-mail cadastrado no SUAP. Retorna o e-mail @aluno.ifsp.edu.br. Se não existir, retorna o e-mail pessoal.

first_name | firstname

Primeiro Nome

last_name | lastname

Último nome (Retorna apenas o último nome, por exemplo, Paulo Evaristo da Silva retornará Silva)

username | idnumber

username | No caso de alunos, retorna o prontuário.
username | No caso de servidores, retorna a matrícula SIAPE.
username | No caso de prestadores, retorna o CPF.

Matrícula SIAPE, Prontuário ou CPF.

matricula_prontuario | username

matricula_prontuario | No caso de alunos, retorna o prontuário.
matricula_prontuario | No caso de servidores, retorna o prontuário com a sigla do câmpus.
matricula_prontuario | No caso de prestadores, retorna o CPF.

Prontuário dos alunos ou dos servidores com a sigla do câmpus e prestadores de serviço com CPF.

6. Habilitar o login via OAuth na página de login
Habilitando a autenticação via OAuth na tela de login

7. Alterando Usuários

Confira qual a sua demanda antes de executar no ambiente de produção.

Para manter a compatibilidade com o OAuth e não serem criados novos usuários no moodle é necessário:

  • Utilizar prontuário com sigla: caso o moodle só utilize dos números do prontuário para acesso dos usuários é necessário realizar o update com o sufixo da sigla e duas letras do campus
UPDATE mdl_user
SET username = SIGLA + LOGIN
WHERE condition;
  • Tipo do usuário: para manter os vínculos do usuário, é necessário atualizar o tipo desses para Oauth ao invés de moodle:
UPDATE mdl_user
SET auth = oauth2
WHERE condition;

Incluir o plugin oauth2ifsp para garantir o logout do SUAP [[https://gitlab.ifsp.edu.br/ti/moodle-oauth2]]

Configurando no Suap o app pra acessar o Oauth [[https://sistemas.ifsp.edu.br/projects/oauth/wiki/Wiki]]

moodle_oauth_conf_4.png (30 kB) William Lira Ferreira, 24/07/2017 14:04
moodle_oauth_conf_5.png - Habilitando a autenticação via OAuth na tela de login (60 kB) MATEUS SANTANA, 24/07/2017 14:52
download_plugin_oauth_moodle.png - tela do doenload do pluggin do Oauth para Moodle (100 kB) Brunno Alves, 16/08/2017 10:25
moodle_oauth_conf_1.png (40 kB) Brunno Alves, 16/08/2017 10:56
moodle_oauth_conf_3.png (40 kB) Brunno Alves, 16/08/2017 10:57
moodle_oauth_conf_2.png (100 kB) Brunno Alves, 16/08/2017 11:09
CapturarMapeamentoCampos.PNG (30 kB) Paulo José Evaristo da Silva, 29/08/2017 21:09