# Edge API authentication methods

> Authenticating with Aembit Edge API using different methods

Aembit Edge API supports multiple authentication methods to accommodate different environments and workloads, including cloud providers, CI/CD systems, and container orchestration platforms. The authentication process involves attesting the identity of Client Workloads and validating them against your configured Trust Providers. Edge API then issues an access token for subsequent API calls.

## List of authentication methods

The `/edge/v1/auth` endpoint accepts the following attestation methods. For the full request schema and field-level details, see the [`auth` endpoint reference](/dev-guide/api/edge/endpoints/auth).

### AWS

* [AWS Metadata Service](/dev-guide/api/edge/auth/aws-metadata-service) - Authenticate EC2 instances using the instance identity document and its signature from the AWS Instance Metadata Service (IMDS).
* [AWS IAM Role](/dev-guide/api/edge/auth/aws-iam-role) - Authenticate using a signed AWS STS `GetCallerIdentity` request, proving identity through an attached IAM role.
* [AWS Lambda](/dev-guide/api/edge/auth/aws-lambda) - Authenticate Lambda functions with a signed STS `GetCallerIdentity` request from the function’s execution role, optionally identified by the function ARN.
* [AWS ECS](/dev-guide/api/edge/auth/aws-ecs) - Authenticate ECS tasks with a signed STS `GetCallerIdentity` request from the task’s IAM role, optionally identified by container and task metadata.

### Google Cloud Platform

* [GCP Identity Token](/dev-guide/api/edge/auth/gcp-identity-token) - Attest with an identity token minted by the GCP metadata server for the service account attached to your workload.

### Kubernetes

* [Kubernetes service account](/dev-guide/api/edge/endpoints/auth#kubernetes-attestation) - Authenticate pods using a Kubernetes service account JWT.

### CI/CD platforms

* [GitHub Actions](/dev-guide/api/edge/endpoints/auth#github-actions-attestation) - Authenticate workflows using a GitHub-issued OIDC identity token.
* [Terraform Cloud](/dev-guide/api/edge/endpoints/auth#terraform-cloud-attestation) - Authenticate workspaces using a Terraform Cloud OIDC identity token.
* [GitLab Jobs](/dev-guide/api/edge/endpoints/auth#gitlab-jobs-attestation) - Authenticate CI/CD pipelines using a GitLab-issued OIDC identity token.

### Any OIDC provider

* [OIDC ID Token](/dev-guide/api/edge/auth/oidc-id-token) - Authenticate with an ID token from any OpenID Connect provider. Use this for platforms with no dedicated method of their own, such as serverless hosts that inject a token into each request.