/ / Instance d'identité aspcore unique pour plusieurs projets - asp.net, asp.net-core, asp.net-identity

Instance d'identité aspcore unique pour plusieurs projets - asp.net, asp.net-core, asp.net-identity

Je travaille actuellement avec un client et aiété chargé de créer une deuxième application pour le même client. L'application sera basée sur le Web (asp.net core) et, depuis que j'ai déjà terminé une application pour eux en utilisant asp.net MVC avec un cadre d'identité (plaque de chaudière avec quelques extensions), j'aimerais que cette nouvelle application en noyau utilise également cette instance d’identité, car certains utilisateurs accéderont aux deux applications. Je sais que c'est là-bas, mais je n'ai pas trouvé de réponses ou de tutoriels sur la façon de procéder. Toute aide est grandement appréciée. Je vous remercie!

Réponses:

0 pour la réponse № 1

Vous pouvez utiliser la même base de données Identity pour gérer l'authentification et l'autorisation.

Ajouter un ApplicationId champ à AspNetUsers table, dérive de UserStore et réimplémentez les méthodes basées sur Find afin que les requêtes prennent en compte le ApplicationId

Chaque nouvelle application aura un nouveau applicationId dans ce cas.

En outre, vous pouvez séparer la base de données d’identité, doncvous découplez le processus d'autorisation, ce qui vous permet de séparer les dépendances de vos applications, d'ajouter facilement de nouvelles applications dans le futur et de les mettre à l'échelle en fonction des besoins.

Vous pouvez ensuite utiliser un jeton porteur et des API Web. Une fois l’utilisateur connecté, vous passerez le username Et ApplicationId pour l'application à laquelle l'utilisateur demande l'accès, votre service de sécurité renvoie alors un jeton de support s'il est autorisé et une erreur 401 dans le cas contraire.