关于vue.js:基于crudapi后端Java-SDK二次开发之API认证和鉴权二

1次阅读

共计 2717 个字符,预计需要花费 7 分钟才能阅读完成。

基于 crudapi 后端 Java SDK 二次开发之 API 认证和鉴权(二)

回顾

通过上一篇文章 基于 crudapi 后端 Java SDK 二次开发之环境搭建(一)的介绍,后盾 API 曾经搭建实现。RBAC 权限模型中介绍了用户和权限相干内容,本文次要介绍 API 集成中认证和鉴权相干内容。

背景

理论我的项目中,为了保障数据安全,API 须要认证才能够拜访,本文次要介绍三种 API 认证形式,基于 Spring Security 框架实现,包含 Cookie,Basic Auth,JWT 令牌 Token。

Swagger api 文档

https://demo.crudapi.cn/swagger-ui.html

默认用户名明码:

superadmin/1234567890

Cookie

登录 api

登录胜利后,浏览器主动解决 cookie 并辨认登录状态,适宜 web 拜访场景,方便快捷!

POST https://demo.crudapi.cn/api/auth/login
accept: application/json
content-type: application/x-www-form-urlencoded
username: superadmin
password: 1234567890

JWT 令牌 Token

登录胜利后,记录 TOKEN,每次发送申请之前,设置一下即可,后盾会解析 TOKEN 并辨认用户,并判断是否具备权限,适宜手机挪动端拜访场景,有效期比 cookie 长!

登录 api

POST https://demo.crudapi.cn/api/auth/jwt/login
accept: application/json
content-type: application/x-www-form-urlencoded
username: superadmin
password: 1234567890

获取 JWT Token

从申请返回的头外面获取 token 字段内容,格局为 Bearer XXXXX

设置 JWT token

设置 Type 为 Bearer Token

Bearer XXXXX 和 XXXX 两种格局都能够,后盾自动识别

查看 Authorization

申请头 Authorization 字段自动识别为:Bearer XXXXX

根本认证 Basic Auth

间接采纳户名和明码的形式,适宜任何简略解决的场景,要注意安全问题。

设置

设置 Type 为 Basic Auth

输出用户名明码即可

查看 Authorization

申请头 Authorization 字段自动识别为: Basic c3VwZXJhZG1pbjoxMjM0NTY3ODkw,其中 c3VwZXJhZG1pbjoxMjM0NTY3ODkw 为 superadmin:1234567890 的 Base64 编码。

其它接口

登记登录

GET https://demo.crudapi.cn/api/auth/logout

创立用户接口

POST https://demo.crudapi.cn/api/business/user

{
    "name": "testuser",
    "username": "testuser",
    "password": "testuser",
    "enabled": true,
    "accountNonExpired": true,
    "accountNonLocked": true,
    "credentialsNonExpired": true,
    "roleLines": [{
        "name": "业务数据角色",
        "role": {
            "id": 20,
            "name": "业务数据角色",
        },
        "roleId": 20
    }]
}

curl 示例

查问序列号

curl -u 'superadmin:1234567890' -X GET -H 'Content-Type: application/json' 'https://demo.crudapi.cn/api/metadata/sequences/1'
curl -H 'Authorization:Basic c3VwZXJhZG1pbjoxMjM0NTY3ODkw' -X GET -H 'Content-Type: application/json' 'https://demo.crudapi.cn/api/metadata/sequences/1'

查问序列号

curl -u 'superadmin:1234567890' -X POST -H 'Content-Type: application/json' -d '{"currentTime":false,"sequenceType":"STRING","minValue":1,"maxValue":999999999,"nextValue":1,"incrementBy":1,"name":"orderCode","caption":" 订单流水号 ","format":"SO_%9d"}' 'https://demo.crudapi.cn/api/metadata/sequences'

导入 EXCEL 数据

curl -u 'superadmin:1234567890' -F "file=@product.xlsx" "https://demo.crudapi.cn/api/business/product/import"

小结

本文次要介绍了 API 集成三种形式,在理论利用中,依据具体业务场景抉择最佳形式即可!

crudapi 简介

crudapi 是 crud+api 组合,示意增删改查接口,是一款零代码可配置的产品。应用 crudapi 能够辞别枯燥无味的增删改查代码,让您更加专一业务,节约大量老本,从而进步工作效率。
crudapi 的指标是让解决数据变得更简略,所有人都能够收费应用!
无需编程,通过配置主动生成 crud 增删改查 RESTful API,提供后盾 UI 治理业务数据。基于支流的开源框架,领有自主知识产权,反对二次开发。

demo 演示

crudapi 属于产品级的零代码平台,不同于主动代码生成器,不须要生成 Controller、Service、Repository、Entity 等业务代码,程序运行起来就能够应用,真正 0 代码,能够笼罩根本的和业务无关的 CRUD RESTful API。

官网地址:https://crudapi.cn
测试地址:https://demo.crudapi.cn/crudapi/login

附源码地址

GitHub 地址

https://github.com/crudapi/crudapi-admin-web

Gitee 地址

https://gitee.com/crudapi/crudapi-admin-web

因为网络起因,GitHub 可能速度慢,改成拜访 Gitee 即可,代码同步更新。

正文完
 0