Para nosso cliente, uma grande empresa belga com filiais nos EUA e na China, oferecemos a integração de seus Azure Active Directory com Redmine. Pensamos: "O Redmine tem um suporte nativo de LDAP, então isso não deve ser um problema." Toda vez que você disser "isso não deve ser um problema", você terá um deleite.
A Azure Active Directory era relativamente novo para o nosso cliente na época. Eles só recentemente sincronizaram seus usuários com o Azure Active Directory (AAD) usando o ADConnect, então eles pensaram em usar o banco de dados de usuários do Azure para um logon único (SSO) no Redmine. A alternativa era criar um banco de dados de usuários Redmine local duplicado que parecia improvável. Como nosso cliente está familiarizado com as tecnologias da Microsoft, a primeira coisa que me veio à mente foi LDAP.
Eles assumiram que a ativação do LDAP no diretório do Azure era apenas uma mudança. Quem sabia que não era. Para fazer o LDAP funcionar no Azure, nosso cliente precisava configurar um serviço extra do Azure Active Directory. Para encurtar a história: acabou sendo muito complicado e caro.
Durante o processo, nosso cliente descobriu que o Azure dá suporte a oAuth e Saml, protocolos mais recentes para autenticação de usuário. Esses protocolos aparentemente estão por trás dos "botões de login" com os quais todos estão familiarizados: faça login com o Google e faça login com o Facebook.
Felizmente, existe um plugin chamado redmine_omniauth_azure isso faz o truque. Nós o instalamos em nosso Redmine sem problemas. Tudo o que nosso cliente teve que fazer em termos de configurações foi seguir as instruções em https://github.com/Gucin/redmine_omniauth_azure. Nosso cliente também teve que registrar um aplicativo de acordo com as instruções em https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app e adicione um URL de redirecionamento. A URL de redirecionamento é onde o usuário chega após fazer logon no Azure. No nosso caso, foi a URL base do Redmine https://client.redmine-x.com.
No plugin Redmine, precisávamos configurar os seguintes campos, que recebemos de nosso cliente.
ID do Cliente:
Segredo do Cliente:
ID do inquilino:
Para concluir a configuração, precisávamos testar a autenticação. É por isso que pedimos um usuário de teste no diretório do Azure. Ao fazer login pela primeira vez, precisávamos adicionar uma verificação de MFA (autenticação multifator) à conta de teste, então usamos https://www.office.com para o login inicial.
Depois disso, ainda recebemos um erro após o login usando o Azure Active Directory. Demorámos muito tempo para resolver o problema e teremos todo o prazer em ajudá-lo durante o processo de integração.
Então o fluxo é:
- Os usuários clicam no botão "Login via Azure"
- Em seguida, eles são redirecionados para o Azure, onde fazem login usando suas credenciais do Azure
- Eles são redirecionados de volta para o Redmine e são automaticamente logados
- Se o Redmine estiver configurado corretamente, todos os usuários receberão a mensagem “Sua conta foi criada e agora aguarda aprovação do administrador”.
Integre o Azure ao Redmine sem problemas com Michael do RedmineX
ContatoAviso: se o usuário tentar fazer login novamente, ele receberá um erro interno, pois o Redmine não consegue exibir uma mensagem de erro orientada a humanos. Nós saiba como resolver isso e será feliz em ajudá-lo.
Algumas considerações finais:
- Tudo foi definido para um URL Redmine específico. Se você precisar alterar a URL no futuro, precisará testar isso e alterar todas as URLs no Azure também
- Você precisa configurar notificações. As configurações estão ambas no Redmine
https://client.redmine-x.com/settings?tab=notifications
e no servidor no arquivo configuration.yml em/config. Os endereços de e-mail devem corresponder.
Portanto, esta foi a nossa experiência no Azure. Se você precisar de algo assim, estamos prontos para ajudá-lo.
Você quer uma NOVA experiência Redmine e aumentar sua produtividade?
Obtenha uma demonstração GRATUITACompartilhe isso se você gostou!
Dê uma olhada em nossa Youtube Channel.