OfficialSPIIdentity ProviderActive

apple-identity-provider-keycloak

klausbetz/apple-identity-provider-keycloak ↗

Sign in with Apple identity provider.Sign in with Apple用Identity Provider

★
297
Forks
59
Contributors
11
Updated
2026-01-18
KC
—
License
Apache-2.0

What it can doできること4

  • Add "Sign in with Apple" as an identity provider, handling Apple's non-standard OIDC behaviour (POSTed token response, no userinfo endpoint, JWT client secret signed with a .p8 key).「Sign in with Apple」をIdPとして追加。AppleのOIDC非準拠な挙動(トークン応答のPOST、userinfoなし、.p8鍵で署名したJWTのクライアントシークレット)に対応
  • Support native apps (e.g. iOS) via token exchange — swap an Apple ID token or authorization code for Keycloak tokens.トークン交換でネイティブアプリ(iOSなど)に対応。AppleのIDトークンや認可コードをKeycloakのトークンに交換できる
  • Optionally link token-exchange logins to existing Keycloak accounts automatically.トークン交換でのログインを、既存のKeycloakアカウントに自動でリンクできる
  • Pass the user's name on first login during token exchange (user_profile).トークン交換の初回ログイン時に、ユーザー名を user_profile で渡して保存できる

What it cannot do / limitsできないこと・制約4

  • Apple sends email and name only on the very first sign-in, and has no userinfo endpoint to fetch them later.Appleはメールと氏名を初回サインイン時しか送らず、後から取得するuserinfoエンドポイントもない
  • Users with a private-relay address receive no Keycloak emails unless the realm's sender address is whitelisted in your Apple Developer account.プライベートリレーのアドレスを使うユーザーには、realmの送信元アドレスをApple Developer側で許可しない限りKeycloakのメールが届かない
  • Uses internal Keycloak SPIs, so it may break on a new Keycloak major — use the extension version from the compatibility table.Keycloakの内部SPIを使っているため、メジャーアップデートで壊れる可能性がある。互換表にあるバージョンを使う
  • Not usable from the Admin UI on Keycloak 21 (config fields hidden), and v19/v20 need the old Admin UI.Keycloak 21では管理UIで設定項目が表示されず使えない(Terraform等なら可)。v19/v20は旧管理UIが必要

Requirements前提条件