supertokens / supertokens-core

Open source alternative to Auth0 / Firebase Auth / AWS Cognito
https://supertokens.com
Other
12.89k stars 506 forks source link

[Feat]: SCIM Client support (Outbound provisioning) #1009

Open polarathene opened 3 months ago

polarathene commented 3 months ago

🚀 Feature

Feb 2024 blog post: https://supertokens.com/blog/what-is-scim-provisioning

A SCIM client is probably more effort to support. I don't use SuperTokens myself, so perhaps wait until enough user interest is expressed with 👍 reactions.

Implementation details

For reference:

There are also services that map a SCIM endpoint to an alternative API of a service which lacks support for SCIM. These vary in naming too as SCIM bridges / connectors / facades / gateways.

rishabhpoddar commented 3 months ago

We have an example app that shows how SCIM can be added: https://github.com/supertokens/jackson-supertokens-express

polarathene commented 3 months ago

I'm aware, but that is for supporting SuperTokens as a Service Provider (SCIM server, provides the API endpoints to provision users/groups to SuperTokens, aka inbound provisioning):

Once created, you will see a URL at the bottom of the screen: http://localhost:5225/api/scim/oauth/authorize?directoryId= You need to navigate to that on your browser and login as the admin of your Google workspaces account. This will generate an access and refresh token which can then be used by BoxyHQ to sync users from Google Workspaces.


SCIM Client support (outbound provisioning) is different.

If you were to provision users from SuperTokens (now acting as a SCIM Client) into a SP (services with SCIM server support like Okta, Sentry, Slack, AWS IAM Identity Center), that would all be the other way around (SuperTokens calls those services SCIM API, mapping it's internal representation of equivalent SCIM attributes).

rishabhpoddar commented 3 months ago

Right. Makes sense. Thanks for opening this issue.