Connecting an account requires the Administrator role on your team. See the
IAM trust model for the security design behind this flow.
What you’ll set up
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 Integrations → 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.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
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):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. Optionally attach IAMFullAccess if you want to let Nuphos
adjust the role’s own policies later from the app.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.
How credentials work
| Value | |
|---|---|
| Trust mechanism | IAM role assumed via sts:AssumeRoleWithWebIdentity (OIDC) |
| Per-team isolation | Enforced by the sub claim nuphos:team:<team-id> |
| Credential lifetime | ~1 hour per session, minted on demand |
| What’s stored | Only the role ARN — never your AWS keys |
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.