Anvil Connect:一个集各种权限授权协议的开源身份验证与授权服务器

Anvil Connect是一个现代的授权服务器,能够验证你的用户,保护你的API。其特点有:

1.简化安全机制

(1) 在多个App应用和服务之间共享用户帐户
(2)单点登录(共享会话session)
(3)登入的JSON Web Token可保护你的API
(4)使用OpenID连接实现联邦制的身份提供
(5)让第三方开发者使用两或三步的OAuth 2.0
(6)使用RBAC管理访问

2.灵活的用户授权
(1)使用本地密码 或OAuth 1.0, OAuth 2.0, OpenID, Active Directory。
(2)能够out-of-box与Google, Facebook, Twitter, GitHub集成。
(3)使用 Passport.js定制自己的代码模板

3.需要条件:
Node.js
npm
Redis

4.设置:


# Install the CLI
$ npm install -g anvil-connect

# Make a place for your deployment repository to live
$ mkdir path/to/project
$ cd path/to/project

# Generate a deployment repository
$ nv init

# Install dependencies
$ npm install

# Initialize the local database
$ nv migrate

# Create the first user account
$ nv signup

# Assign a role
$ nv assign <email> authority

# Start the server in development mode
$ nv serve


开源项目:anvilresearch/connect · GitHub

联想了一下,只有单点登录这个功能 是可以跟公司现有业务结合的。别的使用场景能更详细的说一下么?比如第六条,“使用RBAC管理访问”,是说如果我有个系统需要权限管理功能,那么可以不用在我的系统里加什么springsecurity,而是直接用Anvil Connect?

java有没有类似这样的软件?

这是用于RESTful API的权限保护,属于API 服务层之前的权限代理,因此用Node.js比较合适。这个开源项目主要用于集成如今各种登入方式,比如通过Twiiter等用户名密码登入。

每种语言的开源生态发展不同,在微服务+API导向的今天,Node.js和Go语言等其他非java语言的创新开源项目要更多些。