真实开启security用file realm建用户,_authenticate确认通过default_file realm认证;创建API Key用Authorization:ApiKey认证成功但roles字段为空[];拿这个看似无权限的key建索引却成功,因为未指定role_descriptors的key会继承创建者全部权限;invalidate后再认证报错明确点名是哪个key失效。
用 rustup 装 5 个目标的标准库做交叉编译:x86_64-apple-darwin 能编译但本机无法运行(Bad CPU type);wasm32 在 node 里实际调用成功(usize = 32 位);Linux musl 用 zig cc 当链接器并加 link-self-contained=no 链接成静态 ELF(x86-64 与 aarch64,本机没有 Linux 所以没有运行);iOS 产物是 LC_VERSION_MIN_IPHONEOS。
真实建两个索引,定义cluster权限为空、只对一个索引给read权限的自定义role并绑定新用户,验证读授权索引成功、写授权索引被拒绝且精确列出所需权限名、读未授权索引和查cluster/health同样被拒绝,4次403报错结构一致,每次精确点名当前角色、涉及索引及缺少的权限名。
为 Rust 项目写一个 GitHub Actions 工作流(fmt / clippy / test 矩阵 / audit)。工作流本身没有在 GitHub 上运行;验证了:actionlint 通过并能查出三种笔误;按 run: 步骤在本机依次执行全部通过;四种缺陷各只让对应的 job 失败;--locked 拒绝过期的 Cargo.lock;缓存的本地模拟。
用 Flask 3.1.3 验证 Flask(__name__) 构造时做了什么:注册 /static 路由、29 个默认配置键、默认上下文处理器,jinja_env 与 logger 惰性创建;root_path 随模块位置变化;构造一次中位数 206 µs。
真实只给一个用户create_doc这一个索引权限,验证用POST新建全新文档成功,但用PUT覆盖已存在的文档被拒绝(需要create/index/write/all,create_doc不在名单里),删除文档同样被拒绝;用带op_type=create参数的PUT创建全新id也成功了,证明create_doc判定的是真实的操作语义而不是HTTP方法本身。
真实验证DLS功能在basic许可证下被直接拒绝;用ES自带的trial许可证激活后role配置创建成功;测试受限用户的search和count都只能看到授权文档,直接GET一条被过滤的文档返回found:false而不是403,对比管理员确认该文档真实存在,揭示DLS让被过滤文档表现得如同不存在以避免泄露数据存在性。
用真实进程验证 app.run():启动信息、只监听 127.0.0.1、debug=True 多出重载器子进程(改文件约 0.64 秒重载)、threaded=True 时 2 个并发请求总耗时 511 ms 对 1018 ms、flask run 不执行 __main__ 里的代码。
验证 Flask 应用上下文:没有上下文时的 RuntimeError;current_app 是 LocalProxy;g 每个请求都是新的;一次请求里信号与回调的实际顺序;请求上下文自带应用上下文;嵌套与命令行里的上下文。
验证 Flask 请求上下文:没有时的 RuntimeError;test_request_context 构造的 WSGI environ;push 时打开会话与做 URL 匹配(404 到分发时才抛出);无 SECRET_KEY 的 NullSession;线程里需要 copy_current_request_context;with client 保留上下文;背后是两个 ContextVar。
验证 current_app、request、g 的实现:它们是 LocalProxy,背后是 ContextVar,每个线程各自取到自己的对象;通过代理访问约是直接访问的 9.8 倍;g 的接口与自定义;代理不能传给别的线程。
真实用trial许可证解锁FLS,给用户配上排除salary字段的field_security后GET和search都只返回name和department,salary整条从_source消失而非显示null;用range查询按隐藏的salary字段筛选数据查出0条结果,即便数据满足条件,管理员跑同查询能正常匹配,揭示FLS让隐藏字段在查询语义层面也彻底消失。