<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>‘Credentials’ on WTFender</title>
        <link>https://blog.wtfender.com/tags/credentials/</link>
        <description>Recent content in ‘Credentials’ on WTFender</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <copyright>WTFender</copyright>
        <lastBuildDate>Sun, 03 Nov 2019 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.wtfender.com/tags/credentials/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>AWS Temporary Access Tokens</title>
        <link>https://blog.wtfender.com/posts/aws-temp-tokens/</link>
        <pubDate>Sun, 03 Nov 2019 00:00:00 +0000</pubDate>
        
        <guid>https://blog.wtfender.com/posts/aws-temp-tokens/</guid>
        <description>&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;Note&lt;/strong&gt;: This project is a reference implementation from 2019. &lt;a class=&#34;link&#34; href=&#34;https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;AWS SSO now provides native CLI support&lt;/a&gt; with temporary credential provisioning built-in. For new projects, AWS’s native solution is recommended.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;quick-access&#34;&gt;Quick Access
&lt;/h2&gt;&lt;p&gt;🚀 &lt;a class=&#34;link&#34; href=&#34;https://chrome.google.com/webstore/detail/aws-saml-keys/gpnbopdmcfpijadjcnfblkpigjngobgl?hl=en&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Install Chrome Extension&lt;/a&gt;&lt;br&gt;
💻 &lt;a class=&#34;link&#34; href=&#34;https://github.com/WTFender/aws-saml-keys&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;View on GitHub&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;AWS SAML Keys&lt;/strong&gt; is a Chrome extension and host application that generate temporary AWS access keys directly from your SAML authentication to the AWS console, eliminating the need to manage static credentials.&lt;/p&gt;
&lt;h2 id=&#34;the-problem-with-static-aws-credentials&#34;&gt;The Problem with Static AWS Credentials
&lt;/h2&gt;&lt;p&gt;Key management has become increasingly complex. Organizations moved from storing AWS keys scattered across machines to centralizing them in vaults and password managers. But this doesn’t address the fundamental security issues:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Permanent Keys&lt;/strong&gt; — Long-lived credentials with no automatic expiration&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Privilege Escalation&lt;/strong&gt; — Keys often carry escalated privileges for convenience&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Compromise Risk&lt;/strong&gt; — Static credentials stored on user machines are vulnerable if the machine is compromised&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rotation Burden&lt;/strong&gt; — Regular key rotation requires manual processes and coordination&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Audit Trail&lt;/strong&gt; — Hard to track when credentials were last used or accessed&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Even with bastion hosts or centralized vaults, the root problem remains: the private key still ends up on a user’s local machine at some point.&lt;/p&gt;
&lt;h2 id=&#34;the-solution-temporary-access-tokens&#34;&gt;The Solution: Temporary Access Tokens
&lt;/h2&gt;&lt;p&gt;Temporary AWS credentials solve these problems:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Auto-Expiring&lt;/strong&gt; — Tokens automatically expire (typically within hours)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Single-Use Risk&lt;/strong&gt; — If compromised, the window of exposure is minimal&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No Rotation&lt;/strong&gt; — New credentials are generated on each login&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Audit-Friendly&lt;/strong&gt; — Clear record of who accessed what and when&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Standardized&lt;/strong&gt; — Uses AWS STS (Security Token Service) under the hood&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;how-aws-saml-keys-works&#34;&gt;How AWS SAML Keys Works
&lt;/h2&gt;&lt;p&gt;The extension bridges the gap between your SAML-based SSO authentication and the AWS CLI:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Intercepts SSO Login&lt;/strong&gt; — Chrome extension monitors your SAML login to the AWS console&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Captures SAML Assertion&lt;/strong&gt; — Extracts the SAML assertion from your authenticated session&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Exchanges for Credentials&lt;/strong&gt; — Uses AWS STS &lt;code&gt;AssumeRoleWithSAML&lt;/code&gt; to convert the SAML assertion into temporary AWS credentials&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Delivers to CLI&lt;/strong&gt; — Native host application stores credentials in standard AWS CLI config (&lt;code&gt;~/.aws/credentials&lt;/code&gt;)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The credentials automatically appear in your AWS CLI configuration without any manual steps.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.wtfender.com/img/aws-tokens/aws-sts-saml.png&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;AWS STS SAML Flow&#34;
	
	
&gt;&lt;/p&gt;
&lt;h2 id=&#34;setup&#34;&gt;Setup
&lt;/h2&gt;&lt;p&gt;The extension requires two components:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Chrome Extension&lt;/strong&gt; — Install from the &lt;a class=&#34;link&#34; href=&#34;https://chrome.google.com/webstore/detail/aws-saml-keys/gpnbopdmcfpijadjcnfblkpigjngobgl?hl=en&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Chrome Web Store&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Host Application&lt;/strong&gt; — Install the native messaging host from &lt;a class=&#34;link&#34; href=&#34;https://github.com/WTFender/aws-saml-keys/releases&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub releases&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The host application enables the extension to write credentials to your local AWS configuration.&lt;/p&gt;
&lt;h2 id=&#34;technical-details&#34;&gt;Technical Details
&lt;/h2&gt;&lt;p&gt;The extension uses native messaging to communicate between the Chrome extension and a local host application:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Extension (Chrome)&lt;/strong&gt; — Captures SAML assertion after login, sends to host app&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Host App&lt;/strong&gt; — Receives SAML assertion, calls AWS STS, writes credentials to disk&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AWS CLI&lt;/strong&gt; — Automatically picks up credentials from standard config location&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This two-part architecture avoids storing sensitive credentials in the browser while integrating seamlessly with the AWS CLI.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Originally posted on &lt;a class=&#34;link&#34; href=&#34;https://medium.com/@WTFender/aws-temporary-access-tokens-951b3f67e958&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Medium.com&lt;/a&gt;.&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
