Я создаю небольшой Java-клиент с угловым интерфейсом для распространения среди клиентов.
На данный момент у меня есть экран входа в систему через Angular, который возвращает действующий токен Firebase.Я не уверен, как я могу использовать этот токен для аутентификации пользователя в Java-части приложения, чтобы клиент Java мог выполнять такие действия, как загрузка файлов.
С помощью Admin SDK я могу сделать что-то вроде:
public FirebaseAuth firebaseAuth() throws IOException {
FileInputStream serviceAccount = new FileInputStream(new ClassPathResource(SERVICE_ACCOUNT_KEY).getFile());
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(GoogleCredentials.fromStream(serviceAccount))
.setDatabaseUrl(String.format("https://%s.firebaseio.com/", DATABASE_NAME))
.build();
FirebaseApp.initializeApp(options);
return FirebaseAuth.getInstance();
}
Затем я могу перейти к стандартному потоку проверки токена по Firebase и получения сведений о пользователе.
Поскольку я распространяю и внешний интерфейс Angular, и клиент Java для конечных пользователей, я не могу использовать Admin SDK.
Как мне решить эту проблему?Есть ли какой-то другой тип потока, который я должен изучить?или я могу как-то использовать токен Firebase?