Diagram with a central green circle featuring a gear and lock icon, connected by arrows to eight orange circles with lambda and chain link icons. The heading reads Upwind.

Ensure Security for AWS EC2 Instances & Lambda Functions with Upwind’s Non-Human Identity Security 

Joshua Burgin July 09, 2024

Ensure Security for AWS EC2 Instances & Lambda Functions with Upwind’s Non-Human Identity Security 

Using Upwind’s Non-Human Identity Security, you can easily monitor and secure AWS execution roles and ensure best practices for non-human identities (NHIs).

Execution roles are important for granting permissions to AWS EC2 instances and AWS Lambda functions. However, it can be difficult to enforce best practices that allow only known resources to assume and use permissions within the role. Upwind’s Identity Security simplifies this process, providing full visibility and monitoring for all the execution roles in your AWS environment.

Screenshot-2024-07-02-at-12.35.50%E2%80%AFPM-1024x799

What is an Execution Role?

In an AWS cloud environment, an execution role grants permissions to AWS EC2 instances and AWS Lambda functions, to perform actions on behalf of a user or another service. Execution role permissions are IAM permissions that allow EC2 instance or Lambda function permissions to access specific services and resources, and they cannot access any services or resources that are not specified in the permissions. An execution role consists of permissions defined by IAM policies and a trust policy specifying which entity is allowed to assume the role, allowing services to securely access resources without needing permanent credentials.

Screenshot-2024-07-03-at-5.26.29%E2%80%AFAM-1024x661

It’s important to note that Lambda functions and EC2 instances do not have permissions by default, and they rely entirely on the permissions that are granted to them by the execution role. This is designed to follow the Principle of Least Privilege, which grants only the necessary permissions required for a function to perform needed tasks.

Screenshot-2024-07-03-at-5.25.45%E2%80%AFAM-1024x471

How do you secure Execution Roles?

In order to ensure security for your Lambda functions and EC2 instances, you must carefully monitor execution roles and their associated permissions. By controlling the execution role’s permissions and ensuring that it adheres to best practices, you can also ensure your non-human identity security.

Upwind empowers you to do this by providing you with:

  • Execution Role Details: Discover the name of the role, the associated account, and when it was created.
  • An Authorization Graph: Visually understand who can assume a role and what permissions they have on which resources.
  • A list of Trusted Entities: Including the entities that are allowed to assume a particular IAM role
  • A Resources overview: View all resources currently assuming a given role 
  • Highly Privileged Permissions: Automatic identification if a cross-account role’s permissions include highly privileged permissions.

Use Upwind’s Non-Human Identity Security to monitor, track and manage your execution roles and easily understand which resources are currently assuming the role, who can assume a role, and what role permissions they have on EC2 instances and Lambda functions.
To learn more about Upwind’s Non-Human Identity Security, visit the Upwind Documentation Center (login required) or schedule a demo.

Contents

Further Reading

behind-the-curtain-part-03

What’s Behind the Curtain? AWS Bedrock AgentCore Runtime Tear Down – Part III

Recap In Part I and Part II, we: Networking and VPC Mode Network Isolation Testing The microVM is assigned an IPv6 address matching the value in the JWT. Across multiple runs, all addresses shared the same 2600:1f18::/32 prefix, but cross-microVM communication always failed. We attempted to reach the host EC2 IMDS by manipulating the route…
behind-the-curtain-part-02

What’s Behind the Curtain? AWS Bedrock AgentCore Runtime Tear Down – Part II

Recap In Part I, we explored the AgentCore Runtime microVM from the inside and discovered we weren't alone - four platform binaries were running alongside our code, and one of them was quietly shipping logs to an AWS-internal S3 bucket. We left off with a question: what can we learn from these internal components, and…
behind-the-curtain-part-01

What’s Behind the Curtain? AWS Bedrock AgentCore Runtime Tear Down – Part I

Introduction When you deploy an AI agent to AWS Bedrock AgentCore Runtime, your code runs inside a Firecracker microVM - but it doesn't run alone. In this three-part series, we tear down the platform internals, document what we found, and assess how well the isolation holds up. Setting the Stage AWS Bedrock AgentCore Runtime is…
Add the Upwind RSS Feed to Slack
Connect the Upwind RSS Feed to your Slack.
Follow the how-to here.
Threat RSS
Add the Upwind RSS Feed to Slack
Connect the Upwind RSS Feed to your Slack.
Follow the how-to here.
Main RSS