首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >领域设备同步“在服务上的操作'mongodb-atlas‘被禁止:没有为此服务配置任何规则”错误

领域设备同步“在服务上的操作'mongodb-atlas‘被禁止:没有为此服务配置任何规则”错误
EN

Stack Overflow用户
提问于 2022-06-16 10:14:22
回答 1查看 178关注 0票数 -1

我正在用SwiftRealm数据库开发一个移动应用程序。

我配置了Realm Device Sync,并尝试将custom user data添加到我创建的集群中。

尽管我看了许多关于realm permissions的教程,但我仍然不知道应用程序中的权限有什么问题。

下面是我用来添加Custom User Data的身份验证函数

代码语言:javascript
复制
func login() {
        isLoading = true
        errorMessage = nil
        
        
        let credentials = Credentials.emailPassword(email: username, password: password)
        
        DispatchQueue.main.async {
            app.login(credentials: credentials) { [weak self] result in
                switch (result) {
                case .failure(let error):
                    print(String(describing: error))
                    self?.errorMessage = error.localizedDescription
                    
                case .success(let user):
                    if user.customData.isEmpty {
                        let client = user.mongoClient("mongodb-atlas")
                        let database = client.database(named: "UserAPI")
                        let collection = database.collection(withName: "Users")
                        // Insert the custom user data object
                        let customUserData: Document = [
                            "_id": AnyBSON(user.id),
                            "email": .string(self!.email),
                            "province": .string(self!.province),
                            "_partition": .string(user.id)
                        ]
                        collection.insertOne(customUserData) {result  in
                            switch result {
                            case .failure(let error):
                                print("Failed to insert document: \(error.localizedDescription)")
                            case .success(let newObjectId):
                                print("Inserted custom user data document with object ID: \(newObjectId)")
                            }
                        }
                    }
                }
                self?.isLoading = false
            }
        }
    }

但是当我尝试创建一个新用户时,它成功地创建了一个用户。问题是,当涉及到添加Custom User Data时,它返回如下错误:

Failed to insert document: no rule exists for namespace 'UserAPI.Users'

当我检查MongoDB日志时,我可以看到更详细的错误:

我的Custom User Data设置:

我的应用程序权限:

任何帮助都是徒劳无功的,我为这个错误挣扎了3天,谢谢提前。

EN

回答 1

Stack Overflow用户

发布于 2022-08-14 13:42:49

@GrandSirr --您是否尝试过设置“用户可以读写所有数据”的权限模板(至少用于开发)?

另外,您的实际“用户”集合是什么?在我看来,用户自定义数据应该是一个单独的集合,因为用户自定义数据的大小是有限的。

我的流登录用户使用电子邮件密码集数据库触发器创建一个新的用户文档与相关字段,用户以后可以填写您的应用程序的‘配置文件设置’页面和另一个触发器创建一个文件在一个单独的用户自定义数据收集,以保存一些权限角色或通知订阅等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72644212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档