klausbetz / apple-identity-provider-keycloak

An extension for Keycloak, that enables web-based sign in with Apple and token exchange
Apache License 2.0
193 stars 27 forks source link

Apple Phone provider for keycloak 21.0.2 version #55

Closed htaimoor2010 closed 1 year ago

htaimoor2010 commented 1 year ago

Hi, I am using keycloak phone provider extension so that user is able to login into the system through OTP and stuff. I want to integrate this apple-identity-provider-keycloak extension into it. The issue is that this keycloak version that it is using(21.0.2) doesnot have the keyId, teamId and other configs on the admin UI. How can I do all these settings to make it work?

I passed the clientId and clientSecret from UI and it threw the following exception image

2023-10-06 07:34:37,570 ERROR [org.keycloak.services.error.KeycloakErrorHandler] (executor-thread-14) Uncaught server error: org.jboss.resteasy.spi.InternalServerErrorException: RESTEASY003815: Subresource for target class has n o jax-rs annotations.: at.klausbetz.provider.AppleIdentityProviderEndpoint

image

klausbetz commented 1 year ago

Yeah.

Keycloak 21's UI doesn't support external social provider plugins like this one.

The easiest thing you can do to use the UI for configuration, is to update to Keycloak 22.

If you cannot upgrade, then you could use external configuration tools like keycloak-config-cli or you modify the values in the database (identity_provider_config table) directly:

Bildschirmfoto 2023-10-06 um 09 56 31
htaimoor2010 commented 1 year ago

Is there any way to pass keyId,teamId and other related configs in params like these? It would be of great help if possible.

image

And, I cant understand this exception. Why am I getting this 2023-10-06 07:34:37,570 ERROR [org.keycloak.services.error.KeycloakErrorHandler] (executor-thread-14) Uncaught server error: org.jboss.resteasy.spi.InternalServerErrorException: RESTEASY003815: Subresource for target class has n o jax-rs annotations.: at.klausbetz.provider.AppleIdentityProviderEndpoint

klausbetz commented 1 year ago

Short answer
I don't think so.

Long answer. Your config looks like a global Keycloak configuration. As the Apple Identity Provider doesn't work globally for the whole instance, but per realm, I don't think you can achieve it like you did it in your screenshot.

htaimoor2010 commented 1 year ago

worked like a charm after updating to Keycloak 22! Thanks