Bom pessoal, para que a gente configure as credenciais de acesso que vão possibilitar o Terraform se comunicar com a AWS, é preciso, claro, que você já tenha a conta e já tenha também o AWS CLI instalado. Caso você não tenha, volte na aula anterior e siga os passos conforme eu orientei nessa aula, tá? Bom, para você verificar se o AWS foi instalado ou a AWS CLI, melhor dizendo, foi instalado com sucesso na sua máquina, verifique rodando o comando AWS version, e aqui, caso tudo tenha dado certo, você terá essas informações, a versão da WS-CLI e de alguns componentes aqui, de algumas dependências que a WS-CLI tem. Beleza? Então aqui nós já temos o nosso CLI configurado, já temos o nosso CLI instalado, Beleza? Então aqui nós já temos o nosso CLI configurado, já temos o nosso CLI instalado, melhor dizendo. E agora nós precisamos fazer o seguinte, para que a gente possa utilizar o AWS CLI é preciso se autenticar. Então se nós rodarmos aqui qualquer comando, nós com certeza teremos uma mensagem de erro porque nós não temos aqui as nossas credenciais configuradas. E bom, nós vamos navegar aqui até autenticação e as credenciais configuradas. E bom, nós vamos navegar aqui até a autenticação e as credenciais de acesso. Nós temos uma documentação da AWS onde nós temos informações sobre isso. E nós temos diferentes formas de informar as nossas credenciais de acesso para utilizar este Command Line Interface. Claro que nós temos aqui a opção recomendada, onde nós utilizamos o IAM Identity Service, Identity Center, melhor dizendo, e nós temos as instruções para fazer toda essa configuração, onde nós utilizamos aqui credenciais de curto prazo. Então, geralmente nós precisamos, antes de utilizar aqui as nossas ferramentas de comando, nós precisamos executar um comando AWS SSO login e fazer login aqui no browser, caso tenha multifactor authentication habilitado, nós precisamos informar o código e assim por diante, tá? E aí é criado uma sessão para que a gente trabalhe durante algumas horas e depois nós precisamos repetir esse processo para nós atualizarmos as nossas credenciais. Essa daqui geralmente é a forma como nós trabalhamos nas empresas, as empresas maiores, mais estruturadas, provavelmente já vão provisionar, já vão fornecer para você um usuário com uma role específica, com as permissões que você precisa. Então, basta você fazer o login, geralmente uma vez ao dia, para você conseguir utilizar e interagir com a AWS no ambiente de desenvolvimento. Então, essa daqui é a forma recomendada. Temos algumas outras formas também de credenciais de curto prazo, que você pode dar uma olhada, e temos algumas formas aqui que são bem comuns, mas que agora já não são mais recomendadas, como por exemplo, utilizar credenciais de longo prazo. Então nós podemos criar um usuário aqui na AWS, nós podemos criar credenciais para esse usuário, baixar essas credenciais, então sempre utilizar essas mesmas credenciais. então sempre utilizar essas mesmas credenciais. A questão é que essas credenciais vão ficar armazenadas na nossa máquina e é claro que se essa informação for comprometida, qualquer pessoa com essa informação vai conseguir acessar a sua conta e fazer tudo o que aquele usuário pode fazer. Essas credenciais não expiram. Então, se alguém tiver acesso não autorizado a essas credenciais, essa pessoa somente deixará de ter acesso quando essas credenciais forem invalidadas. Então, é por isso que esse método de autenticação não é mais recomendado, mas ele é bastante comum e, claro, ele é o mais simples de ser realizado e é por isso que nós vamos utilizar justamente ele para o nosso exemplo. Então nós vamos conseguir aqui criar de uma forma bem rápida para a gente não perder tanto tempo, até porque o escopo aqui do nosso curso não é pensar nas melhores formas de autenticação com a AWS, utilizar a AWS, nada do tipo, não. A ideia é nós criarmos alguns exemplos de terraform com a AWS, mas o foco é terraform. Então para que a gente não perca tempo, esse será o caminho que nós escolhemos aqui. E esse tipo de autenticação, ainda por mais que ele não seja recomendado, é algo que você ainda vai encontrar muitas pessoas utilizando. Mas, assim como a AWS não recomenda, eu também não recomendo para muitos cenários, mas para a nossa conta pessoal aqui, trabalhando aqui na nossa máquina, de forma bem rápida, de forma esporádica, temos essa opção também, tá? Então vamos lá, agora nós vamos entrar então no console da AWS, nós vamos acessar a nossa conta, você pode pesquisar aí por console AWS, você pode acessar aqui o console, né? Vamos aqui até o console de gerenciamento, vamos fazer o login, onde nós somos então direcionados para essa página. Nós podemos fazer o login a partir do nosso root user, onde nós informamos o e-mail que nós informamos no momento do cadastro, ou então através de algum outro usuário criado posteriormente. Mas, como essa é a primeira vez que nós estamos acessando, nós vamos acessar aqui a partir do nosso root user. Então, eu vou colocar aqui o meu e-mail, beleza? Vou colocar aqui a minha senha. Sign in. Eu tenho o MultiFactor Authentication habilitado, então eu também preciso informar este código. Então, deixa eu obter aqui o código para eu conseguir fazer esse download, para eu conseguir fazer esse sign-in. 384.227, beleza. Perfeito. Agora sim, eu já tenho aqui acesso ao console da AWS. Para nós criarmos usuários, toda essa parte de autenticação, de autorização, ela está disponível nesse serviço IAM, ou IAM, como a gente costuma dizer. E aqui nós precisamos, então, acessar Users. Eu já tenho um usuário criado aqui e agora eu vou criar um outro usuário que será o usuário utilizado para nós trabalharmos aqui localmente, através das nossas ferramentas de command line. O nosso username aqui será IAC, vou criar aqui o nome Terraform. Terraform, beleza. Nós podemos fornecer acesso ao console para esse usuário, mas no nosso caso nós não queremos fornecer esse tipo de acesso. Por isso nós vamos dar aqui o Next. Nós podemos adicionar usuário ao grupo, podemos copiar permissões ou podemos anexar as nossas políticas de permissões diretamente a esse usuário e é isso que nós faremos. Como nós estamos aqui na nossa conta de desenvolvimento, para teste nós vamos dar a permissão de administrador. Então nós vamos escolher aqui a Policy Name, Administrator Access, que tem acesso a tudo dentro dessa conta. Então é por isso que novamente, ter as credenciais do usuário na sua máquina é perigoso, porque se forem comprometidas essas credenciais, a pessoa com acesso a essas credenciais terá acesso de administrador. Mas nós vamos colocar aqui como administrator access. Beleza? Vamos dar um next. E agora nós vamos criar o usuário. Vamos confirmar aqui a criação do usuário. Beleza? Temos aqui agora o nosso usuário criado. Para que a gente utilize os credenciais do usuário, é preciso primeiro que a gente navegue até Security Credentials. Nós temos aqui diversas formas de nós criarmos mecanismos de segurança, credenciais. Porém, a forma como nós acessaremos, que nós iremos utilizar, é criando uma Access Key. Então, crie aí uma access key, aqui existem diversos use cases que a AWS criou para que você informe, para que você tenha sugestões das formas recomendadas nós vamos colocar aqui com a online interface mesmo e vamos confirmar que nós entendemos a recomendação acima e que nós queremos proceder de qualquer maneira então vamos dar um next, beleza temos aqui a opção de criar uma uma descrição mas nós vamos deixar em branco e vamos dar aqui um create nós podemos fazer o download do arquivo que possui essas credenciais tá ou podemos copiar esses valores que é justamente o que nós faremos então nós vamos navegar aqui vamos manter essa página aberta então não fecha essa página porque você não terá acesso a essas credenciais novamente. Por isso, caso você queira, faça o download deste arquivo CSV. Mas, nós não faremos isso, nós vamos aqui já direto configurar o nosso CLI com essas credenciais. Nós faremos da seguinte forma, tá? AWS configure, e esse daqui será o comando que nós vamos utilizar para configurar. Aqui nós precisamos de informar a nossa Axis Key ID. Então, vamos aqui copiar a Axis Key que foi gerada aqui para esse usuário. Vamos colar aqui dentro, beleza. E agora nós também iremos copiar o nosso Secret Axis Key. Então, eu vou colar aqui. Beleza. Tenho aqui agora a nossa região default. Secret Access Key, tá? Então eu vou colar aqui. Beleza. Tenho aqui agora a nossa região default, tá? Nós podemos utilizar qualquer região. Vou utilizar aqui o S, o S2, beleza? E o nosso formato de output padrão, que eu vou colocar como sendo JSON. E beleza, agora as nossas credenciais já estão configuradas. Para que a gente visualize onde essas credenciais estão salvas, nós podemos navegar até o seguinte, até a página, ou melhor dizendo, até a pasta do nosso usuário. Então, eu estou aqui com a pasta Igor Gomes aberta. Nós precisamos acessar um arquivo oculto ou uma pasta oculta, que é a pasta .aws. Quando nós acessamos essa pasta, nós temos aqui dois arquivos, tá? O arquivo config e o arquivo credentials. Se nós abrimos o arquivo config, na verdade, não é esse, deixa eu pegar aqui o outro. Ah, sim, na verdade, está certo, tá? Este arquivo config aqui, ele cria um profile com determinado nome aqui para nós. Aí no seu caso, caso seja a primeira vez que você esteja utilizando o WS-CLI, provavelmente você receberá aqui o profile default, ele vai atribuir o profile default. Então deixa eu colocar aqui de novo, default, beleza. Como o próprio nome sugere, vai ser o profile padrão, então todas as vezes que você executar algum comando na WS CLI, ou todas as vezes que você utilizar o SDK, seja lá qual ferramenta da WS você estiver utilizando, ele vai utilizar esse profile defu, caso você não informe explicitamente um, tá então aqui é a região que nós colocamos e o output. Ele colocou esse outro profile para mim porque eu já havia configurado esse profile, tá? Então, ele utilizou o mesmo nome padrão que eu tinha utilizado aqui anteriormente. Então, para você, você terá aqui profile default. E a mesma coisa para credenciais, tá? Então, nós temos aqui o nome do nosso profile, que eu vou mudar, então agora eu vou colocar aqui default também, beleza? E aqui nós temos a nossa access key ID e a nossa secret access key. E agora, se nós fizermos o seguinte, se nós rodarmos um comando do AWS CLI, como por exemplo AWS S3 LS, ah, sim, aqui o meu profile default está configurado de configurar de forma diferente tá então tem que colocar aqui profile de futebol de forma explícita tá porque esse não é o meu profile padrão bom nós temos aqui então quando eu dei uma wss3 ls utilizando esse profissional que eu acabei de criar, nós teremos acesso aos nossos buckets lá no S3. Então eu tenho aqui AWS, SAM, CLI e o outro que é o teste e estudo. Se eu navegar aqui no console até S3, que é o serviço de armazenamento da AWS, armazenamento de blobs, nós vamos ter justamente esses dois buckets. Então o que ele fez? Quando eu falei para ele utilizar o profile default ele procurou as credenciais desse profile aqui na minha máquina e ele utilizou essas credenciais para acessar a minha conta e é por isso que eu tenho acesso a essas informações então espero que tenha ficado claro para resumir de forma resumida nós criamos um usuário na AWS com permissão de administrador. Essas permissões você pode escolher, se você quiser escolher uma permissão menos abrangente, para ter um acesso mais seguro, você pode fazer isso, mas no nosso caso, nós escolhemos a permissão de administrador. Nós criamos uma Access key para esse usuário, então nós configuramos a WSC ali para criar um profile utilizando essas credenciais. E o profile que nós criamos aqui, depois nós alteramos o nome, nós colocamos o nome como sendo profile default. Então sempre que nós especificamos esse profile, serão essas as credenciais utilizadas. Caso seja a primeira vez que você esteja trabalhando com a WS-CLI, você nunca configurou um profile, você não tem um profile padrão configurado, você não precisa nem especificar este profile, porque como você só tem um, o profile default será o profile utilizado em cada comando que você rodar, beleza? E dessa forma nós finalizamos a configuração do nosso ambiente, é claro que eu vou excluir essas credenciais que eu acabei de criar aqui, vou criar outras credenciais para que a gente consiga realizar os nossos testes, criar o nosso exemplo utilizando Terraform. Espero que você tenha gostado, vejo você na nossa próxima aula.