[英]One authentication API to many other API microservices
我的計划是在.Net Core 2.1中構建一些單獨的WebApi后端應用程序。 我還想擁有一個大型前端應用程序(內置於Angular中),該應用程序將使用上述微服務的調用。
因此,在前端應用程序中,我將具有一些模塊:Login,MicroSrv1,MicroSrv2,...等
登錄GUI將使用LoginApi。 登錄后,我想顯示MicroSrv1 GUI(連接到MicroSrv1 Api),MicroSrv2(連接到MicroSrv2 Api),依此類推。
我的想法是:
這是一個好習慣嗎? 是否只有一個單獨的微服務進行身份驗證? 還是每個微服務都應該內置自己的微服務? 如何在微服務之間共享身份驗證令牌並僅使用一個Login Api應用程序? 您能給我一些例子嗎?
我不明白為什么每個微服務都有一個GUI,但是您可以通過使用共享數據保護密鑰為每個微服務添加身份驗證來實現此目的。
您可以通過將數據保護配置為使用共享文件夾作為密鑰存儲區來實現此目的,或者實現自己的數據保護以擁有一個共享存儲區。
從身份驗證服務中,您將根據用戶角色和與其關聯的權限返回JWT令牌。
在客戶端,您將解析JWT令牌,並基於權限,僅顯示適用於用戶的屏幕,而在服務器端,您將讀取每個REST調用中的訪問權限,並通過未授權的錯誤如果用戶嘗試訪問沒有權限的服務
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.