======= TokenUFRJ ======= Projeto consiste em uma aplicação para autenticar veracidade de dados de acesso dos colaboradores da UFRJ. Para usar o serviço basta chamar o endereço https://token.ufrj.br. {{ :infotic:sistemas:tokenufrj:tokenufrjcadastro-1.2.png?nolink&800 |}} [[infotic:sistemas:tokenufrj:processodescricao|Entenda o processo]] ---- ====== Adicionando um usuário ====== | **Rota** | ///addCredential// ou ///credenzialiAdd// ou ///api/credenzialiAdd// | | **Método** | Post | | **Parâmetros** | | **login** | CPF do usuário. | | **email** | e-mail do usuário. | | **uuid** | UUID identificador do serviço. | Adicionar um usuário significa dar permissão para ele usar o serviço externo específico. Para isso, usa-se a rota **/credenzialiAdd**, com os seus parâmetros: * **login**: a identificação do usuário no sistema de autenticação da UFRJ, que é o CPF do mesmo; * **e-mail**: do usuário, que será usado para notificá-lo de que foi dada a permissão para o mesmo usufruir do serviço externo específico e; * **uuid**: que é o identificador único do serviço cadastrado no Token UFRJ. ===== Retorno ===== O retorno possível desta rota é um json que pode conter os seguintes atributos: * **loginValidita**: a informação do login que foi passado para o serviço; * **uuidValidita**: a informação do uuid que foi passado para o serviço; * **login**: contendo os possíveis valores: **[true]** caso o usuário tenha sido cadastrado corretamente e; **[false]** caso o usuário não tenha sido cadastrado corretamente; * **mail**: contendo o valor **[true]** quando o usuário ainda não tiver sido cadastrado anteriormente. Quando o usuário já tiver sido cadastrado anteriormente, este atributo não será retornado e; * **uuid**: contendo o valor **[false]** quando o uuid não coincidir com um identificador válido. Caso o identificador seja válido, este atributo não será retornado. * **informazioni**: contendo informações adicionais, quando houver. ---- ==== Exemplos ==== **1. Usuário, email e uuid válidos.** **Envio**: ''{ login: '99999999999', email: '99@99.com.br', uuid: 'uuid', }'' **Retorno**: ''{ "loginValidita": "99999999999", "uuidValidita": "uuid", "login": true, "mail": true, }'' **2. Usuário, já cadastrado.** **Envio**: ''{ login: '99999999999', email: '99@99.com.br', uuid: 'uuid', }'' **Retorno**: ''{ "loginValidita: "99999999999", "uuidValidita": "uuid", "login": true, }'' **3. UUID não encontrado.** **Envio**: ''{ login: '99999999999', email: '99@99.com.br', uuid: 'uuid', }'' **Retorno**: ''{ "loginValidita: "99999999999", "uuidValidita": "uuid", "uuid": False, }'' **3. UUID não informado.** **Envio**: ''{ login: '99999999999', email: '99@99.com.br', uuid: , }'' **Retorno**: ''{ "loginValidita: "99999999999", "uuidValidita": "uuid", uuid: "NULL", }'' ---- ====== Validando um usuário ====== | **Rota** | ///validate// ou ///credenziali// ou ///api/credenziali// | | **Método** | Post | | **Parâmetros** | | **login** | CPF do usuário. | | **token** | Token do usuário. | | **uuid** | UUID identificador do serviço. | Validar um usuário significa verificar a permissão para ele usar o serviço externo específico. Para isso, usa-se a rota /credenziali, com os seus parâmetros: * **login**: a identificação do usuário no sistema de autenticação da UFRJ, que é o CPF do mesmo; * **token**: do usuário, para validação e; * **uuid**: que é o identificador único do serviço cadastrado no Token UFRJ. ===== Retorno ===== O retorno possível desta rota é um json que pode conter os seguintes atributos: * **auth**: contendo os possíveis valores: **[true]** caso o usuário e o token corresponderem e; **[false]** qualquer outra condição; * **tokenValidita**: a informação do token que foi passado para o serviço; * **loginValidita**: a informação do login que foi passado para o serviço; * **uuidValidita**: a informação do UUID que foi passado para o serviço; * **login**: a informação do login que foi passado para o serviço contendo o valor **[false]** caso o usuário não tenha sido cadastrado anteriormente. Quando o usuário já tiver sido cadastrado, este atributo não será retornado; * **token**: contendo o valor **[false]** quando o token não for válido. Quando as credenciais do usuário forem válidas este atributo não será retornado; * **uuid**: a informação do uuid que foi passado para o serviço contendo o valor **[false]** quando o uuid não coincidir com um identificador válido. Caso o identificador seja válido, este atributo não será retornado. * **informazioni**: contendo informações adicionais, quando houver. ---- ==== Exemplos ==== **1. Usuário, token e uuid válidos.** **Envio**: ''{ login: '99999999999', token: '9999', uuid: 'uuid', }'' **Retorno**: ''{ "auth": True, "loginValidita": '99999999999', "tokenValidita": '9999', "uuidValidita": 'uuid', }'' **2. Usuário, não cadastrado.** **Envio**: ''{ login: '99999999999', token: '9999', uuid: 'uuid', }'' **Retorno**: ''{ "auth": False, "loginValidita": '99999999999', "tokenValidita": '9999', "uuidValidita": 'uuid', "login": False, }'' **3. Token inválido.** **Envio**: ''{ login: '99999999999', token: '9999', uuid: 'uuid', }'' **Retorno**: ''{ "auth": False, "loginValidita": '99999999999', "tokenValidita": '9999', "uuidValidita": 'uuid', "token": False, }'' **4. UUID não encontrado.** **Envio**: ''{ login: '99999999999', token: '9999', uuid: 'uuid', }'' **Retorno**: ''{ "auth": False, "loginValidita": '99999999999', "tokenValidita": '9999', "uuidValidita": 'uuid', "uuid": False, }'' ----