У меня есть служба в Google Cloud Compute, которая является частью мультитенантного приложения. Мы используем хранилище для обновления sh учетных данных каждые 4-5 часов через временную учетную запись в этом месте: /dev/shm/gcp_credentials.json
.
При создании объекта хранения GCS я хочу выяснить, что является лучшим способ обновления этих учетных данных.
Я заметил, что есть метод для создания объекта хранилища, который позволяет мне передавать объект учетных данных. Я использую google-auth-credentials-library:0.16.2
У объекта учетных данных есть метод credentials.refresh()
согласно справке do c: https://javadoc.io/doc/com.google.auth/google-auth-library-credentials/0.16.2/com/google/auth/Credentials.html, а для объекта хранения я использую google-cloud-storage:1.83.0
Storage refreshStorage() {
return StorageOptions.newBuilder().setCredentials(credentials)
.setProjectId("project_id").build().getService();
}
Что я хочу понять, так это то, что, если я позвоню credentials.refresh()
, это будет гарантировать, что когда я вызываю storage.create(blobInfo, records);
, он повторно аутентифицируется, или мне придется вызывать вышеупомянутый метод, чтобы передать новое хранилище? обновлен объект с учетными данными?