Esta Ferramenta Consertou a Autenticação em Todo o Meu Stack (Authentik)

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00A sua stack provavelmente parece limpa até chegar à página de login.
00:00:03Um serviço para autenticação local, outro sem autenticação multifator, outro com um sistema de
00:00:08utilizador completamente diferente. E agora você gere diferentes logins através do Docker ou Kubernetes. Funciona
00:00:14até que realmente deixa de funcionar. Isto é o Authentik. Uma ferramenta auto-hospedada que lhe dá SSO, MFA,
00:00:20passkeys e controlo centralizado sobre tudo. Vou mostrar-lhe como colocá-lo a funcionar
00:00:25e como configurá-lo nos próximos minutos.
00:00:30[Música]
00:00:32O Authentik é um fornecedor de identidade de código aberto e auto-hospedado. Basicamente, torna-se um sistema de login
00:00:39para todas as suas aplicações. Em vez de cada serviço gerir mal a autenticação por si próprio ou nós estarmos a remendar
00:00:44as coisas, o Authentik trata de tudo num só lugar. Tenho SSO, autenticação multifator,
00:00:50gestão de utilizadores e controlo de acesso. Pense no Okta, mas que você realmente possui, uma vez que é código aberto.
00:00:56Suporta tudo o que seria de esperar, mas aqui está a grande diferença. Em vez de lutar com
00:01:01configurações XML ou ficar preso nas regras de SaaS, o Authentik usa Fluxos, Estágios e políticas em Python.
00:01:08Assim, constrói a lógica de autenticação como um programador. Essa é a vantagem aqui. É realmente menos fragmentação,
00:01:14melhor segurança e sem bloqueios. Se gosta de ferramentas que aceleram o seu fluxo de trabalho,
00:01:18certifique-se de subscrever. Temos vídeos a sair a toda a hora.
00:01:21Mais programadores estão a afastar-se de configurações complexas e IDPs na cloud, não porque o Authentik seja mais pequeno,
00:01:28mas porque é mais utilizável. Deixe-me mostrar-lhe como isto é realmente.
00:01:32Aqui estou com um servidor novo e, com um comando, "docker compose up", o Authentik está a correr.
00:01:39É realmente tudo o que precisamos aqui. Agora posso abrir a UI de administrador, posso criar uma aplicação,
00:01:44e posso adicionar OAuth como fornecedor ou escolher qualquer coisa aqui. Demora menos de 30 segundos.
00:01:50De seguida, crio uma aplicação de teste. Não se passa nada de especial aqui. Vou apenas definir o
00:01:54URL de redirecionamento, localhost, inserir o ID de cliente e o segredo que obtive do Authentik, e agora o login.
00:02:01É só isto. Posso adicionar novos utilizadores aqui e usá-los para iniciar sessão,
00:02:07por isso agora tenho acesso como utilizador em vez de administrador. Não tenho uma página de login personalizada,
00:02:13não há sistema de palavras-passe para tentar manter e não há autenticação remendada entre serviços.
00:02:19Isto demorou cerca de 90 segundos e esta aplicação tem agora uma autenticação de nível de produção.
00:02:24É esse o momento em que tudo faz sentido. Parece que deveria ser complexo,
00:02:27mas na prática é bastante simples. Posso ligar todo este sistema de autenticação aqui,
00:02:32escolher como quero fazê-lo no Authentik. Mas como é que isto se compara? Porque existem outros.
00:02:38Temos o Keycloak. O Keycloak é ótimo, mas ainda parece muito pesado e ligado ao passado, é mais empresarial.
00:02:45O Authilia é leve, mas pode tornar-se limitado rapidamente. E mencionei o Okta anteriormente,
00:02:50ou até o Auth0. Estes são polidos, mas estamos a pagar, especialmente à medida que aumentamos o número de utilizadores.
00:02:56O Authentik acaba por ficar no meio de tudo isto, certo? Existe uma gestão de identidade completa,
00:03:01existe um construtor de fluxos visual, é muito flexível e não temos de pagar todos estes custos
00:03:05de SaaS. Agora, existe uma versão paga disto, ok, da qual não gosto nada, mas a versão de código aberto para
00:03:12muitos de nós permite fazer muito. Se estiver a escalar muito, então terá de pagar por
00:03:16essas coisas. Mais uma vez, gosto de ferramentas de código aberto. Isto é realmente código aberto, mas temos de pagar um
00:03:22pouco se for escalar muito. A UI é moderna e intuitiva. O fluxo permite-lhe construir visualmente
00:03:27a lógica de login. Portanto, tudo isto é ótimo. E ter essas políticas em Python dá-lhe essas
00:03:33personalizações detalhadas quando a configuração não é suficiente. Funciona bem com Kubernetes e é orientado por API.
00:03:40Tudo isto é muito bom. Além disso, obtém um MFA centralizado, gestão de utilizadores e um portal de serviço
00:03:47tudo num só lugar. Agora, existem desvantagens. Primeiro, sim, é código aberto. E para muitos
00:03:52de nós, isso é ótimo. Mas à medida que cresce, como mencionei, precisa de pagar, o que suponho ser como
00:03:58qualquer serviço, claro. Mas ainda assim não gosto de ter de pagar quando atinjo um certo limite. Não gosto
00:04:04disso, certo? Existe uma curva de aprendizagem. Honestamente, foi um pouco confuso conseguir instalar isto,
00:04:09mas uma vez que estava a correr, funcionou muito bem. É mais pesado do que ferramentas ultraleves
00:04:13também. São cerca de dois gigabytes de RAM. E se não executar alta disponibilidade, torna-se um
00:04:19ponto único de falha. Portanto, não é perfeito, mas para a maioria dos programadores, chegamos à mesma conclusão,
00:04:26certo? É difícil de aprender no início, mas depois de começar a funcionar, é bastante útil.
00:04:30É muito bom. Liga várias coisas diferentes. Agora, vale a pena? Bem,
00:04:35vocês é que sabem. Quero dizer, se executar uma stack auto-hospedada, sim, como home lab,
00:04:40ferramentas internas, SaaS, aplicações locais, isso será ótimo. É muito útil para isto.
00:04:45Se quer SSO e MFA reais em todo o lado, isto resolve um problema que já tem. Se quer
00:04:50controlo em vez de preços, faz ainda mais sentido. E se precisa de lógica de autenticação personalizada, isto
00:04:56é onde ele se destaca muito bem. Agora, faz isso bem, mas não será para si se
00:05:00quiser algo ultraleve com quase nenhuma configuração. Tem de configurar isto. Ou se
00:05:06estiver realmente a escalar, então honestamente, outros fornecedores pagos serão melhores. Mas para a maioria
00:05:11de nós, uma vez configurado isto e algo muda, a autenticação deixa de estar dispersa por todas as aplicações e
00:05:16torna-se um sistema que realmente controla. E assim que se habitua, é difícil voltar atrás. Pelo
00:05:22menos isto faz muito sentido. É uma ferramenta interessante para integrar nos nossos fluxos de trabalho. Se gosta de ferramentas de código aberto
00:05:27e dicas de codificação que aceleram o seu fluxo de trabalho, certifique-se de subscrever o canal better stack.
00:05:32Vemo-nos noutro vídeo.

Key Takeaway

O Authentik centraliza a autenticação de múltiplas aplicações num único sistema auto-hospedado, substituindo implementações dispersas por uma lógica configurável via Python e fluxos visuais.

Highlights

  • O Authentik é uma solução de identidade auto-hospedada de código aberto que fornece SSO, MFA, passkeys e controlo centralizado.

  • A configuração básica via docker-compose permite que uma aplicação receba autenticação de nível de produção em menos de 90 segundos.

  • A lógica de autenticação é definida através de fluxos, estágios e políticas em Python, evitando configurações XML complexas.

  • A ferramenta consome aproximadamente 2 GB de RAM, o que a torna mais pesada do que soluções ultraleves.

  • Embora possua uma versão gratuita de código aberto, o custo de licenciamento pode tornar-se relevante em cenários de alta escala.

Timeline

Problemas de Autenticação e Visão Geral

  • A fragmentação de sistemas de login em diferentes serviços cria vulnerabilidades e dificuldades de gestão.
  • O Authentik atua como um fornecedor de identidade centralizado para SSO, MFA e gestão de utilizadores.
  • O desenvolvimento da lógica de autenticação ocorre através de fluxos, estágios e políticas em Python, não por configurações rígidas.

Stacks modernas frequentemente sofrem com a falta de padronização no login, exigindo que cada serviço gere a autenticação de forma isolada. O Authentik resolve essa dispersão unificando o acesso. Diferente de soluções SaaS tradicionais, a arquitetura baseada em Python permite maior flexibilidade aos desenvolvedores.

Implementação e Operação

  • A instalação básica é realizada com o comando docker-compose up.
  • A integração de uma aplicação nova via OAuth consome menos de 30 segundos de configuração.
  • O acesso total é consolidado, eliminando a necessidade de gerir múltiplos sistemas de palavras-passe.

A operacionalização do serviço é rápida em ambientes Docker ou Kubernetes. Após a configuração inicial, a UI de administrador permite adicionar aplicações rapidamente, definindo URLs de redirecionamento e credenciais de cliente. O resultado é um sistema de autenticação de nível de produção implementado em cerca de 90 segundos.

Comparativo e Limitações

  • O Authentik posiciona-se como uma alternativa mais flexível e moderna face ao Keycloak ou soluções pagas como Okta e Auth0.
  • O consumo de recursos ronda os 2 GB de RAM, exigindo planeamento de hardware.
  • A falta de alta disponibilidade na configuração padrão cria um ponto único de falha.

Comparado a alternativas como o Keycloak, o Authentik apresenta uma interface mais intuitiva e um construtor de fluxos visual. Contudo, impõe uma curva de aprendizagem inicial e custos associados ao crescimento da base de utilizadores na versão não gratuita. É ideal para ambientes de home lab e ferramentas internas que exigem controlo total em vez de modelos de preços SaaS.

Community Posts

View all posts