我有一个移动应用程序,该应用程序使用Google签名并尝试验证后端的令牌(Java Spring)。 在许多文章之后,我为此设置了一些代码。
这是用于Firebase连接,因为我正在使用 Admin SDK
进行验证--tls --cafile <orderer-cert>
package com.nostratech.nostrafood.config;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.firebase.FirebaseApp;
import com.google.firebase.FirebaseOptions;
import com.google.firebase.database.FirebaseDatabase;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Configuration;
import java.io.FileInputStream;
import java.io.IOException;
@Slf4j
@Configuration
public class FirebaseServiceCredential {
public void firebaseConnect() throws IOException {
try {
FileInputStream serviceAccount = new FileInputStream("resources/charity-firebase-adminsdk-ymwjh-61467z75ba.json");
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(GoogleCredentials.fromStream(serviceAccount))
.setDatabaseUrl("https://charity.firebaseio.com/")
.build();
FirebaseApp.initializeApp(options);
FirebaseDatabase.getInstance(FirebaseApp.getInstance()).setPersistenceEnabled(true);
} catch (Exception e) {
log.debug("Trying to login to firebase failed. Reason: " + e.getMessage());
}
}
}
接下来我该怎么做才能验证令牌?我读过很多文章,但仍然不知道该怎么办。
答案 0 :(得分:0)
如果verifyIdToken()
返回而没有引发异常,则令牌被验证。无需其他任何操作即可验证ID令牌。返回值(FirebaseToken
)使您可以访问与已认证用户关联的UID和JWT声明。