Connecting an account requires the Administrator role on your team. See the
IAM trust model for the security design behind this flow.
Connect
In your AWS account you create:- An OpenID Connect identity provider that trusts Nuphos.
- An IAM role whose trust policy allows your Nuphos team to assume it.
- A permissions policy on that role (start read-only).
Option A — Guided setup with the agent (recommended)
If you have the AWS CLI installed and signed in, Nuphos can do the whole thing for you. In Connectors → Connect → AWS, choose the guided path. Nuphos opens an agent session that runs theaws CLI on your machine and walks through
creating the OIDC provider, the role, and its policies — pausing for you to
approve every IAM change. When it’s done, it binds the role automatically.
The agent uses your local AWS CLI credentials; it never receives your keys. You
approve each mutation before it runs.
Option B — Manual setup in the AWS console
Prefer to click through it yourself? Create everything in the IAM console, then paste the role ARN back into Nuphos.1
Create the OIDC identity provider
In the IAM console go to Identity providers → Add provider and choose
OpenID Connect:
- Provider URL:
https://nuphos.ai - Audience:
sts.amazonaws.com
2
Create the IAM role with a web-identity trust policy
Create a role and set its trust policy to the following. Replace
<your-account-id> with your 12-digit AWS account ID and <your-team-id>
with your Nuphos team ID (copy it from Settings → Workspace → General):3
Attach a permissions policy
Start least-privilege and widen only as needed. A read-only baseline:
AmazonEC2ReadOnlyAccessAmazonS3ReadOnlyAccess- (other service-specific
…ReadOnlyAccesspolicies you need)
AdministratorAccess
for convenience. To let an administrator widen this role’s permissions later
from inside Nuphos, don’t give the role IAM-editing power itself — bind a
separate permission-admin role for that.4
Paste the role ARN into Nuphos
Copy the role ARN — it looks like
arn:aws:iam::123456789012:role/NuphosRole — and paste it into the AWS
binding dialog in Nuphos. Nuphos parses your account ID from the ARN.Verification
When you submit the role ARN, Nuphos immediately tries to assume the role before saving the connection. If your trust policy is wrong, you’ll get arole_not_assumable error right away rather than a surprise later. IAM changes
can take a few seconds to propagate, so Nuphos retries briefly.
In the Nuphos app
Once the account is connected, Nuphos discovers what’s in it and turns it into browsable surfaces:- Kubernetes clusters — your EKS clusters appear
with workloads, networking, config, storage, and RBAC. Open a pod terminal,
stream logs, and act on resources in bulk — no
kubeconfigwrangling. - Compute & access — EC2 and Lightsail instances with status and metrics, Lambda functions you can inspect and invoke, an SSH terminal to any VM, and port forwarding into private networks.
- Cloud resources — S3 buckets and objects, VPCs, firewall rules and network ACLs, and CloudFormation stacks.
What the agent can do for you
The agent uses the same access to investigate and operate on your behalf. Ask it things like:- “Why is the
checkoutdeployment crash-looping?” — it reads events, logs, and config across the EKS cluster and walks you to the cause. - “What’s exposing
api-prodto the internet?” — it traces ingress, services, security groups, and DNS together. - “Roll the staging ASG to the new AMI” — it proposes a plan with steps, risk, and cost for you to approve, then executes it.
AccessDenied wall, the agent can propose a
narrow permission grant for an Administrator to
approve instead of just stopping.
Permissions & authorization
Two boundaries govern what happens through this connector:- Hard boundary — who can use it. Only team Administrators can bind or remove the account, and they can restrict it to specific members with a member allow-list. Within a session the agent only holds credentials for accounts you explicitly selected, and the allow-list is re-checked on every credential request.
- Soft boundary — what the agent may do with it. Reads run freely, but
changes go through plan approvals, and at the command
level Auto-authorization decides which
aws/kubectlcommands run unattended: read-only ones auto-run, irreversible ones always pause for a human, and your standing rules cover the middle.
How credentials work
Good to know
Older connections may use a legacy static-connector trust instead of OIDC.
OIDC web-identity federation is the recommended, per-team-isolated method and
what new connections use.