A instalação da API em sistemas operacionais Linux depende, em todos os casos, da distribuição adotada. Em distribuições baseadas na distribuição Ubuntu, é necessário disponibilizar a API no diretório /usr/lib/apache2/modules, conforme imagem abaixo:
Além disso, é necessário criar os arquivos authentication.load e authentication.conf no diretório /etc/apache2/mods-available, conforme imagem abaixo:
O conteúdo do arquivo authentication.load é: Bloco de código |
---|
title | Arquivo authentication.load |
---|
| LoadModule authentication_module modules/mod_authentication.so |
Já o conteúdo do arquivo authentication.conf é: Bloco de código |
---|
title | Arquivo authentication.conf |
---|
| <IfModule authentication_module>
<Location /api/sara/authentication/v1>
SetHandler mod_authentication-handler
</Location>
</IfModule> |
Configuradas as opções de carregamento da API através do servidor web Apache, é necessário criar o arquivo de configuração da API em /etc/authentication/authentication.conf conforme indicado abaixo: Bloco de código |
---|
# Este é o arquivo de configuração da API de autenticação OAuth2 do
# ecossistema Recintos Aduaneiros. Assim como o arquivo de configuração
# do Apache, as configurações aqui seguem o padrão "chave valor",
# sendo assim, tanto chaves quanto valores contém uma única palavra.
#
# Comentários podem ser feitos adicionando o símbolo # como primeiro
# caractere da linha. Isso também pode ser utilizado para desativar
# configurações.
# Definições de acesso ao banco de dados
#
# DriverID: Driver utilizado para a conexão com o banco de dados
# Server: Nome do servidor onde a instância do banco de dados está instalada
# Port: Porta pela qual o banco de dados pode ser acessado
# Name: Nome do banco de dados a ser acessado
# User: Nome do usuário de acesso ao banco de dados
# Password: Senha usada pelo usuário para acesso ao banco de dados (criptografada)
# Charset: Conjunto de caracteres utilizado pelo banco de dados
CharSet SQL_Latin1_General_CP1_CI_AS
DriverID MSSQL
Database sara_db
Hostname NOME_DO_HOST\NOME_DA_INSTANCIA
Password SENHA_DO_USUARIO
Port 1433
Username NOME_DO_USUARIO
# Definições de parâmetros de sessão
#
# TokenTTL: Tempo de vida do token gerado pela API, em minutos
# RefreshTokenTTL: Tempo de vida do token de atualização gerado pela API
# CanRefreshBeforeExpirates: Flag que indica se o token de sessão pode ser atualizado antes da expiração
#
TokenTTL 20
RefreshTokenTTL 5
CanRefreshBeforeExpirates false |
Com as configurações efetivadas, é necessário ativar o módulo da API através do comando abaixo: $ sudo a2enmod authentication E reiniciar o servidor web Apache através do comando abaixo: $ sudo service apache2 restart |