Hydra
1、下载代码
git clone https://github.com/ory/hydra.git
2、启动服务
docker-compose -f quickstart.yml \
-f quickstart-postgres.yml \
up --build
端口 4444用于公网,4445用于管理口,一般用于内网,或者配有权限控制的代理
3、测试服务已正确启动
不想测试也可跳过
初始化一个oauth2 client,给的id,secre,和工作类型
docker-compose -f quickstart.yml exec hydra \
hydra clients create \
--endpoint http://127.0.0.1:4445/ \
--id my-client \
--secret secret \
-g client_credentials
测试获取token
docker-compose -f quickstart.yml exec hydra \
hydra token client \
--endpoint http://127.0.0.1:4444/ \
--client-id my-client \
--client-secret secret
测试使用token获取信息,token使用上面命令返回的token
docker-compose -f quickstart.yml exec hydra \
hydra token introspect \
--endpoint http://127.0.0.1:4445/ \
UDYMha9TwsMBejEvKfnDOXkhgkLsnmUNYVQDklT5bD8.ZNpuNRC85erbIYDjPqhMwTinlvQmNTk_UvttcLQxFJY
4、app验证测试
创建一个 oauth client secret可使用随机产生,grant-types 授权类型,response-types相应类型,scope控制域,自定义,callbacks客户端回调地址
docker-compose -f quickstart.yml exec hydra \
hydra clients create \
--endpoint http://127.0.0.1:4445 \
--id auth-code-client \
--secret secret \
--grant-types authorization_code,refresh_token \
--response-types code,id_token \
--scope openid,offline \
--callbacks http://127.0.0.1:5555/callback
启动客户端:
客户端端口为 5555
docker-compose -f quickstart.yml exec hydra \
hydra token user \
--client-id auth-code-client \
--client-secret secret \
--endpoint http://127.0.0.1:4444/ \
--port 5555 \
--scope openid,offline
然后登打开: http://127.0.0.1:5555
跳转到第三方登陆页面