Firebase 在创建新用户时注销当前用户

Firebase logs out current user when creating a new one

我正在创建一个 iPhone 应用程序,管理员用户可以在其中创建新用户,但正如 Firebase 文档所述 "If the new account was created, the user is signed in automatically",所以我'我正在寻找一种方法来避免登录到新创建的用户。

如果不使用新的 Firebase Admin SDK(仅网络 AFAIK),有什么方法可以避免这种情况?

您可以通过多种方式解决此问题:

选项 1:将管理员用户的凭据安全地保存在您的设备上。然后,当用户创建新用户时,使用管理员凭据登录。这将使您注销并立即重新登录。

选项 2:使用 admin sdk 创建一个用户,在 web 端有一个 rest API 调用。

为 iOS 工作。完美运行:

NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"GoogleService-Info" ofType:@"plist"];
FIROptions *secondaryAppOptions = [[FIROptions alloc] initWithContentsOfFile:plistPath];
[FIRApp configureWithName:@"Secondary" options:secondaryAppOptions];
FIRApp *secondaryApp = [FIRApp appNamed:@"Secondary"];
FIRAuth *secondaryAppAuth = [FIRAuth authWithApp:secondaryApp];

[secondaryAppAuth createUserWithEmail:user.email
                             password:user.password
                           completion:^(FIRUser * _Nullable user, NSError * _Nullable error) {
                                [secondaryAppAuth signOut:nil];
                          }];