{
  "_meta": {
    "broker": "Keycloak",
    "purpose": "Identity Provider (OIDC v1) config so Keycloak federates to a CodeB Sovereign Communications tenant.",
    "instructions": "https://<CODEB_TENANT_HOST>/iam-integrations.html#keycloak",
    "codeb_issuer": "https://<CODEB_TENANT_HOST>",
    "keyword": "European Digital Identity Wallet (EUDIW) sign-in surfaces as an additional authentication method once federated.",
    "replace": ["<CODEB_TENANT_HOST>", "<CLIENT_ID>", "<CLIENT_SECRET>"]
  },
  "alias": "codeb-eudi-wallet",
  "displayName": "CodeB (EU Digital Identity Wallet)",
  "providerId": "oidc",
  "enabled": true,
  "trustEmail": true,
  "storeToken": false,
  "addReadTokenRoleOnCreate": false,
  "authenticateByDefault": false,
  "linkOnly": false,
  "firstBrokerLoginFlowAlias": "first broker login",
  "config": {
    "issuer": "https://<CODEB_TENANT_HOST>",
    "authorizationUrl": "https://<CODEB_TENANT_HOST>/oidc.ashx/authorize",
    "tokenUrl": "https://<CODEB_TENANT_HOST>/oidc.ashx/token",
    "userInfoUrl": "https://<CODEB_TENANT_HOST>/oidc.ashx/userinfo",
    "logoutUrl": "https://<CODEB_TENANT_HOST>/oidc.ashx/end_session",
    "jwksUrl": "https://<CODEB_TENANT_HOST>/.well-known/jwks.json",
    "clientId": "<CLIENT_ID>",
    "clientSecret": "<CLIENT_SECRET>",
    "clientAuthMethod": "client_secret_post",
    "defaultScope": "openid profile email",
    "validateSignature": "true",
    "useJwksUrl": "true",
    "pkceEnabled": "true",
    "pkceMethod": "S256",
    "syncMode": "IMPORT",
    "backchannelSupported": "false",
    "prompt": ""
  },
  "attributeMappers": [
    { "codeb_claim": "sub",                 "keycloak_user_attribute": "sub" },
    { "codeb_claim": "email",               "keycloak_user_attribute": "email" },
    { "codeb_claim": "email_verified",      "keycloak_user_attribute": "emailVerified" },
    { "codeb_claim": "preferred_username",  "keycloak_user_attribute": "username" },
    { "codeb_claim": "role",                "keycloak_user_attribute": "codeb_role" },
    { "codeb_claim": "eudi_verified",       "keycloak_user_attribute": "eudi_verified" },
    { "codeb_claim": "wallet_attestation",  "keycloak_user_attribute": "wallet_attestation" }
  ]
}
