问题描述
我能否以某种方式在 UDF 的正文中获取标头的值?
我们的想法是基于自定义标头参数(如 userId、role、key、UDF 等)实现我们自己的 ABAC。
解决方法
动物群查询无权访问请求标头。
,您可以使用 Fauna 生成可在标头中用于查询数据的令牌。在创建用户时,您将创建一个用户名/电子邮件和一个密码,这些密码将作为“凭据”存储。您可以创建登录 UDF 和 user_by_email 索引,它们将验证用户并发出令牌。 登录 UDF 看起来像这样:
Query(
Lambda(
["data"],Create(Collection("User"),{
credentials: { password: Select("password",Var("data")) },data: {
firstName: Select("firstName",Var("data")),lastName: Select("lastName",email: Select("email",role: Select("role",phone: Select("phone",}
})
)
)
user_to_email 索引将如下所示:
Source Collection: User
Index Name: user_by_email
Terms: data.email
Values: Serialized: true
这是 Fauna 用户身份验证文档的链接:https://docs.fauna.com/fauna/current/tutorials/authentication/user.html
希望这会有所帮助。