<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Eldius on Medium]]></title>
        <description><![CDATA[Stories by Eldius on Medium]]></description>
        <link>https://medium.com/@eldius?source=rss-5c99647a3278------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/0*4KrNn1dUosJ1Uftb.jpg</url>
            <title>Stories by Eldius on Medium</title>
            <link>https://medium.com/@eldius?source=rss-5c99647a3278------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Tue, 26 May 2026 01:38:20 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@eldius/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Como utilizar recursos AWS fora da conta AWS]]></title>
            <link>https://medium.com/bemobi-tech/como-utilizar-recursos-aws-fora-da-conta-aws-2c5fa40c6b68?source=rss-5c99647a3278------2</link>
            <guid isPermaLink="false">https://medium.com/p/2c5fa40c6b68</guid>
            <category><![CDATA[tech]]></category>
            <category><![CDATA[technology]]></category>
            <category><![CDATA[aws]]></category>
            <dc:creator><![CDATA[Eldius]]></dc:creator>
            <pubDate>Wed, 24 Feb 2021 13:28:27 GMT</pubDate>
            <atom:updated>2021-02-24T13:28:27.062Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/771/1*xdesTmXBjnpWrdoEF6AbNw.png" /></figure><p><strong>Problema inicial</strong></p><p>Tivemos a necessidade de acessar um recurso da AWS (mais específicamente uma tabela do DynamoDB), que estava na conta do time à partir de uma aplicação rodando dentro do System Lake (um PaaS interno da empresa), que fica em outra conta da AWS.</p><p>Explicando melhor a situação, alguns serviços da AWS, como Secrets Manager, DynamoDB, S3, entre alguns outros, necessitam que a aplicação se autentique na API da AWS para que possa acessar o recurso.</p><p>Quando executamos a aplicação em uma instância EC2 na mesma conta, basta que a role desta instância tenha a permissão de acesso ao recurso. Porém quando a aplicação é executada fora desta conta (ou dentro de outra conta) essa solução não é tão simples.</p><p><strong>Solução encontrada</strong></p><p>Foi criado um usuário que teria acesso à tabela do DynamoDB, com credenciais (secret key e access id), para ser utilizado pela aplicação.</p><p><strong>Código da criação do recurso e do usuário da aplicação</strong></p><p>Abaixo, segue um resumo do código para a criação da tabela em si:</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/fe22c5a08ab827ee6ef8a4332c12aa69/href">https://medium.com/media/fe22c5a08ab827ee6ef8a4332c12aa69/href</a></iframe><p>Aqui criamos o usuário da nossa aplicação</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/9d464839b775d06f16a6c09fc28b5b33/href">https://medium.com/media/9d464839b775d06f16a6c09fc28b5b33/href</a></iframe><p>Já aqui, criamos as credenciais (access key e secret key) para o usuário criado:</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/6f5d6535002ef41b9085d4291a186512/href">https://medium.com/media/6f5d6535002ef41b9085d4291a186512/href</a></iframe><p>E por último concedemos as permissões necessárias ao usuário da aplicação, que no caso eram referentes apenas ao acesso a uma tabela específica do DynamoDB</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/568d493090c7a7688119be3af2b7624d/href">https://medium.com/media/568d493090c7a7688119be3af2b7624d/href</a></iframe><p>E para exibir as credenciais do usuário da aplicação:</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/137297999190298e3e0c3d3997f3b032/href">https://medium.com/media/137297999190298e3e0c3d3997f3b032/href</a></iframe><p><strong>Configuração da aplicação</strong></p><p>Todo os SDKs da AWS utilizam algumas por padrão variáveis de ambiente específicas para sua configuração, caso elas existam, como é o caso das variáveis `AWS_SECRET_KEY`, `AWS_SECRET_ID` e `AWS_REGION`, que configuram as credenciais de acesso e a região onde os recursos utilizados se encontram. Referências para o SDK Java (os links a seguir são específicos para Java, mas pelo que pude observar parece ser um padrão para os SDKs em qualquer linguagem) estão aqui <a href="https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html">Working with AWS Credentials</a> e aqui <a href="https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/setup-credentials.html">Set up AWS Credentials and Region for Development</a> .</p><p>A aplicação em questão utiliza o Spring Data DynamoDB (referências em <a href="https://github.com/derjust/spring-data-dynamodb">derjust/spring-data-dynamodb</a> e <a href="https://www.baeldung.com/spring-data-dynamodb">DynamoDB in a Spring Boot Application Using Spring Data</a>), que não foge à regra de configuração citada anteriormente, pois foi criado por cima do SDK da AWS.</p><p>Para configurar a aplicação propriamente dita, foi necessário apenas adicionar as variáveis de ambiente no container da aplicação.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2c5fa40c6b68" width="1" height="1" alt=""><hr><p><a href="https://medium.com/bemobi-tech/como-utilizar-recursos-aws-fora-da-conta-aws-2c5fa40c6b68">Como utilizar recursos AWS fora da conta AWS</a> was originally published in <a href="https://medium.com/bemobi-tech">Bemobi</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>