use Google\Cloud\Firestore\FirestoreClient;
$db = new FirestoreClient();
$db->collection('mycollectionname')
->document('mydocumentname')
->set(['name'=>'aaa','value'=>'111');
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
// before change
allow read, write: if true;
// after change
allow read, write: if request.auth.uid != null;
}
}
}
将true更改为request.auth.uid!=null后,它会出现错误:
{ "error": { "code": 403, "message": "Missing or insufficient permissions.", "status": "PERMISSION_DENIED" } }
我可以弄清楚获取用户数据,比如:电子邮件和密码或用户id令牌,如何使用用户数据解决上述错误?
我刚发现,也许对任何人都有用。
在文件使用Google\Cloud\FireStore\Connection\grpc
上,我做了一些更改:
......
......
private function addRequestHeaders(array $args)
{
$args += [
'headers' => []
];
$args['headers']['google-cloud-resource-prefix'] = [$this->resourcePrefixHeader];
///////// CODE THAT I ADD ///////////
if(session('user_token'))
{
$args['headers']['Authorization'] = ['Bearer '.session('user_token')];
}
///////// CODE THAT I ADD ///////////
// Provide authentication header for requests when emulator is enabled.
if ($this->isUsingEmulator) {
$args['headers']['Authorization'] = ['Bearer owner'];
}
return $args;
}
使用laravel,我让它检查会话,在Header上添加承载令牌。在上面的使用示例之后,我在使用Firestore函数之前添加了一个会话
use Google\Cloud\Firestore\FirestoreClient;
/// adding session
session(['user_token'=>'eyJhbGciOiJSUzI1................']);
$db = new FirestoreClient();
$db->collection('users')
->document('test@gmail.com')
->set(['name'=>'aaa','value'=>'111');
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /users/{email} {
allow read, write: if email == request.auth.token.email;
}
}
}
使用指南 - 统计设置 - 统计规则设置 为您详细介绍百度统计所支持的各种设置功能及使用方法,比如设置排除规则、设置跨域、添加指定广告追踪、设置转化目标等。 统计规则设置 什么是统计规则 如何设置跨域监控 跨域跟踪的用途举例 多域名网站的跨域跟踪 排除特定域名来源的访问流量 排除特定域名的访问流量 排除特定IP的访问流量 子目录介绍及设置方法 统一页面地址功能介绍
我按顺序调用这些函数(javascript'Firebase'): 我在firestore中设置了安全规则,只有当文档中的电子邮件字段等于auth email:时,才允许读取“users/:docid” 问题是在上会出现权限缺失或不足的错误。当然,数据库中的电子邮件是正确的,所以唯一的问题可能是无效。是否登录(使用任何登录函数),即使解析,也不能保证auth令牌被更新并可以立即使用?
目前,我正在尝试将与存储在集合中的的id进行匹配: 这是写的还是我做错了什么。任何帮助都很感激。
我最近开始研究口水。我只是设计了一个简单的应用程序来更好地理解它。 谢谢。
是否可以使用Firestore安全规则中的Firebase安装令牌? 如何验证FIS auth令牌?它们应该如何使用?
我目前正在为共享一些资源的任务构建一个调度应用程序。每个任务可能使用一定百分比的资源。 我需要在Drools规则中检查的是每个共享资源不被并行任务使用超过100%。 因此代码看起来如下所示: 要计划的实体 最后是解决方案 有没有办法或者我必须切换回我的时隙课程? 编辑:包含在一种阴影规划实体中的阴影变量能起到这个作用吗?