canonical: https://jentic.com/apis/amazonaws.com/aws-sso-admin

# AWS Single Sign-On Admin

Jentic publishes the only available OpenAPI specification for AWS Single Sign-On Admin, keeping it validated and agent-ready. The IAM Identity Center admin API configures who can access which AWS accounts with which roles. Agents can create and manage permission sets, attach AWS-managed and customer-managed IAM policies, define inline policies and permissions boundaries, assign permission sets to principals (users or groups) for specific AWS accounts, and provision those assignments across the organisation. The 37 operations cover permission sets, account assignments, instance access control attributes, inline policies, and managed policy attachments.

## For AI agents

Configure IAM Identity Center permission sets, account assignments, and policy attachments. Agents can create permission sets, assign access, and attach managed or inline policies.

## Scope

Does not authenticate end users, manage user directories, or issue session credentials - use only for configuring IAM Identity Center permission sets and account assignments.

## Capabilities

- Create and manage permission sets with CreatePermissionSet, UpdatePermissionSet, DeletePermissionSet
- Assign a permission set to a principal in an AWS account using CreateAccountAssignment
- Attach AWS-managed or customer-managed IAM policies to a permission set
- Define inline policies and permissions boundaries on a permission set
- Provision permission set changes to target accounts via ProvisionPermissionSet
- Manage attribute-based access control with the InstanceAccessControlAttributeConfiguration operations
- Track async assignment work with DescribeAccountAssignmentCreationStatus and ...DeletionStatus

## Use cases

### Standardised Workforce Access Across AWS Accounts

Identity teams define permission sets such as 'ReadOnly', 'BillingAdmin', and 'DeveloperPowerUser' once, then assign them to groups in the directory for each target account. CreateAccountAssignment binds (principalId, principalType=GROUP, accountId, permissionSetArn), and ProvisionPermissionSet pushes the resulting role into the target account.

Example prompt: CreatePermissionSet 'ReadOnly', AttachManagedPolicyToPermissionSet with arn:aws:iam::aws:policy/ReadOnlyAccess, then CreateAccountAssignment for principalType=GROUP, principalId=<group-id>, accountId=<acct>, and ProvisionPermissionSet to roll it out.

### Customer-Managed Policy Attachment for Tightly Scoped Access

When AWS-managed policies are too broad, teams reference customer-managed policies stored in the target accounts via AttachCustomerManagedPolicyReferenceToPermissionSet. This keeps policy authoring local to the account while letting a central permission set bind it to many principals.

Example prompt: AttachCustomerManagedPolicyReferenceToPermissionSet with the policy name and path 'finance-readonly'/'/' on the existing 'FinanceReadOnly' permission set, then ProvisionPermissionSet.

### Attribute-Based Access Control

ABAC enabled on the IAM Identity Center instance lets the same permission set evaluate differently per user attribute (such as cost centre or team). CreateInstanceAccessControlAttributeConfiguration registers the attribute mapping; permission sets then reference those attributes in policy conditions.

Example prompt: CreateInstanceAccessControlAttributeConfiguration with AccessControlAttributes mapping 'CostCenter' to the user attribute path '${path:enterprise.costCenter}', then DescribeInstanceAccessControlAttributeConfiguration to verify the mapping.

### AI Agent Access Provisioning via Jentic

AI agents using Jentic can answer 'who has access to account X?' or 'grant Sarah read-only access to the billing account' by calling sso-admin through Jentic. The agent searches by intent, loads the operation schema, and executes with vault-stored credentials.

Example prompt: Search Jentic for 'create account assignment iam identity center', execute CreateAccountAssignment for the target permission set ARN, then poll DescribeAccountAssignmentCreationStatus until Status=SUCCEEDED.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /#X-Amz-Target=SWBExternalService.CreatePermissionSet | Create a new permission set |
| POST | /#X-Amz-Target=SWBExternalService.CreateAccountAssignment | Assign a permission set to a principal in an account |
| POST | /#X-Amz-Target=SWBExternalService.AttachManagedPolicyToPermissionSet | Attach an AWS-managed policy to a permission set |
| POST | /#X-Amz-Target=SWBExternalService.AttachCustomerManagedPolicyReferenceToPermissionSet | Attach a customer-managed policy reference |
| POST | /#X-Amz-Target=SWBExternalService.DescribePermissionSet | Fetch a permission set by ARN |
| POST | /#X-Amz-Target=SWBExternalService.DescribeAccountAssignmentCreationStatus | Track async assignment creation |
| POST | /#X-Amz-Target=SWBExternalService.DeleteAccountAssignment | Remove a permission-set assignment |

## Key resources

- **Permission Sets** — Reusable role definitions; CreatePermissionSet, DescribePermissionSet, UpdatePermissionSet, DeletePermissionSet, ListPermissionSets, ProvisionPermissionSet
- **Account Assignments** — Bindings between principals and accounts; CreateAccountAssignment, DeleteAccountAssignment, ListAccountAssignments
- **Managed Policies** — AWS-managed and customer-managed policy attachments to permission sets
- **Inline Policies** — Per-permission-set inline policy and permissions boundary management
- **Instance Access Control Attributes** — Attribute-based access control configuration on the IAM Identity Center instance

## Why Jentic

- **Setup:** Wiring AWS Single Sign-On Admin by hand means computing SigV4 signatures, picking the right regional sso host, and routing calls through the X-Amz-Target action header yourself. Through Jentic you install once, import SSO Admin from the API Directory, store the access keys once, and your agent calls it.
- **Permission scoping:** SSO Admin routes its actions through one endpoint by X-Amz-Target rather than resource ids in the path, so scope the agent to the operations it needs, such as DescribePermissionSet and CreateAccountAssignment. You choose the operations it may call, so destructive ones like DeleteAccountAssignment are not included unless you add them.
- **Credential handling:** Your AWS access keys are stored once, encrypted, by your own Jentic One instance and used to sign each SSO Admin request with SigV4 at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a permission set' or 'assign access to an AWS account', and Jentic returns the matching SSO Admin operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **AWS Single Sign-On** — Runtime portal that consumes the assignments configured through sso-admin
- **AWS SSO OIDC** — OIDC device flow that issues bearer tokens for the SSO Portal
- **AWS Security Token Service** — AssumeRole-based federation for IAM principals when IAM Identity Center is not in scope

## FAQ

### Why is there no official OpenAPI spec for AWS Single Sign-On Admin?

AWS does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call AWS Single Sign-On Admin via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the AWS Single Sign-On Admin use?

sso-admin uses AWS Signature Version 4 with IAM credentials and permissions on the sso:* and identitystore:* actions. Through Jentic, the AWS access key and secret are stored encrypted in the vault - Jentic signs each call before forwarding it to the regional sso-admin endpoint.

### Can I create a permission set with both managed and inline policies?

Yes. CreatePermissionSet creates the empty set, then AttachManagedPolicyToPermissionSet attaches one or more AWS-managed policies and PutInlinePolicyToPermissionSet adds a custom inline policy. Customer-managed policies are referenced through AttachCustomerManagedPolicyReferenceToPermissionSet.

### What are the rate limits for the AWS Single Sign-On Admin?

sso-admin applies standard AWS API throttling - most operations are limited to a few requests per second per account per region with brief burst capacity, and account-assignment operations are async. Throttled calls return ThrottlingException; retry with exponential backoff.

### How do I assign a permission set to a group through Jentic?

Through Jentic, search for 'create account assignment iam identity center', load the CreateAccountAssignment schema, and execute with InstanceArn, TargetId (account id), TargetType=AWS_ACCOUNT, PermissionSetArn, PrincipalType=GROUP, and PrincipalId. Then poll DescribeAccountAssignmentCreationStatus with the returned RequestId until Status=SUCCEEDED.

### Is AWS Single Sign-On Admin free?

IAM Identity Center is offered at no additional charge - you pay only for the underlying AWS resources that the assigned roles access. SSO connections to external SaaS applications are also included.

### Can I limit what my agent is allowed to do with the AWS SSO Admin API?

Yes. Because you run Jentic One yourself, your own rules decide which SSO Admin operations the agent may call, even though every action routes through one endpoint keyed by X-Amz-Target rather than by resource ids in the path. You can grant read-only work such as DescribePermissionSet and ListAccountAssignments while withholding CreateAccountAssignment, or allow assignment creation without exposing destructive operations like DeleteAccountAssignment or DeletePermissionSet. The agent can only invoke the operations you have added, and the AWS keys used to sign each request stay with your instance rather than the agent.
