Hi @Nishant_Deb,
Welcome to the community
This is possible with the Gateway open source. All that’s needed is the API and Policy definitions/ configurations.
The dashboard provides a way to create API definitions and Policies visually, but the end result - the API definition and Policy - is the same as if you configured them without the Dashboard.
For API security, there are two Auth methods through which you can integrate Tyk with Auth0, and they are JWT and OpenIDConnect methods. Please review the embedded links.
I’ve shared the resulting API definitions of each method below, and you can modify the values for your environment.
jwt auth method
{
"name": "jwt",
"slug": "jwt",
"api_id": "5f6ff34bad2e4959516f4f5598c73735",
"org_id": "64ca4c545cf4060001966aef",
"enable_jwt": true,
"jwt_signing_method": "rsa",
"jwt_source": "aHR0cHM6Ly9kZXYtNjk2NHBjdTUudXMuYXV0aDAuY29tLy53ZWxsLWtub3duL2p3a3MuanNvbg==",
"jwt_identity_base_field": "sub",
"jwt_client_base_field": "",
"jwt_policy_field_name": "pol",
"jwt_default_policies": [
"64d9fd9f900e4b0001d10fe7"
],
"jwt_skip_kid": false,
"scopes": {
"jwt": {},
"oidc": {}
},
"jwt_scope_to_policy_mapping": {},
"jwt_scope_claim_name": "",
"version_data": {
"not_versioned": true,
"default_version": "",
"versions": {
"Default": {
"name": "Default",
"expires": ""
}
}
},
"proxy": {
"preserve_host_header": false,
"listen_path": "/jwt/",
"target_url": "http://host.docker.internal:7070/",
"disable_strip_slash": true,
"strip_listen_path": true
},
"active": true,
"internal": false
}
.
openid auth method
{
"id": "64cb85897d75260001cd0a9d",
"name": "openid",
"slug": "openid",
"api_id": "d7de5dc3dbc04bc9449343b10e181521",
"org_id": "64ca4c545cf4060001966aef",
"use_openid": true,
"openid_options": {
"providers": [
{
"issuer": "https://dev-6964pcu5.us.auth0.com/",
"client_ids": {
"aHR0cHM6Ly9kZXYtNjk2NHBjdTUudXMuYXV0aDAuY29tL2FwaS92Mi8=": "64cb863f7d75260001cd0a9e"
}
}
],
"segregate_by_client": false
},
"version_data": {
"not_versioned": true,
"default_version": "",
"versions": {
"Default": {
"name": "Default",
"expires": "",
"use_extended_paths": true
}
}
},
"proxy": {
"preserve_host_header": false,
"listen_path": "/openid/",
"target_url": "http://host.docker.internal:7070/",
"disable_strip_slash": true,
"strip_listen_path": true
},
"active": true,
"internal": false
}
.
If you wish to use scope claim mapping, please review:
- JSON Web Tokens
- Integrate with OIDC
- Filtering access using Keycloak roles
- Unable to authorize using Keycloak roles
I hope this helps. Please write back if you need further assistance.