禁用Firebase Enable create (sign-up)后,使用Golang Admin SDK创建邮箱认证链接报错ADMIN_ONLY_OPERATION的问题
禁用Firebase Enable create (sign-up)后,使用Golang Admin SDK创建邮箱认证链接报错ADMIN_ONLY_OPERATION的问题
我最近折腾Firebase账号创建限制时碰到了个挺矛盾的问题,跟大家唠唠:
在Firebase控制台里,你进入Authentication > Settings > User Actions路径,会看到一个Enable create (sign-up)选项。按照页面提示,禁用这个选项是为了阻止客户端SDK创建新账号,而且页面还特意说明:You can always perform these actions using the Admin SDK.
结果实际操作时,我用Golang Admin SDK尝试创建邮箱认证链接,居然直接抛出了ADMIN_ONLY_OPERATION的错误,这跟控制台说的完全对不上啊!
给大家看看我用的示例代码:
package main import ( "context" "firebase.google.com/go" "firebase.google.com/go/auth" "google.golang.org/api/option" ) func main() { ctx := context.Background() // 初始化Admin SDK客户端 opt := option.WithCredentialsFile("serviceAccountKey.json") app, err := firebase.NewApp(ctx, nil, opt) if err != nil { panic(err) } authClient, err := app.Auth(ctx) if err != nil { panic(err) } // 配置动作代码设置 actionCodeSettings := &auth.ActionCodeSettings{ URL: "https://your-app-domain.com/complete-signup", } // 创建邮箱认证链接 link, err := authClient.EmailLinkForSignIn(ctx, "user@example.com", actionCodeSettings) if err != nil { // 这里触发ADMIN_ONLY_OPERATION错误 panic(err) } println("Email link:", link) }
我本来以为Admin SDK完全不受这个开关限制,结果现在直接卡壳了,有没有小伙伴遇到过类似情况,或者知道问题出在哪呀?
内容来源于stack exchange
相关产品推荐
相关产品推荐

