Kerberos - Cena I


Kerberos é um protocolo que implementa um sistema centralizado de autenticação, baseado em tickets, desenvolvido pelo Massachusetts Institute of Technology (MIT).

O profissional que tem um bom conhecimento do protocolo Kerberos pode implementar ou interligar sistemas baseados nesse protocolo, mesmo que não seja utilizado o Kerberos em sí. Imagine duas aplicações web distintas, cada uma com a sua base de usuários. É possível utilizar o servidor de uma das aplicações como sendo o KDC (Key Distribution Center) gerando tickets e validando a autenticidade do usuário e se comunicando com o servidor da segunda aplicação e com a aplicação web (browser) para estabelecer a comunicação entre elas através da autenticação via um sistema centralizado.
Dependendo do nível de segurança desejado, é possível implementar esse tipo de solução que é muito eficiente e de custo baixo.

O texto a ser apresentado é uma tradução de um diálogo escrito em 1988 para ajudar os leitores a entender as razões que fundamentam os motivos do protocolo Kerberos V4 a ser o que ele é. O Kerberos se encontra na versão 5 com várias alterações em relação a versão 4, porém a síntese do protocolo continua a mesma. Esse texto é muito rico tanto do ponto de vista técnico quanto do ponto de vista literário.
Para quem não conhece o protocolo, o texto é excelente como introdudução ao assunto. Se o leitor tiver conhecimentos básicos de criptografia, conseguirá acompanhar o raciocínio com tranquilidade. Em alguns momentos talvez seja necessário uma revisão do que já foi lido, pois o protocolo é extenso e exige em torno de dez passos para realizar todo o processo de autenticação.

O texto é recomendado mesmo para quem já conhece o protocolo.
No mundo da TI, existem profissionais que além de ficar inventando protocolos, ainda tiveram tempo para se inspirar na mitologia grega ou em Shakespeare.
O texto foi excrito como um diálogo entre Athena (Tina) e Euripides (Rip) e contém uma boa dose de humor.

Foi feito um esforço para manter as características do texto original em uma tradução livre. Porém a tradução apresentada foi feita para aqueles que tem dificuldades com a língua inglesa, e sem dúvida é aconselhável, para quem puder, que leia o original em inglês.


Athena na mitologia grega éra a deusa da sabedoria e da habilidade.
Euripides foi o último dos três grandes escritores trágicos do período clássico grego.
O sistema Kerberos do MIT originalmente foi chamado de Caronte, que na mitologia grega transportava as almas dos mortos de um lado ao outro do rio Aqueronte, mediante um pagamento.
Kerberos, o cão mitológico de três cabeças guardava as portas de Hades, assegurando que os espíritos dos mortos pudessem entrar mas não pudessem sair.

O projeto que deu origem ao protocolo Kerberos se chamava Athena, e também deu origem a outras tecnologias como o X Window.


Projetando um sistema de autenticação:
um diálogo em quatro cenas

Copyright 1988, 1997 Massachusetts Institute of Technology. Todos os direitos reservados.

Originalmente escrito por Bill Bryant, fevereiro de 1988.

Revisado e convertido para HTML por Theodore Ts'o, Fevereiro de 1997. Um epílogo descrevendo as alterações na versão 5 do protocolo Kerberos também foi adicionado.


Sumário

Esse diálogo traz o desenrolar de uma ficção do projeto de um sistema aberto de autenticação de rede chamado "Caronte". Conforme o diálogo progride, os personagens Athena e Eurípedes descobrem problemas de segurança inerentes a um ambiente de redes aberto. Cada problema precisa ser avaliado no projeto do Caronte, e o desenho vai se desenvolvendo de acordo. Athena e Eurípedes não finalizam o trabalho até o final do diálogo.

Quando eles finalizam o projeto do sistema, Athena altera o nome do sistema para "Kerberos", que por grande coincidência é o nome do sistema de autenticação que foi projetado e implementado no Projeto Athena do MIT. O diálogo do sistema "Kerberos" possui uma grande semelhança com a descrição do sistema efetuada em "Kerberos: An Authentication Service for Open Network Systems" ftp://athena-dist.mit.edu/pub/kerberos/doc/usenix.PS apresentada no Winter USENIX 1988, em Dallas, Texas.


Conteúdo
  • Dramatis Personae
  • Cena I
  • Cena II
  • Cena III
  • Cena IV


Dramatis Personae

Athena Uma ambiciosa desenvolvedora de sistemas em ascensão
Eurípedes Um desenvolvedor veterano, sênior e excêntrico



Cena I
Uma baia. Atena e Eurípedes estão trabalhando em terminais vizinhos.

Athena Uma ambiciosa desenvolvedora de sistemas em ascenção
Eurípedes Um desenvolvedor veterano, sênior e excêntrico
Athena  Ei Rip, esse sistema de comparilhamento de servidor é uma porcaria. Eu não consigo finalizar os meus trabalhos, porque sempre está todo mundo logado.
Eurípedes Não reclame comigo, eu sou um mero empregado.
Athena Sabe o que a gente precisa? Nós precisamos dar a cada um a sua própria estação de trabalho para que ninguém precise se preocupar em compartilhar processamento do servidor. E nós usaremos a rede para conectar todos as estações e as pessoas se comunicarem entre sí.
Eurípedes Bacana. Então o que precisamos, umas mil estações?
Athena Mais ou menos.
Eurípedes Você já viu o tamanho do HD de uma estação de trabalho? Não existe espaço suficiente para todos os softwares que rodam nos servidores.
Athena Eu já pensei nisso. Quando você se logar na estação de trabalho, ele acessará o software necessário através de uma conexão com um dos servidores. Essa configuração permite que várias estações de trabalho utilizem a mesma cópia do software, o que ainda torna conveniente a atualização de softwares. Você não precisa ficar zanzando atrás de cada estação de trabalho. Basta uma atualização do software no servidor.
Eurípedes Certo. E o que você vai fazer com os arquivos pessoais? Em um sistema de compartilhamento de sistema eu posso me logar e pegar os meus arquivos de qualquer terminal que esteja conectado cmo o sistema. Será possível eu me dirigir a uma estação de trabalho qualquer e automaticamente pegar os meus arquivos? Ou eu precisarei fazer como em um computador pessoal e manter os meus arquivos em disquete? Espero que não.
Athena Eu acho que nós podemos utilizar outras máquinas para fornecer o armazenamento de arquivos pessoais. Você pode se logar em qualquer estação de trabalho e pegar os seus arquivos.
Eurípedes E a impressão? Cada estação de trabalho terá a sua própria impressora? Quem vai te dar essa grana toda? E as correspondências? Como você vai distribuir as correspondências para todas essas estação de trabalho?
Athena Ahn... é claro que não temos a grana para dar uma impressora para cada um, mas podemos ter máquinas dedicadas para serviço de impressão. Você envia um trabalho para um servidor de impressão e ele imprime para você. Você pode tratar o correio da mesma maneira. Tendo uma máquina dedicada para servidor de correio. Você quer o seu correio, você contata o servidor de correio e pega a sua correspondência.
Eurípedes Tina, o seu sistema de estações de trabalho me soa muito bem. Quando eu tiver a minha, você sabe o que eu vou fazer? Eu vou descobrir o seu usuário, e fazer a minha estação de trabalho pensar que eu sou você. Vou contatar o servidor de correio e pegar a sua correspondência. Vou contatar o servidor de arquivos e apagar tudo, e ...
Athena Você pode fazer isso?
Eurípedes Claro! Como os servidores de rede vão saber que eu não sou você?
Athena Aih, não sei. Acho que eu preciso pensar melhor.
Eurípedes É, parece que sim. Me fala quando você tiver algo.



---------------------
Cena II
Cena III
Cena IV



---------------------
Revisões
Traduzido em 28/09/2007 21:40 em aprox. 1:30 hr
Editado e publicado em 01/10/2007 03:10 em aproximadamente 2:15 hr
Revisado em 01/10/2007 17:15 em aproximadamente 1:30 hr


Popular posts from this blog

Atom - Jupyter / Hydrogen

Design Patterns

Robson Koji Moriya disambiguation name