亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何驗證 Google Firebase 管理員 SDK 憑據是否正確

如何驗證 Google Firebase 管理員 SDK 憑據是否正確

Go
慕容708150 2022-06-13 16:41:52
使用以下代碼初始化應用程序時,有什么方法可以驗證 Firebase Admin SDK Credentials 是否正確?ctx := context.Background()opt := option.WithCredentialsFile("path/to/firebase-admin-sdk-cred.json")app, err := firebase.NewApp(ctx, nil, opt)if err != nil {    return nil, err}因為當我試圖故意輸入錯誤的憑據時,我似乎沒有收到任何錯誤。我檢查了firebase.NewApp()的實現,但似乎只有在沒有配置時才會拋出錯誤。下面是firebase.NewApp()的代碼func NewApp(ctx context.Context, config *Config, opts ...option.ClientOption) (*App, error) {o := []option.ClientOption{option.WithScopes(internal.FirebaseScopes...)}o = append(o, opts...)if config == nil {    var err error    if config, err = getConfigDefaults(); err != nil {        return nil, err    }}pid := getProjectID(ctx, config, o...)ao := defaultAuthOverridesif config.AuthOverride != nil {    ao = *config.AuthOverride}return &App{    authOverride:     ao,    dbURL:            config.DatabaseURL,    projectID:        pid,    serviceAccountID: config.ServiceAccountID,    storageBucket:    config.StorageBucket,    opts:             o,}, nil }所以有沒有辦法在 Firebase Admin(app) 實例的初始化過程中檢查憑據是否有效,因為它似乎捕獲錯誤不是這里的解決方案?
查看完整描述

2 回答

?
慕桂英4014372

TA貢獻1871條經驗 獲得超13個贊

我認為答案在文檔中:

某些用例要求您同時創建多個應用程序。例如,您可能希望從一個 Firebase 項目的實時數據庫中讀取數據,并為另一個項目創建自定義令牌?;蛘吣赡芟M褂貌煌膽{據對兩個應用程序進行身份驗證。Firebase SDK 允許您同時創建多個應用程序,每個應用程序都有自己的配置信息。

資源

我假設檢查憑據的唯一方法是調用一個Auth方法,例如:

client, err := app.Auth(context.Background())


查看完整回答
反對 回復 2022-06-13
?
白衣染霜花

TA貢獻1796條經驗 獲得超10個贊

我最終使用google.golang.org/api/transport強制驗證并快速失敗


// Check if credential is correct

_, err = transport.Creds(ctx, opt)

if err != nil {

    return nil, err

}


查看完整回答
反對 回復 2022-06-13
  • 2 回答
  • 0 關注
  • 189 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號