IAM
Protocol: Query (XML) —POST http://localhost:4566/ with Action= parameter
IAM supports 65+ operations covering users, roles, groups, policies, instance profiles, access keys, and login profiles.
IAM operations (65+)
IAM operations (65+)
Users
CreateUser · GetUser · DeleteUser · ListUsers · UpdateUser · TagUser · UntagUser · ListUserTagsGroupsCreateGroup · GetGroup · DeleteGroup · ListGroups · AddUserToGroup · RemoveUserFromGroup · ListGroupsForUserRolesCreateRole · GetRole · DeleteRole · ListRoles · UpdateRole · UpdateAssumeRolePolicy · TagRole · UntagRole · ListRoleTagsPoliciesCreatePolicy · GetPolicy · DeletePolicy · ListPolicies · CreatePolicyVersion · GetPolicyVersion · DeletePolicyVersion · ListPolicyVersions · SetDefaultPolicyVersion · TagPolicy · UntagPolicy · ListPolicyTagsPolicy AttachmentsAttachUserPolicy · DetachUserPolicy · ListAttachedUserPoliciesAttachGroupPolicy · DetachGroupPolicy · ListAttachedGroupPoliciesAttachRolePolicy · DetachRolePolicy · ListAttachedRolePoliciesInline PoliciesPutUserPolicy · GetUserPolicy · DeleteUserPolicy · ListUserPoliciesPutGroupPolicy · GetGroupPolicy · DeleteGroupPolicy · ListGroupPoliciesPutRolePolicy · GetRolePolicy · DeleteRolePolicy · ListRolePoliciesInstance ProfilesCreateInstanceProfile · GetInstanceProfile · DeleteInstanceProfile · ListInstanceProfiles · AddRoleToInstanceProfile · RemoveRoleFromInstanceProfile · ListInstanceProfilesForRoleAccess KeysCreateAccessKey · GetAccessKeyLastUsed · ListAccessKeys · UpdateAccessKey · DeleteAccessKeyLogin ProfilesCreateLoginProfile · DeleteLoginProfile · UpdateLoginProfileExamples
STS
Protocol: Query (XML) —POST http://localhost:4566/ with Action= parameter
STS supports all 7 operations including role assumption, web identity federation, SAML, and session tokens. GetCallerIdentity is commonly used as a connectivity smoke test.
STS operations (7)
STS operations (7)
| Action | Description |
|---|---|
GetCallerIdentity | Returns the account ID, user ID, and ARN |
AssumeRole | Assume an IAM role, returns temporary credentials |
AssumeRoleWithWebIdentity | Assume a role using a web identity token (OIDC) |
AssumeRoleWithSAML | Assume a role using a SAML assertion |
GetSessionToken | Get temporary credentials for an IAM user |
GetFederationToken | Get temporary credentials for a federated user |
DecodeAuthorizationMessage | Decode an encoded authorization failure message |
Examples
Cognito
Protocol: JSON 1.1 (X-Amz-Target: AWSCognitoIdentityProviderService.*)Endpoint:
POST http://localhost:4566/
Floci serves pool-specific discovery and JWKS endpoints, plus a relaxed OAuth token endpoint, so local clients can mint and validate Cognito-like access tokens against RS256 signing keys.
JWT signature validation uses
http://localhost:4566/{userPoolId} as the issuer. Tokens include the cognito:groups claim when the authenticated user belongs to groups. Floci’s validate-signatures setting defaults to false (SigV4 request signing is not enforced by default); configure your JWT validator to point at the Floci JWKS endpoint to validate token signatures.Cognito operations (24+)
Cognito operations (24+)
| Category | Actions |
|---|---|
| User Pools | CreateUserPool, DescribeUserPool, ListUserPools, DeleteUserPool |
| User Pool Clients | CreateUserPoolClient, DescribeUserPoolClient, ListUserPoolClients, DeleteUserPoolClient |
| Resource Servers | CreateResourceServer, DescribeResourceServer, ListResourceServers, DeleteResourceServer |
| Admin User Management | AdminCreateUser, AdminGetUser, AdminDeleteUser, AdminSetUserPassword, AdminUpdateUserAttributes |
| User Operations | SignUp, ConfirmSignUp, GetUser, UpdateUserAttributes, ChangePassword, ForgotPassword, ConfirmForgotPassword |
| Authentication | InitiateAuth, AdminInitiateAuth, RespondToAuthChallenge |
| User Listing | ListUsers |
| Groups | CreateGroup, GetGroup, ListGroups, DeleteGroup, AdminAddUserToGroup, AdminRemoveUserFromGroup, AdminListGroupsForUser |
Well-Known and OAuth Endpoints
| Endpoint | Description |
|---|---|
GET /{userPoolId}/.well-known/openid-configuration | OpenID discovery document |
GET /{userPoolId}/.well-known/jwks.json | JSON Web Key Set for JWT validation |
POST /cognito-idp/oauth2/token | OAuth token endpoint for grant_type=client_credentials |
GenerateSecret=true, AllowedOAuthFlowsUserPoolClient=true, and AllowedOAuthFlows=["client_credentials"]. It returns access_token, token_type, and expires_in.
Examples
KMS
Protocol: JSON 1.1 (X-Amz-Target: TrentService.*)Endpoint:
POST http://localhost:4566/
KMS supports symmetric and asymmetric keys, encrypt/decrypt, sign/verify, data key generation, envelope encryption, and aliases.
KMS operations (18)
KMS operations (18)
| Action | Description |
|---|---|
CreateKey | Create a new KMS key |
DescribeKey | Get key metadata |
ListKeys | List all keys |
Encrypt | Encrypt plaintext with a key |
Decrypt | Decrypt ciphertext |
ReEncrypt | Re-encrypt under a different key |
GenerateDataKey | Generate a data key (plaintext + encrypted) |
GenerateDataKeyWithoutPlaintext | Generate only the encrypted data key |
Sign | Sign a message with an asymmetric key |
Verify | Verify a signature |
CreateAlias | Create a friendly name for a key |
DeleteAlias | Remove an alias |
ListAliases | List all aliases |
ScheduleKeyDeletion | Mark a key for deletion |
CancelKeyDeletion | Cancel pending deletion |
TagResource | Tag a key |
UntagResource | Remove tags |
ListResourceTags | List tags |
Examples
ACM
Protocol: JSON 1.1 (X-Amz-Target: CertificateManager.*)Endpoint:
POST http://localhost:4566/
All requested certificates are immediately issued with status ISSUED — no DNS or email validation is required. Certificates are generated with real RSA/EC keys and valid X.509 structure.
Supported key algorithms: RSA_2048, RSA_3072, RSA_4096, EC_prime256v1, EC_secp384r1, EC_secp521r1.
ACM operations (12)
ACM operations (12)
| Action | Description |
|---|---|
RequestCertificate | Request a new certificate (auto-issued) |
DescribeCertificate | Get certificate details and validation status |
GetCertificate | Retrieve the certificate and chain in PEM format |
ListCertificates | List all certificates with optional status filtering |
DeleteCertificate | Delete a certificate |
AddTagsToCertificate | Add tags to a certificate |
RemoveTagsFromCertificate | Remove tags from a certificate |
ListTagsForCertificate | List tags for a certificate |
ExportCertificate | Export certificate with encrypted private key (PRIVATE type only) |
GetAccountConfiguration | Get account-level ACM settings |
PutAccountConfiguration | Update account-level ACM settings |
RenewCertificate | Trigger certificate renewal |