perf: 精简 fat jar 体积(34MB→18MB)+ Basic 认证增加 authFlag 总开关
- pom 移除未使用依赖:sqlite-jdbc(Agent 已拆 Python)、h2(dev Mock)、 sa-token-solon-plugin(鉴权已改手写 Basic),并清理对应版本属性 - OrderApi.checkBasic 增加 order.authFlag 总开关(默认 true,对齐原程序 sa-token.authFlag 语义,false 时 /order/** 全放行) - app.yml 增加 order.authFlag 配置项 Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -41,12 +41,17 @@ public class OrderApi {
|
||||
|
||||
/**
|
||||
* 全接口 Basic 认证(等价原程序 SaServletFilter 对 /order/** 的 SaBasicUtil.check())。
|
||||
* order.authFlag 总开关(默认 true);order.basic("user:password")为账号。
|
||||
* 校验失败返回 401 并带 WWW-Authenticate 头(浏览器弹登录框、B 端感知未授权)。
|
||||
*/
|
||||
private void checkBasic(Context ctx) {
|
||||
// authFlag=false 时整体关闭鉴权(对齐原程序 sa-token.authFlag 开关语义)
|
||||
if (!Solon.cfg().getBool("order.authFlag", true)) {
|
||||
return;
|
||||
}
|
||||
String expected = Solon.cfg().get("order.basic", "");
|
||||
if (expected == null || expected.trim().isEmpty()) {
|
||||
return; // 未配置放行(兼容与调试;生产环境必须配置)
|
||||
return; // 未配置账号放行(兼容与调试;生产环境必须配置)
|
||||
}
|
||||
|
||||
String auth = ctx.header("Authorization");
|
||||
|
||||
@@ -38,6 +38,8 @@ hm:
|
||||
# 格式 "user:password",未配置时放行;生产环境必须配置
|
||||
# order.basic: "hmapiuser:xxxx"
|
||||
order:
|
||||
# 鉴权总开关(对齐原程序 sa-token.authFlag),false 时 /order/** 全放行
|
||||
authFlag: true
|
||||
basic: ""
|
||||
# /api/admin/** 的管理 Token(Agent 环回调用携带 X-Admin-Token 头),未配置时放行
|
||||
admin:
|
||||
|
||||
Reference in New Issue
Block a user