Хранилище
S3. Управлять хранилищем с помощью S3 Browser
S3 Browser — это бесплатный клиент для работы с S3-совместимыми хранилищами на Windows. Скачайте S3 Browser, чтобы начать работу с вашим хранилищем.
Аккаунты
Создать аккаунт
1. В S3 Browser каждое хранилище является отдельным аккаунтом. Если у вас ещё нет хранилища EdgeЦентр, создайте его в личном кабинете, следуя инструкции.
2. При первом запуске S3 Browser откроется окно создания аккаунта для авторизации в ваше хранилище. Если у вас уже есть аккаунт, и вы хотите завести новый, перейдите в Accounts → Add new accounts.
Заполните поля:
- Display name — введите название вашего аккаунта.
- Account type — выберите S3 Compatible Storage.
- REST Endpoint — введите Hostname вашего хранилища, например, s-dt2.cloud.edgecore.ru. Чтобы узнать ваш Hostname, перейдите в Детали вашего хранилища.
- Access Key ID — введите публичный ключ вашего хранилища, который вы получили при его создании.
- Secret Access Key — введите секретный ключ вашего хранилища, который вы получили при его создании.
- (опционально) Encrypt Access Keys with a password — отметьте галочкой и введите пароль, чтобы защитить ваш аккаунт. S3 Browser будет запрашивать данный пароль при каждой попытке входа в аккаунт.
- (опционально) Use secure transfer — отметьте галочкой, чтобы передавать данные по протоколу SSL/TLS.
3. Нажмите Add new account. В окне клиента появится список бакетов и файлов.
Управлять аккаунтами
1. Чтобы отредактировать созданный аккаунт, откройте вкладку Accounts и выберите Manage accounts.
2. В открывшемся окне нажмите правой кнопкой мыши на нужный аккаунт и выберите одно из действий ниже:
- Edit selected account, чтобы отредактировать данные аккаунта.
- Delete selected accounts, чтобы удалить аккаунт.
- Move selected accounts up/down, чтобы передвинуть аккаунт выше или ниже по списку.
- Export selected accounts, чтобы экспортировать данные аккаунта в файл на вашем устройстве.
3. Нажмите Save changes.
В окне Storage Accounts вы можете добавить новый аккаунт, нажав Add в нижней части окна, а также импортировать данные другого хранилища из файла на устройстве, нажав More → Import accounts.
Бакеты
Создать бакет
1. Чтобы создать новый бакет, нажмите New bucket в левой верхней части окна клиента.
2. Введите уникальное название бакета в поле Bucket name.
3. Выберите Default Regionв поле Bucket region.
4. (Опционально) Нажмите show more settings и включите Enable S3 Object Lock, чтобы защитить объекты бакета от случайного изменения или удаления.
Нажмите configure default retention settings, отметьте опцию галочкой. В блоке Retention mode выберите способ хранения данных:
- Governance mode — только главный пользователь аккаунта может изменять настройки хранения, а также изменять и удалять объекты во время установленного периода хранения.
- Compliance mode — никто не может изменять настройки хранения, а также изменять и удалять объекты во время установленного периода хранения.
В блоке Retention period укажите период хранения объектов в днях или годах.
Нажмите OK.
Обратите внимание. Другие расширенные настройки не совместимы с хранилищем EdgeЦентр, но тех же результатов можно добиться, используя политики доступа.
5. Нажмите Create new bucket.
Добавить внешний бакет
Если внешний пользователь предоставил вам доступ к своему бакету, вы можете добавить его в свой аккаунт и взаимодействовать с его содержимым. Такой бакет называется «внешним».
Чтобы отобразить внешний бакет в списке ваших бакетов, нажмите Add external bucket, введите его название и нажмите Add External bucket.
Внешние бакеты имеют фиолетовые иконки.
Переименовать бакет
Бакет невозможно переименовать. Вы можете удалить его и создать новый бакет с необходимым названием.
Удалить бакет
Чтобы удалить бакет, нажмите на него правой кнопкой мыши, выберите Delete Bucket и подтвердите удаление.
Добавить объекты в бакет
В бакете можно создавать папки и загружать папки и файлы из папки на вашем устройстве. Для этого кликните по названию бакета в списке и выберите действие:
- Создать папку — нажмите New Folder, введите название папки и нажмите Create new folder.
- Добавить папку из устройства — нажмите Upload → Upload folders и выберите нужную папку.
- Добавить файл из устройства — нажмите Upload → Upload files и выберите нужные файлы.
Настроить ACL
Настройте доступ к вашему бакету или объекту с помощью ACL. Access Control List — список управления доступом, который определяет, какие операции разрешено или запрещено выполнять субъекту.
Чтобы настроить ACL, нажмите правой кнопкой мыши по бакету или объекту и выберите Edit Permissions (ACL) – откроется раздел Permissions в нижней части клиента. Отметьте галочками желаемые права и нажмите Apply changes.
Вы можете настроить следующие права доступа:
- Full Control — включает полные права на чтение, запись, а также чтение и переопределение прав на бакет или объект.
- Read — позволяет просматривать содержимое бакета или объекта.
- Write — позволяет создавать, перезаписывать и удалять любые файлы в бакете.
- Read Permissions — позволяет просматривать права доступа, установленные на бакет или объект.
- Write Permissions — позволяет переписывать права доступа, установленные на бакет или объект. Равноценно правам Full Control.
Пользователи, для которых можно настроить ACL:
- Owner — создатель и владелец бакета,
- Any AWS Users — любой зарегистрированный S3-пользователь,
- All Users — любой анонимный пользователь,
- User by Email/Id — добавленный вами пользователь.
Важно. Добавление сторонних пользователей доступно только в платной версии S3 Browser. Используйте политику доступа, чтобы добиться того же результата бесплатно. Пример разрешающей политики.
В нашем S3-хранилище пользователь = отдельное хранилище, которое вы создаёте в собственном или стороннем аккаунте. Чтобы настроить ACL, найдите название хранилища в разделе Детали и добавьте его в качестве пользователя.
В разделе Permissions нажмите More → Add user by Email/ID. Он появится в нижней строке раздела Permissions.
Другие возможности раздела Permissions:
- Нажмите Make Public, чтобы предоставить всем пользователям права Read (чтение) на все объекты бакета. Чтобы дать права на чтение только для одного объекта, кликните на него в списке всех объектов и нажмите Make Public.
- Нажмите Make Private, чтобы отозвать права у всех пользователей кроме владельца бакета и сделать бакет приватным. Чтобы сделать приватным только один объект, кликните на него в списке всех объектов и нажмите Make Private.
- Нажмите More → Remove user, чтобы удалить пользователя из списка ACL.
- Заполните чекбокс Apply for all subfolders and files, чтобы распространить указанные права на все папки и объекты в бакете.
- Нажмите Reload, чтобы отменить все несохранённые изменения.
Настроить политики доступа (policy)
Используйте политики доступа, чтобы создавать правила для регулирования не только определённых действий, но и доступов к бакетам и их объектам для отдельных пользователей, групп и источников.
Для создания политик доступа, используется формат JSON. Максимальный размер запроса — 20 КБ. Все необходимые действия, условия, типы ресурсов описаны в официальной документации.
Для вашего удобства мы собрали примеры часто используемых политик доступа в этой статье.
Пример:
Вы хотите, чтобы другой пользователь мог листить ваш бакет и скачивать хранящиеся в нём файлы. Для этого вам необходимо добавить политику доступа для этого бакета. Для другого пользователя, который также использует S3 Browser, такой бакет будет являться внешним (external).
Так как в S3-хранилище EdgeЦентр пользователь — это отдельное хранилище, созданное в вашем или стороннем аккаунте, именем пользователя будет считаться название хранилища. Название можно найти в разделе Детали.
1. Кликните правой кнопкой мыши по названию бакета и выберите Edit Bucket Policy.
2. В появившемся окне вставьте следующую политику доступа:
{
"Statement":[
{
"Effect":"Allow",
"Principal": {"AWS":["arn:aws:iam:::user/1234-storage"]},
"Action":["s3:GetObject","s3:ListBucket"],
"Resource":["arn:aws:s3:::my_bucket/*", "arn:aws:s3:::my_bucket"]
}
]
}
Где:
- 1234-storage — название пользователя-хранилища, которому хотите дать доступ к бакету.
- my_bucket — название бакета, к которому нужно разрешить доступ.
3. Нажмите Apply.
Чтобы удалить политику, нажмите remove policy.
Настроить CORS
Используйте технологию CORS (Cross-Origin Resource Sharing), чтобы разрешить браузеру пользователя доступ к ресурсам сервера, отличном от того, с которого поступает запрос. В нашем случае сервер — ваш бакет.
В конфигурационном файле CORS указываются правила для источников, которым разрешён доступ к вашему бакету, допустимые HTTP-методы и другая информация. Подробнее о CORS и примерах CORS-файлов в документации AWS.
1. Чтобы просмотреть и изменить текущие настройки CORS, нажмите правой кнопкой на название бакета и выберите CORS Configuration.
2. Исправьте конфигурационный файл, вставив необходимые условия, и нажмите Apply.
Нажмите remove policy, чтобы очистить данные.
Настроить жизненный цикл объектов (lifecycle)
Вы можете изменять настройки Lifecycle (жизненного цикла) для объектов в бакете. Жизненный цикл определяет, спустя какое время объекты в бакете будут считаться устаревшими, когда они могут быть удалены.
1. Чтобы настроить жизненный цикл, нажмите правой кнопкой на название бакета, выберите Lifecycle Configuration и нажмите Add.
2. В открывшемся окне в разделе Filter, в поле Prefix выберите бакет или или папку, на объекты которых будет распространяться настройка Lifecycle.
3. Для разделов Actions for current versions (текущие версии объектов) и/или Actions for noncurrent versions (нетекущие версии объектов) в блоке Expiration отметьте галочкой Permanently delete files (удалить файлы навсегда) и/или Permanently delete noncurrent versions (удалить нетекущие версии навсегда) соответственно. Так вы разрешаете удаление устаревших версий объектов.
4. Выберите время удаления объектов:
- After specific number of days after creation — через указанное количество дней после создания объекта,
- On a particular date (UTC Midnight) — в указанный день в полночь по UTC.
5. Введите количество дней или дату.
6. Нажмите Apply new rule, затем Save.
Чтобы изменить настройки жизненного цикла, кликните на строку, которую желаете изменить и нажмите Edit.
Чтобы удалить настройки жизненного цикла, кликните на строку, которую желаете удалить и нажмите Delete.
Папки и файлы
Управлять папками и файлами
Для управления вашими папками и файлами, нажмите на их название правой кнопкой мыши и выберите необходимое действие:
- Download, чтобы скачать файл или содержимое папки на ваше устройство.
- Cut, чтобы вырезать файл или папку и вставить их в другую папку или бакет.
- Copy to или Move to, чтобы скопировать (Copy) или переместить (Move) файл или папку в другую папку или бакет. При переносе вы можете создать новую папку, нажав на Create new folder.
- Rename, чтобы переименовать файл или папку.
- Delete, чтобы удалить файл или папку.
Настроить ACL
Чтобы настроить доступ к папке или файлу с помощью ACL, обратитесь к инструкции выше.