安全与权限
不使用 Meilisearch SDK 生成租户令牌
本指南展示了在不使用 Meilisearch 官方 SDK 的情况下创建租户令牌的主要步骤。
本指南展示了使用第三方库 node-jsonwebtoken 创建租户令牌的主要步骤。
前提条件
- 一个正常运行的 Meilisearch 项目
- 支持认证用户的 JavaScript 应用程序
jsonwebtokenv9.0 或更高版本
使用 jsonwebtoken 生成租户令牌
构建租户令牌载荷
首先,创建一组搜索规则:
接下来,找到您的默认搜索 API 密钥。查询 获取 API 密钥端点 并检查 uid 字段以获取 API 密钥的 UID:
为了最大程度的安全性,您还应该为租户令牌设置过期时间。以下示例配置令牌在创建后 20 分钟过期:
创建租户令牌
首先,在您的应用程序中包含 jsonwebtoken。然后,组装令牌载荷并将其传递给 jsonwebtoken 的 sign 方法:
sign 方法需要载荷、Meilisearch API 密钥和加密算法。Meilisearch 支持以下加密算法:HS256、HS384 和 HS512。
现在您的租户令牌已准备就绪,可以使用了。
虽然本示例使用了 Node.js 包 jsonwebtoken,但您可以使用任何您熟悉的语言中兼容 JWT 的库。
使用租户令牌发起搜索请求
签名令牌后,您可以使用它发起搜索查询,其使用方式与API密钥相同。