e eu você ela todo mundo que desenvolve já precisou criar uma página de login e preciso também proteger o contexto da aplicação com dados ou alguma informação para desenvolver essas soluções da forma correta você precisa ter conhecimento sobre autenticação e autorização de usuários e entre aplicações e os microsserviços aí por os trouxemos esse vídeo para você recheado de conteúdo e tudo liberado sem precisar de token de acesso ao contrário dos dados da aplicação que vamos construir para essa Será preciso ter um jwt vale faz ideia Seja bem vindo a mais um mão no código by red red vou falar mais uma vez para a gente é um prazer poder contar com essa parceria com a cada vídeo temos uma participação de um Expert nas mais diversas ferramentas criadas ou apoiadas pela rede que uma referência no mundo open-source essas ferramentas são amplamente utilizados no mercado em projeto de todos os Portes jato o conteúdo vai ser de qualidade já vou pedir para você deixar aquele like e se inscrever aqui no código fonte TV a estrela de hoje é o que coloque uma ferramenta específica para gerenciamento de identidade e acesso de usuários criados pela comunidade e é claro ou pen só o que conto pode ser usado em aplicações ligadas aplicativos móveis e micro serviços tanto para fazer a autenticação e autorização de usuários quanto em aplicações com ele ainda dá para integrar o serviço de autenticidade com provedores externos como objetivo gol e Facebook por exemplo gerenciar senhas dos usuários perfis de autenticação e até aplicar um segundo fator de autenticação quem vai dar uma verdadeira aula sobre o assunto é Rafael Abreu me não é arquiteto na rede Hatch uma referência quando o assunto é segurança de aplicações e que vem trabalhando em projetos com temas super atuais como o bem bem ele vai criar um servidor de recurso integrar com que coloque configurar e fazer um teste passando pela emissão do toque até a chamada do vi só saber que é na E aí piá o back-end que está Protegendo o recurso que queremos acessar conta OK então ela seja bem-vindo e já conta como fazemos a instalação do que cor classificação no terminal nós iremos baixar a última redes do que colou que se encontra no site do Cerrado depois nós iremos executar uma verificação de integridade para visitar tudo certinho lembrando também que ficou que tá ele pode rodar em ambientes voltados para container Bastando você realizar o ponto da imagem no site do coelho e pontual eu chamo repositório patrocinado pela red red feito isso mas ele executar o arquivo standalone. sh ou está Giovani. Baixo se você estiver rodando em ambiente Windows e [Música] [Aplausos] E aí [Música] E se eu quero de login ao console for exibido com o senso Então a nossa inicialização deu tudo certinho e nós podemos prosseguir com a utilização do veículo segura essa tela aí que nós vamos voltar um pouquinho mais à frente quando nós falamos em segurança o primeiro tema que vem a nossa cabeça é invasão ou quebra de algum mecanismo de segurança certo e geralmente como é que conectado o identificado esses eventos ou até mesmo categorizados esse é um trabalho do pessoal da o ASP ou do open web application Security Project ontem web application Security Pro gente é o grupo da comunidade responsável em catalogar e publicar artigos e materiais sobre temas relacionados à segurança de aplicações em seu último relatório publicado em 2017 grupo divulgou seus principais tipos de Ataque aos sistemas web percebam que desse relatório aí tem muitos problemas que são relacionados a implementações caseiras ou até mesmo se implementações defasados ou legados né que muitas pessoas ainda utilizam resolver a responsabilidade é delegada ao bronca de identidade é um componente de mídia que interliga provedores de Serviços Automotivos provedores de identidade ele estabelece uma relação de confiança entre serviços heterogêneas porém de forma o jwt é um recurso que possui o objetivo de trafegar de forma integrada de uma determinada entidade em três partes estes dados ou clientes como falamos inglês são codificadas e objeto de Jason em uma estrutura jws com a intenção de garantir primeiramente a integridade por meio de assinatura digital e até mesmo a confidencialidade por meio de criptografia existe uma ferramenta online que você consegue acessar o endereço jwt.
io essa ferramenta consegue decodificar o toque e você consegue inclusive ler todas as clientes que estão que possuo e agora que nós estamos com que coloque sendo executado como é que fazemos para emitir um token jwt Então a primeira coisa que o Kiko o que pede pra gente é a criação de usuário que vai administrar todo console da ferramenta basicamente algo criativo usuário como ele tá pedindo E aí Se informa senha confirmação dela bom então pessoal Essa é aquela carinha do que Globo onde nós temos o nosso portal de administração ou console admin então para esse nosso primeiro exemplo nós vamos que era uma aplicação de teste e com essa aplicação nós iremos obter um novo token utilizando o cliente http rest no caso positivo eu vou criar o parente novo vou dar um nome qualquer por exemplo central. web clique em save o que a gente precisa informar que basicamente é uma série de redirecionamento válida neste caso o pessoal a gente utiliza uma específica do pote para gente poder validar a a nossa obtenção do tanque que esta URL feito isso nós podemos salvar o nosso cliente está devidamente cadastrado Então vão ficar aqui no las para nós abrimos uma nova requisição do pôster Lembrando aqui pessoal quem governa http nesse caso ele difere por enquanto tá porque a gente ainda não tem marca aí rodando para que a gente consiga consumir e trafegar esse tom quem ainda então a gente altera aqui Parabéns authorisation selecionamos um dia como é que vai ser o alto a e aqui percebi que já tem até inclusive algumas informações preenchidas mas realizamos revisão aqui com vocês a gente tem um grande tarde né que é o fluxo é utilizado que se viu autorization code ou callback URL no caso é a nossa a nossa URL de retorno uma vez que depois que nós autenticamos o nosso usuário nós retornamos para o potion e ele temos o toquem o endereço de autenticação do que coloque que hoje né o nosso cenário local estamos utilizando local host na porta 8080 Lembrando que a helm que é a Master nós vamos falar isso um pouquinho mais à frente o nosso endereço de de token de acesso né permanece aqui também conhecido de poste aqui tá joia o nosso cliente Jardim é o céu é que nós acabamos de criar multi Coloque os discos por hora vamos deixar este e corrente authentication sem de acidentes que aufl basicamente esse aqui pessoal é o nosso setup para que a gente consiga simular que obtenção de um toque vamos ver se vai funcionar a autenticação é um de nós informamos um usuário Que Nós criamos Aline somente quando nós tiramos acessando a primeira vez né do que Clube coloca que usar Que Nós criamos e a senha clicamos em saindo então deu certinho pessoal obtemos o toque aqui se nós ficarmos improcedem a gente consegue ver aqui o Toquinho de forma codificado tá em base64 a gente pode copiar um pouquinho de foi obtido tá então eu vou copiar aqui com o teclado mesmo e a gente vai levar agora por jwt criou para analisar o conteúdo desse toque e do lado esquerdo ele te forma codificada em base64 e do lado direito todo ele bonitinho aqui para a gente poder ler e avaliar todos os dados que compõem este Tom que ainda falando sobre toques e conforme definido arrefecer 6749 Os clientes são perde Connect utilizam esgotos que representam na prática recursos papéis ou até mesmo ações que aplicação cliente solicita ao servidor de autorização por exemplo quando uma aplicação cliente solicita o escute profae ela tá pedindo na verdade um e-mail o nome nome de família idade na endereço dependendo se usuário pensas informações pro nosso exemplo eu vou criar um disco chamado real que representa a saúde né do usuário aí e a Clara alguns atributos a estes cobro seria peso altura plano de saúde nós iremos criar o nosso corpo chamado Ralf depois fazer a medição de quatro atributos como sendo atributos do usuário vincular esses valores no próprio usuário que nós estamos utilizando e dizer a população é solicitado quando nós fizemos uma nova solicitação do toque então eu tenho que o menu à esquerda chamado talents cups percebam que eu já tenho algums escutem adconect lá padrão definido né Nós vamos criar um novo então clicamos na opção cliente vamos lá no nome Health em uma breve descrição e o protocolo permanece como sendo o cliente Collection clicamos incêndios E aí ele vai abrir para gente uma águia chamada Peters é aqui que nós iremos inserir o nosso quatro atributos então nós ficamos na opção cliente e nós iremos inserir nos nossos quatro tributos como sendo atributos de usuário perceba que é que agora ele vai abrir para gente mais dois impor está como que vai relacionar o nome deixa aquele do outro com atributo que nós iremos veicular no usuário desse importante aí o segundo é o nome este atributo irá ser representado como uma Klein do toque então para quê que se precisar mas mas iremos manter os mesmos valores aqui os mesmos nomes temos também o tipo desta Klein né Ela pode ter vários tipos no caso aqui como nós estamos trabalhando com o número vamos Será que você tá aqui para a Indy clicamos em save e vamos inserir os próximos atributos mantendo Aqui tá o mesmo padrão o numérico também é o caso do sexo eu vou colocar como stringhi percebo que o sexo ele já é defendo no escopo profile do aprende Connect por padrão e por fim o último atributo nós que também vai estar com uma string feito isso mas agora vamos vincular esses valores ao nosso usuário então clicamos aqui na minha chamada é queridos E nós queremos adicionar agora os atributos que nós encontramos a nossa escopo [Música] e lembrando sempre de clicar em servir ao final enfim nós vamos retornar ao cliente e dizer que estes culpa agora pode ser solicitado voltando agora para o posto é nós precisamos fazer uma nova solicitação para obtenção de um novo token jwt mais antes nós precisamos agora solicitar novo descobri que Nós criamos então basta ensinar ele aqui jeito que a opção novamente gatinho access-token obrigado incosciente e percebo agora Que Nós criamos aqui um novo toque e com sorte nós temos os nossos valores os nossos atributos do usuário sendo preenchidos aqui também como cães neste toque então vamos agora por jwt aí ou com nomes o Tom que foi gerado e percebo agora que nós temos dentro da cliente chamado esculpe e nossos corpo criado mais os atributos que nós encontramos o nossos olhos recentemente que então agora que a gente já viu um pouquinho funcionamento da obtenção do toque o que mais que consegue fornecer para a gente para que a gente não precisa inventar a roda vocês principais características é a questão de peça hoje policy né que é o gerenciamento de senhas de usuários como você vai gerir a senha dos seus usuários né para aplicação de uma política mais forte e a questão de governança como todo então você tem aqui uma série de expressões né onde de critérios que você consegue aplicar a quantidade mínima de caracteres é uma delas a ignorar que a senha seja igual o nome do usuário a utilização de expressão regular entre muitos outros você consegue também aplicar o fator de autenticação secundário Electrolux JP Então você consegue utilizando o próprio dispositivo móvel do salário fazer com que ele entre como fator de autenticação no caso aqui um token temporário e eles viajar esses exigido também juntamente com a senha dele e por fim não muito menos importante a questão de você utilizar em uma integração como provedor de identidade externo ao que coloque ou seja quantos usuários fizeram autenticação você consegue delegar o reconhecimento deste usuário ou até mesmo Aproveitar alguns atributos que já possua o provedor de identidade que esteja de forma externa no caso aí quer que nunca autêntico por exemplo utilizando uma conta do Facebook do Twitter do próprio Gmail por exemplo Então você consegue fazer este recurso aqui também você consegue utilizar esse recurso a se você quiser integrar o serviço de list All Cloud modelo mais comum utilizado no que coloque para gerenciamento de autorização do usuário é o arbac ou base aqui esconde neste modelo especificamente é como a gente consegue gerir as autorizações por meio de papéis ou grupos de usuários a gente tem inicialmente a definição de reinos ou Elvis nela você consegue definir políticas de segurança específicas de cada usuário tem uma forma específica de entrar e até mesmo de sair a relva e consegue gerente forma isolada clientes usuários grupos e permissões que são super missões que nós estaremos para cada cliente então nós consigamos gerir dentro de um contexto o domínio de segurança as informações no caso é fornecido para gente o mal e padrão daqui a Master mas nada impede Que Nós criamos aqui a nossa por exemplo Tá mas podemos criar um contexto de segurança porque se for para uma necessidade da sua organização da sua empresa do modelo de gerenciamento de autorização airbag geralmente nós temos a organização de clientes e grupos mas como é que eles se relacionam Imagine que você tem um contexto de segurança nos acontece Os seguranças você precisa identificar e categorizar esses grupos e até mesmo os papéis que esses grupos vão estar né sendo Associados Então você tem geralmente é o seu contexto Você tem o nome aí você tem uma vestimenta uma identidade né E os seus grupos que estão dentro de cada grupinho dele você vai conseguir definir associar os seus papéis Então você consegue ter essa forma mais lógica organizar aí e relacionar dentro do seu domínio segurança depois que nós conseguimos efetivar o nosso modelo de autorização internamente Geralmente os clientes eles iam ou menos de autenticação de usuário por meio de um fluxo e dentro dela 10. 0 o do Papel Piaget Connect nós temos a definição de quatro fluxos entre eles são autores deixam couve-flor o INPI flor o Residencial e o Caique dentes mas para o nosso cenário aqui nós estamos utilizando apenas autorization code E aí eu vou explicar um pouquinho mais para vocês como é que ocorre por trás essa comunicação entre cliente e servidor de autorização servidor de recurso eo usuário final geralmente conversa quando o usuário ou sujeito ele faz uma solicitação ao documento que está protegido esse documento ele pode ser uma informação que pode ser um binário pode ser qualquer coisa que a ele estejam protegidos e para que ele obtém esse acesso a ele precisa ser primeiramente é reconhecido E por que que ele vai ser reconhecido então geralmente a aplicação a de alegra o reconhecimento para o nosso servidor de autorização que é o que coloque então elas especificamente uma indicado chamado alto ali seja feito isso o senhor de atualização precisa devolver para o usuário um formulário alguma ecanismo para que ele seja reconhecido G o usuário faz o impulso aí de um par né que seria usuário e senha mas pode ser qualquer outra coisa pode ser um complemento até pode ser a usuários sem aí mais um código app que ser um token temporário então e fazem parte dessas credenciais as credenciais uma vez que somos otárias elas passam por um processo de secagem em muitas vezes geralmente quando aplicação a solicitou escopo adicional lembra que nossa sempra passado nós utilizamos nesse corpo chamado Health realmente quando aplicação faz a solicitação de uma escova adicional os olhos vezes é é convidado a fazer uma provação ou A negação dessa dessa concessão de dados isso pode ser opcional ou não Tá feito isso a provando né o caminhão feliz aí ele dela é esse novamente para a gente pode autorização o servidor de atualização ou que coloque devolve para aplicação o nosso autorization code ficar um pouquinho ali de tempo bem curtinho de vida e aí para que que serve isso a gente consegue né nesse momento identificar que os olhos foi reconhecido e os servidores e não enviou para aplicação cliente um token temporário para que ele possa até trocar o no caso né e fazer a apresentação desse desse autores deixam Gold em troca de um lápis estopim de um pouquinho de acesso E aí realmente neste token de acesso sobrou aqui estou quem que vai conter aliás informações aquele usuário né e o que que ele o que que ele representa que atua com grande Rafael mas e se alguém conseguiu interceptar o autores deixam Cold e obter o token no lugar da aplicação que solicitou inicialmente existe essa possibilidade que a gente pergunta a Vanessa para esses casos especificamente a o off 2.