2017-04-16 78 views
0

我正在开发一个使用.NET ASP Core的解决方案。目前的版本是单片的,我想将它切换到由iOS/Android应用程序和网站使用的HTTP API组成的服务体系结构。这里是一个可视化:NET中的网站和Web服务的用户身份验证ASP核心

Architecture comparison

我的网站和服务层使用.NET ASP核心。我几乎已经完成了所做的更改,但是我挂断了如何处理允许管理员编辑系统内容的网站区域的身份验证。单片版本使用Identity Core(定制实现,不使用实体),这非常有效。我可以将身份验证代码移入服务中,但我不知道如何处理网站上的身份验证(应用程序仅为公共内容,不需要身份验证)。我如何将网站的用户名/密码传递给服务?我如何跟踪最终用户和服务层之间的会话?或者像OAUTH这样的另一种选择更有意义?我更喜欢一个不需要我在网站和服务上实现重复角色/策略的解决方案。

任何建议欢迎,我没有这样的设置经验,所以我真的不知道从哪里开始。谢谢!

回答

1

OpenID Connect或OAuth很有意义,因为您已拥有的所有声明/角色都将被封装到令牌中。我目前使用IdentityServer4,它适用于您的确切情况。

由于您已经在使用身份数据库实现并不重要,只要您有后端。最后,网站的调用直到http本身,都记录在案。

http://www.identityserver.io

+0

谢谢!这正是我需要的。我现在已经建立了以我的MVC前端作为客户端和服务作为服务器的SSO。很棒! –