2024-06-18 15:53:06 +02:00
---
title: Amazon Cognito SSO for Bare Metal
slug: /deployment/security/amazon-cognito/bare-metal
2024-09-05 10:30:31 +02:00
collate: false
2024-06-18 15:53:06 +02:00
---
# Amazon Cognito SSO for Bare Metal
## Update conf/openmetadata.yaml
Once the User pool and App client are created, add the `client id` to the value of the `clientId` field in the
`openmetadata.yaml` file. See the snippet below for an example of where to place the `client id` value. Also, configure the
`publicKeyUrls` and `authority` fields correctly with the User Pool ID from the previous step.
```yaml
authenticationConfiguration:
provider: "aws-cognito"
publicKeyUrls:
- "https://cognito-idp.us-west-1.amazonaws.com/{User Pool ID}/.well-known/jwks.json"
2024-10-07 02:56:10 -07:00
- "https://{your domain}/api/v1/system/config/jwks"
2024-06-18 15:53:06 +02:00
authority: "https://cognito-idp.us-west-1.amazonaws.com/{User Pool ID}"
clientId: "{Client ID}"
2024-10-07 02:56:10 -07:00
callbackUrl: "https://{your domain}/callback"
2024-06-18 15:53:06 +02:00
```
2024-10-07 02:56:10 -07:00
{% note %}
`AUTHENTICATION_PUBLIC_KEYS` and `AUTHENTICATION_CALLBACK_URL` refers to https://{your domain} this is referring to your OpenMetdata installation domain name
and please make sure to correctly put http or https depending on your installation.
{% /note %}
2024-06-18 15:53:06 +02:00
Then,
- Update `authorizerConfiguration` to add login names of the admin users in `adminPrincipals` section as shown below.
- Update the `principalDomain` to your company domain name.
```yaml
authorizerConfiguration:
className: "org.openmetadata.service.security.DefaultAuthorizer"
# JWT Filter
containerRequestFilter: "org.openmetadata.service.security.JwtFilter"
adminPrincipals:
- "user1"
- "user2"
principalDomain: "open-metadata.org"
```
{% partial file="/v1.5/deployment/configure-ingestion.md" /%}