gpt4 book ai didi

firebase - 如何创建 Firebase 身份验证声明?

转载 作者:行者123 更新时间:2023-12-04 01:40:10 27 4
gpt4 key购买 nike

我正在开发一个需要通过服务器应用程序进行身份验证的 Android 应用程序。服务器应用程序是一个使用 Spring Security 的 Spring Boot 应用程序。服务器应用程序使用自定义身份验证提供程序为用户设置授予权限。

这是我用来检索 idToken 的代码:

    FirebaseToken firebaseToken = null;

try {
FirebaseApp app = FirebaseUtil.getFirebaseApp();
firebaseToken = FirebaseAuth.getInstance(app).verifyIdTokenAsync(authenticationToken.getIdToken()).get();
} catch ( InterruptedException | ExecutionException | CancellationException e ) {
throw new AuthenticationServiceException(e.getMessage());
}

return firebaseToken;

一个我有 Firebase token ,我可以像这样检索声明:
Map<String, Object> claims = token.getClaims();

然后我可以迭代声明并创建权限,如下所示:
List<GrantedAuthority> authorities = Lists.newArrayList(); 
authorities.add(new SimpleGrantedAuthority("some_role"));

我不知道如何使用 Firebase 控制台创建声明。这可能吗?我怀疑我需要使用 Firebase 数据库,但在 firebase 文档中找不到我正在寻找的内容。

最佳答案

Firebase 身份验证的自定义声明目前只能通过 Firebase Admin SDK 创建。来自 documentation on creating custom claims :

// Set admin privilege on the user corresponding to uid.
admin.auth().setCustomUserClaims(uid, {admin: true}).then(() => {
// The new custom claims will propagate to the user's ID token the
// next time a new one is issued.
});


允许从控制台创建声明也不错,所以我建议您 file a feature request .

关于firebase - 如何创建 Firebase 身份验证声明?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47495678/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com