Pergunta

For example, creating user accounts are a pretty common occurrence when developing a website. Is there any service that a software developer could use to "click and drag" a solution for this into their software (request a JSON response, for instance) instead of completely re-coding a new solution for this every time you need to create a user database?

Does there exist a marketplace for solutions like this of all kinds?

Foi útil?

Solução

Not exactly.

The problem is that the new user database will have some variation. Where is your authentication source? What fields should users have? Do you need to send out a message when users are created/modified? Do you need to authorize user creation? How do you know what permissions a user has?

"Thats fine", you say "we'll provide those via configuration!"

So you start adding configuration variables for all the different variations that people need. A place to specify the authentication source. A way to specify what fields a user should have. Some canned behaviors for sending out messages.

But now your configuration is more and more complex, yet still only covers the most common cases. "So why don't we add some plug-ins to the configuration so that we can support new behaviors?"

And you've just spent a whole lot of time and effort to produce something that looks and acts like a programming language, but without the widespread support, libraries, or userbase.

Outras dicas

To speak more specifically to the use-case you gave Yes. Identity as a service exists for precisely that reason. There are many providers such as AWS Cognito (https://aws.amazon.com/cognito/) and Auth0 (https://auth0.com/) that will handle authentication for you. You simply interact with their "User Service" via API calls. They are highly configurable and allow custom fields for your user objects.

Licenciado em: CC-BY-SA com atribuição
scroll top