<?xml version="1.0" encoding="UTF-8" ?> <?xml-stylesheet type="text/xsl" href="rss.xsl"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel> <title>Aidan Steele&#39;s blog (usually about AWS)</title><description>Here&#39;s my seventh or eighth attempt at a blog. It&#39;s mostly going to be my experimentation with using AWS (Amazon Web Services, not Aidan William Steele).</description><link>https://awsteele.com/</link><atom:link href="https://awsteele.com/feed.xml" rel="self" type="application/rss+xml" /> <managingEditor>Aidan W. Steele</managingEditor><language>en</language> <pubDate>Sun, 19 Apr 2026 00:57:53 -0000</pubDate> <lastBuildDate>Sun, 19 Apr 2026 00:57:53 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.19.0</generator> <image> <url>None</url> <title>Aidan Steele's blog (usually about AWS)</title> <link>https://awsteele.com/</link> </image> <item> <title>Step Function execution name format</title> <category>AWS</category> <description>&lt;p&gt;I was looking at the execution history for a Step Functions state machine that is triggered daily by an EventBridge Scheduler schedule. The execution names caught my eye — they &lt;em&gt;look&lt;/em&gt; like UUIDs, they&#39;re not UUIDv7, but there&#39;s clearly a pattern. It got me excited in the same way that noticing [AWS access key IDs were similarly-formatted][access-key-format] back in 2020. So of course I had to dig in.&lt;/p&gt;</description> <link>https://awsteele.com/blog/2026/04/01/step-function-execution-name-format.html</link> <pubDate>Wed, 01 Apr 2026 09:00:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2026/04/01/step-function-execution-name-format.html</guid> </item> <item> <title>Locking down AWS principal tags with RCPs and SCPs</title> <category>AWS</category> <description>&lt;p&gt;AWS principal tags are useful for fine-grained access control. As an organisation administrator, you can craft service control policies (SCPs) that only allow tagged roles to call sensitive APIs. The problem then becomes: how do you guarantee that the tags are legitimate? This is where resource control policies (RCPs) come in handy - I provide a demonstration of them in this blog post, and an example of what you can achieve with the trustworthy tags in place.&lt;/p&gt;</description> <link>https://awsteele.com/blog/2026/02/21/locking-down-aws-principal-tags-with-rcps-and-scps.html</link> <pubDate>Sat, 21 Feb 2026 03:08:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2026/02/21/locking-down-aws-principal-tags-with-rcps-and-scps.html</guid> </item> <item> <title>Querying Terraform state with AWS Athena</title> <category>AWS</category> <description>&lt;p&gt;Athena is one of my favourite AWS services. Though it&#39;s marketed as a big data service, it is useful in many other scenarios. Sometimes I use it as a &#34;grep through unstructured logs in S3&#34; and other times I use it to query CloudTrail logs - but this latter use case is likely better served by CloudTrail Lake nowadays. Today, I&#39;ll show how it can be used for querying Terraform state stored in S3.&lt;/p&gt;</description> <link>https://awsteele.com/blog/2025/10/26/querying-terraform-state-with-aws-athena.html</link> <pubDate>Sun, 26 Oct 2025 17:06:52 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2025/10/26/querying-terraform-state-with-aws-athena.html</guid> </item> <item> <title>Federating into Azure, GCP and AWS with OIDC</title> <category>AWS</category> <category>Azure</category> <category>GCP</category> <category>OIDC</category> <description>&lt;p&gt;Lately, I&#39;ve been interested in how third party vendors can best authenticate into their customers&#39; cloud accounts. The status quo in AWS is usually role assumption from the vendor&#39;s account to the customers&#39;, but what about GCP and Azure? Can OIDC be used to authenticate into all three clouds in approximately the same way? I think the answer is yes, and this blog post aims to show how to do so.&lt;/p&gt;</description> <link>https://awsteele.com/blog/2025/07/27/federating-into-azure-gcp-and-aws-with-oidc.html</link> <pubDate>Sun, 27 Jul 2025 06:34:52 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2025/07/27/federating-into-azure-gcp-and-aws-with-oidc.html</guid> </item> <item> <title>CloudTrail wish: almost granted</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2025/05/07/cloudtrail-wish-almost-granted.html</link> <pubDate>Wed, 07 May 2025 00:50:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2025/05/07/cloudtrail-wish-almost-granted.html</guid> </item> <item> <title>CloudFront-triggered S3 data event formats</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2025/02/10/cloudfront-triggered-s3-data-event-formats.html</link> <pubDate>Mon, 10 Feb 2025 05:32:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2025/02/10/cloudfront-triggered-s3-data-event-formats.html</guid> </item> <item> <title>CloudTrail wishlist: filtering by principal ARN</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2024/11/09/cloudtrail-wishlist.html</link> <pubDate>Sat, 09 Nov 2024 03:57:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2024/11/09/cloudtrail-wishlist.html</guid> </item> <item> <title>Surprising behaviour in AWS web console session duration</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2024/08/05/surprising-behaviour-in-aws-web-console-session-duration.html</link> <pubDate>Mon, 05 Aug 2024 05:26:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2024/08/05/surprising-behaviour-in-aws-web-console-session-duration.html</guid> </item> <item> <title>Gotcha: always use ARNs for S3 SSE-KMS</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2024/06/05/gotcha-alway-use-arns-for-s3-sse-kms.html</link> <pubDate>Wed, 05 Jun 2024 01:36:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2024/06/05/gotcha-alway-use-arns-for-s3-sse-kms.html</guid> </item> <item> <title>When AWS invariants aren&#39;t [invariant]</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2024/02/20/when-aws-invariants-are-not.html</link> <pubDate>Tue, 20 Feb 2024 00:21:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2024/02/20/when-aws-invariants-are-not.html</guid> </item> <item> <title>Deep dive into AWS CloudShell</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2024/01/11/deep-dive-into-aws-cloudshell.html</link> <pubDate>Thu, 11 Jan 2024 21:07:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2024/01/11/deep-dive-into-aws-cloudshell.html</guid> </item> <item> <title>How ima.ge.cx works</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2023/12/29/how-ima-ge-cx-works.html</link> <pubDate>Fri, 29 Dec 2023 04:11:52 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2023/12/29/how-ima-ge-cx-works.html</guid> </item> <item> <title>An AWS IAM Identity Center vulnerability</title> <category>AWS</category> <category>OIDC</category> <description></description> <link>https://awsteele.com/blog/2023/12/19/an-aws-iam-identity-center-vulnerability.html</link> <pubDate>Tue, 19 Dec 2023 20:40:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2023/12/19/an-aws-iam-identity-center-vulnerability.html</guid> </item> <item> <title>Reversing AWS IAM unique IDs</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2023/11/19/reversing-aws-iam-unique-ids.html</link> <pubDate>Sun, 19 Nov 2023 21:51:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2023/11/19/reversing-aws-iam-unique-ids.html</guid> </item> <item> <title>AWS role session tags for GitHub Actions</title> <category>AWS</category> <category>GitHub</category> <category>OIDC</category> <description></description> <link>https://awsteele.com/blog/2023/10/25/aws-role-session-tags-for-github-actions.html</link> <pubDate>Wed, 25 Oct 2023 01:24:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2023/10/25/aws-role-session-tags-for-github-actions.html</guid> </item> <item> <title>Useful flags for Go Lambda functions</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2023/08/02/useful-flags-for-go-lambda-functions.html</link> <pubDate>Wed, 02 Aug 2023 04:04:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2023/08/02/useful-flags-for-go-lambda-functions.html</guid> </item> <item> <title>Lambda CloudTrail data events</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2023/03/21/lambda-cloudtrail-data-events.html</link> <pubDate>Tue, 21 Mar 2023 06:03:00 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2023/03/21/lambda-cloudtrail-data-events.html</guid> </item> <item> <title>A role for all your EC2 instances</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2023/02/20/a-role-for-all-your-ec2-instances.html</link> <pubDate>Mon, 20 Feb 2023 22:12:52 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2023/02/20/a-role-for-all-your-ec2-instances.html</guid> </item> <item> <title>Improve GitHub Actions OIDC security posture with custom issuer</title> <category>AWS</category> <category>GitHub</category> <category>OIDC</category> <description></description> <link>https://awsteele.com/blog/2023/01/11/improve-github-actions-oidc-security-posture-with-custom-issuer.html</link> <pubDate>Wed, 11 Jan 2023 03:30:52 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2023/01/11/improve-github-actions-oidc-security-posture-with-custom-issuer.html</guid> </item> <item> <title>Centralised logging: from CloudWatch to Kinesis Firehose</title> <category>AWS</category> <description></description> <link>https://awsteele.com/blog/2022/12/16/centralised-logging-from-cloudwatch-to-kinesis-firehose.html</link> <pubDate>Fri, 16 Dec 2022 22:56:52 +0000</pubDate> <source url="https://awsteele.com/feed.xml">Aidan Steele's blog (usually about AWS)</source><guid isPermaLink="true">https://awsteele.com/blog/2022/12/16/centralised-logging-from-cloudwatch-to-kinesis-firehose.html</guid> </item> </channel> </rss>