Я установил правила для нашего хранилища Firebase, чтобы разрешить только аутентифицированным пользователям взаимодействовать с ним.
rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
match /something/{allPaths=**} {
allow read, write: if request.auth.uid != null;
}
}
}
Однако, когда я просматриваю информацию об активах, сохраненных в хранилище на консоли Firebase, я найдите для каждого из них ссылку, чтобы открыть их публично (когда я открываю детали файла), например:
https://firebasestorage.googleapis.com/v0/b/${my-project}.appspot.com/o/${my-file}?alt=media&token=49385ae5-4df6-44ef-a313-8d1f07b59111
Я предполагаю, что эта ссылка является downloadURL
и c доступ предоставляется через token
.
Поэтому я понимаю, что содержимое хранилища на самом деле не является полностью приватным, потому что даже если я устанавливаю строгие правила и даже если я лично и мои приложения не генерируют загрузку URL, Firebase по-прежнему автоматически генерирует такой URL для каждого файла, и поэтому, даже если токен трудно найти, контент в любом случае доступен в открытом доступе онлайн.
Правильно ли мое понимание?
Или ссылка, которую я нашел в консоли Firebase, - это не URL-адрес загрузки, а временная ссылка, соответственно, токен, предоставленный консолью как срок действия. ion life?
Или можно настроить ведро хранения Firebase так, чтобы оно никогда не генерировало ссылки для скачивания?