diff --git a/docs/README.md b/docs/README.md index 7ce063a14b69b7829fbb00f1e16659afad13a548..7a99298b695663cadeec38cfec045594bced2d1b 100644 --- a/docs/README.md +++ b/docs/README.md @@ -35,8 +35,8 @@ api的保护可以认为:认证-请求携带的认证信息是否校验通过 - [x] spring [sample-bootstrap](sample-bootstrap.md) - [x] springboot [sample-tom](sample-tom.md) -- [x] quarkus [sample-quarkus](quarkus-sureness.md) -- [x] javalin [sample-javalin](javalin-sureness.md) -- [x] ktor [sample-ktor](ktor-sureness.md) +- [x] quarkus [sample-quarkus](sample-quarkus.md) +- [x] javalin [sample-javalin](sample-javalin.md) +- [x] ktor [sample-ktor](sample-ktor.md) - [x] spring webflux [spring-webflux-sureness](samples/spring-webflux-sureness) - [x] more samples todo diff --git a/docs/_sidebar.md b/docs/_sidebar.md index 4086afdbf34ae1013fe8d9c2938b3367f1880ee8..45d7c5e722e18df2448d2a098893700e86da369c 100644 --- a/docs/_sidebar.md +++ b/docs/_sidebar.md @@ -8,16 +8,18 @@ - 进阶扩展 - [扩展点](extend-point.md) - - [自定义数据源](custom-datasource.md) + - [自定义Subject-Creator](custom-subject-creator.md) - [自定义Subject](custom-subject.md) + - [自定义数据源](custom-datasource.md) - [自定义Processor](custom-processor.md) - 集成案例 - [10分钟项目集成](sample-bootstrap.md) - [30分钟项目集成](sample-tom.md) - - [Quarkus项目集成](quarkus-sureness.md) - - [Javalin项目集成](javalin-sureness.md) - - [Ktor项目集成](ktor-sureness.md) + - [Quarkus项目集成](sample-quarkus.md) + - [Spring-Webflux项目集成](sample-spring-webflux.md) + - [Javalin项目集成](sample-javalin.md) + - [Ktor项目集成](sample-ktor.md) - 其它 - [设计文档](design.md) diff --git a/docs/custom-subject-creator.md b/docs/custom-subject-creator.md new file mode 100644 index 0000000000000000000000000000000000000000..2678924c34a59fed89d70d8927d162d4ab44a76c --- /dev/null +++ b/docs/custom-subject-creator.md @@ -0,0 +1,12 @@ +## 自定义subject creator + +自定义subject creator是我们使用频率最高的扩展,当请求体对象并不是servlet或者jax-rs标准api时, 我们就需要自定义subject creator, +使其通过请求对象获取我们需要的请求信息(请求路径,请求方法,认证信息等), 从而创建出对应的subject + +自定义前需要了解sureness提供的扩展接口,详见 [进阶扩展](extend-point.md) + +- `SubjectCreate`: 创建`Subject`接口,根据请求内容创建不同类型的`Subject`对象 + +实现`SubjectCreate`接口方法,根据不同的请求对象创建出对应需要的的`subject` + +具体扩展实践请参考 [sample-spring-webflux项目集成案例](sample-spring-webflux.md) \ No newline at end of file diff --git a/docs/javalin-sureness.md b/docs/sample-javalin.md similarity index 100% rename from docs/javalin-sureness.md rename to docs/sample-javalin.md diff --git a/docs/ktor-sureness.md b/docs/sample-ktor.md similarity index 74% rename from docs/ktor-sureness.md rename to docs/sample-ktor.md index 47d2c3608a94def3137905a2b8ada665bead9871..c065f29dc58832421008d020f2f07dd05be9ee69 100644 --- a/docs/ktor-sureness.md +++ b/docs/sample-ktor.md @@ -1,6 +1,6 @@ ## Sample-ktor-sureness -[javalin-ktor例子项目仓库地址](https://github.com/tomsun28/sureness/tree/master/samples/ktor-sureness) +[ktor-sureness例子项目仓库地址](https://github.com/tomsun28/sureness/tree/master/samples/ktor-sureness) - 基于`ktor, servlet` - 从默认的配置文件`sureness.yml`加载账户信息,资源角色,过滤资源等信息 diff --git a/docs/quarkus-sureness.md b/docs/sample-quarkus.md similarity index 73% rename from docs/quarkus-sureness.md rename to docs/sample-quarkus.md index 9b5b544c1da024c954e3e4b8837de2612146bc09..a505a4e48bc322ec96c74fd12ac9af5f9df2c5bb 100644 --- a/docs/quarkus-sureness.md +++ b/docs/sample-quarkus.md @@ -1,6 +1,6 @@ ## Sample-quarkus-sureness -[javalin-quarkus例子项目仓库地址](https://github.com/tomsun28/sureness/tree/master/samples/quarkus-sureness) +[quarkus-sureness例子项目仓库地址](https://github.com/tomsun28/sureness/tree/master/samples/quarkus-sureness) - 基于`quarkus, jax-rs` - 从默认的配置文件`sureness.yml`加载账户信息,资源角色,过滤资源等信息 diff --git a/docs/sample-spring-webflux.md b/docs/sample-spring-webflux.md new file mode 100644 index 0000000000000000000000000000000000000000..4118852353b86c761ceaa408b2bb3eab51b81b58 --- /dev/null +++ b/docs/sample-spring-webflux.md @@ -0,0 +1,11 @@ +## Sample-spring-webflux-sureness + +[spring-webflux-sureness例子项目仓库地址](https://github.com/tomsun28/sureness/tree/master/samples/spring-webflux-sureness) + +- 基于`spring-webflux` +- 自定义 subject creator (BasicSubjectReactiveCreator, JwtSubjectReactiveCreator, NoneSubjectReactiveCreator) 适配 ServerHttpRequest 请求体 +- 从默认的配置文件`sureness.yml`加载账户信息,资源角色,过滤资源等信息 +- 使用默认的`jwt,basic auth`方式认证鉴权 +- 例子中包含`restful api` +- 保护入口: `SurenessFilterExample` +- 推荐使用`postman`测试 \ No newline at end of file diff --git a/samples/README.md b/samples/README.md index 82ea98e86f6fef7b03944e5a395e19b3ec725a47..b07b1a7e42f2b23d8931c927635937cbd3ad2c12 100644 --- a/samples/README.md +++ b/samples/README.md @@ -2,7 +2,7 @@ 这里实现了我们除了spring外常用的其他jvm框架集成sureness的样例,方便参考 -> support servlet(javax.servlet) and jax-rs(javax.ws.rs) +> support servlet(javax.servlet), jax-rs(javax.ws.rs) and more 1. javalin - https://javalin.io/