<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Anand Joshi</title>
    <description>The latest articles on DEV Community by Anand Joshi (@anandxmj).</description>
    <link>https://dev.to/anandxmj</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1236190%2Fbc84bf24-e853-4f35-ad5b-120945a08335.jpg</url>
      <title>DEV Community: Anand Joshi</title>
      <link>https://dev.to/anandxmj</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/anandxmj"/>
    <language>en</language>
    <item>
      <title>AWS re:Invent 2023 - My Reflection</title>
      <dc:creator>Anand Joshi</dc:creator>
      <pubDate>Fri, 22 Dec 2023 14:40:35 +0000</pubDate>
      <link>https://dev.to/anandxmj/aws-reinvent-2023-my-reflection-28he</link>
      <guid>https://dev.to/anandxmj/aws-reinvent-2023-my-reflection-28he</guid>
      <description>&lt;h2&gt;
  
  
  What is AWS re:Invent
&lt;/h2&gt;

&lt;p&gt;AWS re:Invent is an annual conference hosted by Amazon Web Services (AWS). The event typically takes place in Las Vegas, Nevada, also been held in virtual formats&lt;/p&gt;

&lt;p&gt;Thank you &lt;a href="https://www.linkedin.com/company/raft-tech/"&gt;Raft&lt;/a&gt; for sponsoring me to attend AWS re:Invent 2023. I absolutely love to be part of Raft's Mission&lt;/p&gt;

&lt;p&gt;This years AWS re:Invent was a transformative event with a big focus on Generative AI. It featured following Keynotes&lt;/p&gt;

&lt;h2&gt;
  
  
  Keynotes
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Adam Selipsky&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--USGOu1qg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vj4hg65h6pis6j4mgdfi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--USGOu1qg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vj4hg65h6pis6j4mgdfi.png" alt="Image description" width="800" height="520"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Several new AWS services were announced, S3 Express One Zone, Graviton4, and various features and foundational model releases in Bedrock, EC2 Capacity Block for Machine Learning, Trainium 2, and other services were introduced.&lt;/li&gt;
&lt;li&gt;Generative AI Powered Assistant, enter Amazon Q !!! it Rocks !!! &lt;/li&gt;
&lt;li&gt;The AWS-Nvidia partnership was highlighted and how it facilitated the launch of EC2 Capacity Blocks for ML, leveraging the Grace Hopper Superchip Cluster. &lt;/li&gt;
&lt;li&gt;AWS Anthropic partnership was discussed. This collaboration led to the release of Claude 2.0, a foundational model within Bedrock&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Dr. Swami Sivasubramanian&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Several new announcements were covered with Bedrock overview as a guideline and the relationship between Data and GenerativeAI. New announcements were: Availability of Foundational Models - Claude 2.1 from Anthropic, Llama 2 70B, Titan Multimodal embeddings, Titan Text Lite and Express General availability , Titan Image Generator with Invisible Watermarks, SageMaker HyperPod and many SageMaker Innovations Vector Capabilities in DynamoDB, Neptune Analytics, Clean Rooms for ML.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Dr. Werner Vogels&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--nYqfWRlu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7ayce1rsihzeq3lpfujo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--nYqfWRlu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7ayce1rsihzeq3lpfujo.png" alt="Image description" width="800" height="506"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The laws of The Frugal Architect. &lt;a href="https://thefrugalarchitect.com/"&gt;https://thefrugalarchitect.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Special Shoutout to Dr. Rebecca Portnoff and Thorn team on their incredible contribution to combat child sexual abuse. &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Sessions
&lt;/h2&gt;

&lt;p&gt;In the plethora of available sessions on the catalog, trying not to get overwhelmed and stay focused I ended up attending following sessions over the course of 4 Days&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Workshop - Build a generative AI chatbot using your own data with Amazon Titan&lt;/strong&gt;&lt;br&gt;
Learnt how to build an AI chatbot using custom data with AWS’s very own foundational model - Titan. It touched upon many AWS AI services such as SageMaker, Bedrock, OpenSearch Service etc. Learnt concept of Vector Search and Vector Embeddings and the use of LangChanins to integrate LLMs into Applications&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Breakout Session - Data Mesh&lt;/strong&gt; &lt;br&gt;
OLTP/OLAP patterns and how Data Mesh can solve some of the issues with these patterns decentralizing data and building governance capabilities.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Builder Session - Building protein language models for life science generative AI&lt;/strong&gt;&lt;br&gt;
Learnt LLMs variant pLMs - Protein Language Models to classify if a given protein is attached to the membrane or an organelle inside the cell. Very cool to see the use case of LLMs&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Chalk Talk - Supercharge agent productivity with Amazon Transcribe &amp;amp; generative AI&lt;/strong&gt;&lt;br&gt;
Leant how AWS Transcribe Service and Generative AI can work together, Take for example a phone call, It can be converted to text with the help of Transcribe service, This text has loads of insights for example sentiments. It can be summarized with the help of Generative AI !&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Chalk Talk - An immersive experience with Amazon Bedrock&lt;/strong&gt; &lt;br&gt;
Focused on the basics of Bedrock and its application in various use cases, including Chat Assistants, Image Generation, and Question-Answering systems. This session featured  live coding to demonstrate the implementation process. It covered concepts such as vector embeddings, Fine Tuning and Model Parameters(Temperature, Top P, and Top K). Foundational models like the Titan family and Claude 2.0 were discussed. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Chalk talk - Drive ML strategies with data extracted from chat messages&lt;/strong&gt;&lt;br&gt;
Covered how ML strategies can be developed based on data that is extracted from chat messages. A use case of a Trading platform was discussed to run a sentiment analysis on the chat data in Trading Platform. How NLP can be used in conjunction with ML to develop end of-day-strategies for a Trading Platform.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Innovation talk - From hype to impact: Building a generative AI architecture&lt;/strong&gt;&lt;br&gt;
This talk demystified the Generative AI topic from the hype and buzz words to the real architectures. Generative AI Concepts with AWS Services and the reference architecture were discussed. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Chalk Talk Session - Train and deploy FMs on Amazon EC2 and Amazon SageMaker&lt;/strong&gt;&lt;br&gt;
A live demo of training a model using an EC2 instance and Deep Learning AMIs, building Model Artifacts and deploying it to SageMaker. It featured the implementation Stable Diffusion use case to generate new images&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Chalk talk - Code faster with Amazon CodeWhisperer&lt;/strong&gt;&lt;br&gt;
The talk features basics of Code Whisperer in IDE as well as new feature such as command line support. Code Whisperer can now be used to generate AWS CLI commands in the form of shell script. Session also covered security scanning features and support for various programming languages and IAC frameworks&lt;/p&gt;

&lt;h2&gt;
  
  
  Special highlights
&lt;/h2&gt;

&lt;p&gt;My honor to meet in person, the Leaders of cutting edge tech&lt;br&gt;
&lt;a href="https://www.linkedin.com/in/swaminathansivasubramanian/"&gt;Dr. Swami Sivasubramanian&lt;/a&gt;, &lt;a href="https://www.linkedin.com/in/jeffbarr/"&gt;Jeff Barr&lt;/a&gt;, &lt;a href="https://www.linkedin.com/in/alliekmiller/"&gt;Allie K Miller&lt;/a&gt;, &lt;a href="https://www.linkedin.com/in/semaan/"&gt;Viktoria Semaan&lt;/a&gt;, &lt;a href="https://www.linkedin.com/in/lindahaviv/"&gt;Linda Haviv&lt;/a&gt;, &lt;a href="https://www.linkedin.com/in/fayeellis/"&gt;Faye Ellis&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--oqEgCzzI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g57pbpw33kvlkl28cij3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--oqEgCzzI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g57pbpw33kvlkl28cij3.png" alt="Image description" width="641" height="441"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--EO8e3krr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v9m34uu6o2ldztxlo6su.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--EO8e3krr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v9m34uu6o2ldztxlo6su.png" alt="Image description" width="534" height="589"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iUm_GnqI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qpasf8jog0g1apwax74y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iUm_GnqI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qpasf8jog0g1apwax74y.png" alt="Image description" width="563" height="668"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2dYV2vZE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nu9soetjz4embt5g3v1r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2dYV2vZE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nu9soetjz4embt5g3v1r.png" alt="Image description" width="604" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_Mm03_ha--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qzq5bnqcuj7r7rd35egl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_Mm03_ha--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qzq5bnqcuj7r7rd35egl.png" alt="Image description" width="661" height="440"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How can one plan better
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Session Catalog is published few months before. Take some time to really plan for which sessions you plan to attend and mark them as favorites. &lt;/li&gt;
&lt;li&gt;Review the conference schedule in advance and try to cluster your sessions together at a single venue or nearby venues to minimize the need for long-distance travel between sessions.&lt;/li&gt;
&lt;li&gt;Breakout Sessions are typically recorded and you can watch them later online. So prioritize Chalk Talks, Builder Sessions, Workshops when you register for events.&lt;/li&gt;
&lt;li&gt;Have fun, take some time and explore Expo, Builders Fair and do lots of networking. &lt;/li&gt;
&lt;li&gt;Signup and attend after hours events by AWS and Partners&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>aws</category>
      <category>awsreinvent2023</category>
      <category>raft</category>
    </item>
    <item>
      <title>Demystifying AWS Identity Federation</title>
      <dc:creator>Anand Joshi</dc:creator>
      <pubDate>Mon, 18 Dec 2023 18:54:13 +0000</pubDate>
      <link>https://dev.to/anandxmj/demystifying-aws-identity-federation-4a36</link>
      <guid>https://dev.to/anandxmj/demystifying-aws-identity-federation-4a36</guid>
      <description>&lt;p&gt;Sitting in the cafe and thinking what should I read today, I just decided to contribute to the Developer community with an article that can quickly summarize what AWS Identity Federation is.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Objective:&lt;/strong&gt;&lt;br&gt;
What we will cover is how to use a Google as Identity Provider for authentication and how to use Google Identity Token to request temporary and limited-privilege credentials from AWS that can be used with AWS CLI&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How it works:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Here we decide to trust Google as our Authentication provider.User will prove its identity by successfully logging in to Google.&lt;/li&gt;
&lt;li&gt;We then capture Identity Token issued by Google to the User after User successfully logs in.&lt;/li&gt;
&lt;li&gt;Use the Identity Token issued in the Step 3 with AWS Security Token Service(STS) to obtain temporary and limited-privilege credentials&lt;/li&gt;
&lt;li&gt;Use the Credentials obtained in Step 4 with AWS Command line interface to interact with AWS Cloud Platform&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Here are the CLI Tools we need, please follow the installation instructions as per your development environment.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://cloud.google.com/sdk/gcloud"&gt;https://cloud.google.com/sdk/gcloud&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://aws.amazon.com/cli/"&gt;https://aws.amazon.com/cli/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://jqlang.github.io/jq/"&gt;https://jqlang.github.io/jq/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Let’s rollup our sleeves and follow these steps:&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;For the steps below, I suggest not to use the AWS root user but create an AWS IAM User with Administrative access and use it instead, Also please protect the root user and IAM Users with MFA enabled.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Initiate Login and Login to Google. Open Terminal and use the command below. This command will open up the browser and ask you to login to Google. If you have already logged in, it will ask to use the account to proceed. Please select the account, It will then prompt you asking permission for gcloud sdk for your Google Account. Please select “Allow”&lt;br&gt;
gcloud auth login&lt;br&gt;
Return to the terminal and it should show you the prompt like below. Verify you logged in with the gmail address of your choice.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Its time to get the Identity Token issued by Google. Use the command below on the terminal. The output of the command is the Identity Token issued by Google. Please copy it and never share this.&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;gcloud auth print-identity-token
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;3 Please use the command below to decode the Google Identity Token. From the output JSON please save the values of&lt;br&gt;
aud(&lt;a href="https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.3"&gt;https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.3&lt;/a&gt;)&lt;br&gt;
sub(&lt;a href="https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.2"&gt;https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.2&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;We will use these values to scope the AWS Role to the Google User we intent to give the AWS CLI access to.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;jq -R 'split(".") | .[1] | @base64d | fromjson' &amp;lt;&amp;lt;&amp;lt; &amp;lt;Google Identity Token&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;4 Create Role in AWS. In AWS Console Navigate to IAM -&amp;gt; Role and create a role with Trusted Entity Type of “Web Identity” and Identity Provider set to “Google”&lt;/p&gt;

&lt;p&gt;Use the Value of aud in the Audience and value of sub for value of accounts.google.com:sub&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Oa9k-_i9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xk76mv100nu5xdxbcmbz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Oa9k-_i9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xk76mv100nu5xdxbcmbz.png" alt="Image description" width="800" height="665"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This will ensure that the AWS role will only be assumed by intended Google User and no one else.&lt;/p&gt;

&lt;p&gt;Click Next&lt;/p&gt;

&lt;p&gt;Select the required permission policy. For example if you want this google user to only access(read, write) S3 select AmazonS3FullAccess&lt;/p&gt;

&lt;p&gt;Give role a name and description and create the role.&lt;/p&gt;

&lt;p&gt;Please note down the Amazon Resource Name(ARN) of the Role once its created. We will use this in the final step when we get AWS Credentials by assuming this role.&lt;/p&gt;

&lt;p&gt;5 Assume the role created in Step 4 using the Google Identity Token and obtain AWS temporary, limited-privilege credentials. Please use the command below:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;aws sts assume-role-with-web-identity \
  --role-arn arn:aws:iam::&amp;lt;Your AWS Account Number&amp;gt;:role/&amp;lt;role-name&amp;gt; \ 
  --role-session-name &amp;lt;Session Name&amp;gt; \
  --web-identity-token &amp;lt;Google Identity Token&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Temporary Credentials will be in the output JSON and will have 3 major fields: Access Key Id, Secret Access Key and Session Token. Please note the values and use it in the commands below:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;export AWS_ACCESS_KEY_ID=&amp;lt;Access Key Id&amp;gt;
export AWS_SECRET_ACCESS_KEY=&amp;lt;Secret Access Key&amp;gt;
export AWS_SESSION_TOKEN=&amp;lt;Session Token&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The returned credentials expire one hour after they are generated and can be set using — duration-seconds flag to the aws sts command&lt;/p&gt;

&lt;p&gt;6 Use the AWS Temporary Credentials. You can now use aws cli commands with the above temporary credentials set. The example above has AmazonS3FullAccess policy configured for the role. Please try creating a bucket coping objects and reading objects from the bucket with aws s3 command&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Summary:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You have created AWS Web Identity Role that has a specific permission and this role can only be assumed by a trusted Google User.&lt;/li&gt;
&lt;li&gt;We don’t create any user within AWS IAM, we rather trust an Identity Provider and establish trust relationship with the user(s) on trusted Identity Provider before hand in the form of AWS IAM Role and its trusted entities.&lt;/li&gt;
&lt;li&gt;Once User assumes this role, AWS will issue temporary privilege credentials (Access Key ID, Secret Access Key and Session Token) those can be used with AWS CLI.&lt;/li&gt;
&lt;li&gt;The privilege nature of the credentials is governed by Access Policies attached to the Role which can be changed at anytime to expand / reduce the scope of what this user can / can’t do. We can scope this down to the policy such that User has access to what is minimally need. This is called “Principal of Least Privilege”&lt;/li&gt;
&lt;li&gt;We can revoke/add the trust relationship of users anytime from the Web Identity Role&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>aws</category>
      <category>sts</category>
      <category>iam</category>
      <category>identityfederation</category>
    </item>
  </channel>
</rss>
