我有一个由onRequest()
触发的Firebase函数,使用firebase-admin
SDK并使用Express作为中间件。该函数预计不会绑定到Firebase客户端/前端(也就是说,该函数可以通过curl -X POST ...
等调用(
我想保护这个功能,这样只有有权访问Firebase项目的用户才能提出请求。我已经找到了Firebase ID令牌,并了解如何在客户端创建它们。
我的问题是,我没有一个客户来创建它们。
是否有方法使用CLI或其他类似方法为授权用户创建ID令牌
例如,类似的东西
firebase login
firebase use <project-id>
firebase generate-id-token // would return an ID token with standard expiration rules.
Firebase CLI中没有以用户身份登录并打印ID令牌的命令。您可以使用cURL
调用Firebase Auth REST API并获取令牌。
curl --request POST
--url 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=[FIREBASE_API_KEY]'
--header 'Content-Type: application/json'
--data '{
"email": "user@domain.tld",
"password": "12345678",
"returnSecureToken": true
}'
我想保护这个功能,这样只有有权访问Firebase项目的用户才能发出请求。
任何人都可以使用REST API,但必须知道帐户的密码才能登录。