You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

禁用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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.08 13:08:06