Webhooks
С Webhooks для S3, используя API, можно настраивать отправку таких HTTP и HTTPS запросов по событиям для бакета, как: обработка и конвертирование файлов после загрузки; интегрирование с разными внешними системами; логирование для объектного хранилища. События (Event), для которых можно настроить конфигурацию Webhooks: s3:ObjectCreated:* — PutObject, PutObjectCopy, CompleteMultipartUpload. s3:ObjectCreated:Put — PutObject. s3:ObjectCreated:Copy — PutObjectCopy. s3:ObjectCreated:CompleteMultipartUpload — […]
Prefix access keys
Описание Если необходимо создать пользователей, которым доступ будет ограничен по определенному пути, следует использовать префиксные ключи (prefix access keys). Пользователи будут привязаны только к бакетам относительно которых работает их префикс. Используя префиксные ключи, нужно знать об ограничениях: пользователь может быть привязан только к 1 бакету (при создании); пользователь не будет иметь доступ к другим бакетам […]
Загрузка конфигурации CORS
Чтобы загрузить конфигурацию CORS, нужно сформировать XML-документ. Список методов для конфигураций CORS бакета: Get Bucket CORS — получить список конфигураций CORS для бакета. Set Bucket CORS — установить конфигурацию CORS. Delete Bucket CORS — удалить конфигурацию CORS. Общий вид XML конфигурации CORS 1<CORSConfiguration> 2 <CORSRule> 3 <AllowedOrigin>URL</AllowedOrigin> 4 […]
Lifecycle
Список методов для работы с жизненным циклом объектов: Get Buket Lifecycle Configuration — просмотр конфигурации жизненного цикла в бакете. Configure Buket Lifecycle — настройка правил конфигурации жизненного цикла. Delete Buket Lifecycle — удаление конфигурации жизненного цикла. Общий вид конфигурации: 1<LifecycleConfiguration> 2 <Rule> 3 <ID>Описание правила</ID> 4 <Status>{Enabled|Disabled}</Status> 5 […]
Multipart
Благодаря составной или многокомпонентной загрузке объекты в Объектном хранилище Linx S3 можно сохранять по частям. Стоит использовать составную загрузку для объектов от 100 МБ. Шаги многокомпонентной загрузки: Initiate Multipart Upload — инициализация загрузки. Upload Part — загрузка объекта по частям. Complete Multipart Upload — завершение загрузки путем объединения ранее загруженных частей. Abort Multipart Upload — […]
ACL
С помощью ACL (Access Control List) можно контролировать то, какие именно операции будут разрешены определенным пользователям. ACL может стоять как и на уровне всего бакета, так и на уровне конкретного объекта. Установить и прочесть ACL можно через приведенные методы ниже. Список операций с ACL: Get Bucket ACL — Получить ACL для бакета Put Bucket ACL […]
Object
Список операцией, которые можно выполнять с объектами: Get — скачать объект из бакета Upload — загрузить объект в бакет Copy — скопировать объект из бакета HeadObject — посмотреть информацию об объекте Delete — удалить объект из бакета DeleteMultipleObjects — удалить группу объектов по списку У операций с бакетами существуют типовые сообщения об ошибках, заголовки запросов […]
Bucket
У операций с бакетами есть типовые и специальные сообщения об ошибках, заголовки запросов и заголовки ответов, если они специальные, то это будет написано в описании операции. Список операций с бакетами: Create — создать бакет. ListBuckets — получить список бакетов. HeadBucket — проверка наличия бакета и доступа к нему. ListObjects — получить список объектов бакета. DeleteBucket […]
Общая информация
LinxCloud предоставляет RESTful XML API для программного управления хранимыми данными с помощью стандартных HTTP-запросов. API-интерфейс совместим с API-интерфейсом Amazon AWS S3, что позволяет взаимодействовать с сервисом, используя уже известные инструменты. Протокол для сервиса AWS S3 (Simple Storage Service), созданный Amazon Web Services, является основным протоколом доступа к объектному хранилищу. S3 API — это команд, распознаваемые […]
Операции с объектами
После предварительных настроек можно начать работу с объектами S3. Загрузка объекта Объект можно загрузить в бакет при помощи команды: import boto3 session = boto3.session.Session() s3_client = session.client( service_name=’s3′, endpoint_url=’https://hb.bizmrg.com’ ) test_bucket_name = ‘boto3-test-bucket-name’ #Загрузка данных из строки s3_client.put_object(Body=’TEST_TEXT_TEST_TEXT’, Bucket=test_bucket_name, Key=’test_file.txt’) #Загрузка локального файла s3_client.upload_file(‘some_test_file_from_local.txt’, test_bucket_name, ‘copy_some_test_file.txt’) #Загрузка локального файла в […]
Операции с бакетами
После предварительных настроек можно начать работу с бакетами S3. Создание бакета Бакет создается командой: import boto3 session = boto3.session.Session() s3_client = session.client( service_name=’s3′, endpoint_url=’https://hb.bizmrg.com’ ) test_bucket_name = ‘boto3-test-bucket-name’ # Создаем бакет s3_client.create_bucket(Bucket=test_bucket_name) Подробнее о команде CREATE_BICKET можно узнать из официальной документации к библиотеке boto3. Получение списка бакетов Получить список […]
Предварительная настройка
Рекомендуем установить библиотеку boto3, она упростит интеграцию приложений, библиотек и скриптов Python c S3-совместимыми сервисами. При создании сессии следует указать endpoint url LinxCloud: https://hb.bizmrg.com — для класса хранения Hotbox. https://ib.bizmrg.com — для класса хранения Icebox. Учетные данные для доступа к S3: secret key и access key можно хранить в файле или указать непосредственно в скрипте в параметрах […]
REST API
Python S3
S3 SDK
SDK — это инструменты разработки для создания приложений для сервиса Объектное хранилище платформы LinxCloud S3: Инструменты для PowerShell SDK для Java SDK для .NET SDK для JavaScript SDK для Ruby SDK для Python (Boto) SDK для PHP SDK для Go Mobile SDK для iOS Mobile SDK для Android Предварительные требования Необходимо создать учетные данные […]
Файловые менеджеры
Файловые менеджеры помогают иерархически структурировать объекты в бакете. Перед началом работы В начале нужно создать авторизованный аккаунт, если он еще не создан, и проверить доступность данных об идентификаторе ключа и секретном ключе. Чтобы создать аккаунт нужно зайти в меню «Аккаунты» сервиса Объектное хранилище и нажать на кнопку «Добавить аккаунт». При создании аккаунта всплывет окно […]
S3 CLI
S3 CLI или интерфейс командной строки S3 – это единый инструмент для управления сервисами S3. С его помощью можно контролировать большое количество сервисов LinxCloud S3 из командной строки и автоматизировать их при помощи скриптов. С помощью простой настройки интерфейса командной строки S3 можно запускать команды из командной строки в программе терминала: Оболочки Linux — общие […]
Жизненный цикл
Описание С помощью конфигурации жизненного цикла можно настроить автоматическую очистку объектов в необходимое время и в общем описывать правила для управления жизненным циклом объектов в бакете. Невозможно задать конфигурацию жизненных циклов для группы бакетов, каталога или проекта, можно только для каждого бакета по отдельности. Настроить правила жизненного цикла можно через панель LinxCloud в разделе «Жизненный […]
Подписанные URL
Заранее подписанный URL-адрес дает доступ к объекту, указанному в URL-адресе, но только, если пользователь, который создал предварительно подписанный URL-адрес имеет доступ к этому объекту. Заранее подписанные URL-адреса чаще всего используются, когда пользователю нужна возможность загрузки определенного объекта в бакет, но не нужны учетные данные или разрешения безопасности LinxCloud. С помощью заранее подписанных URL любой пользователь […]
Составная загрузка
Платформа LinxCloud имеет инструменты для работы с объемными файлами, для которых не подходит единоразовая загрузка в бакет через графический интерфейс или CLI. Один объект можно загружать по частям с помощью многокомпонентной (составной) загрузки, где каждая часть будет представлять собой непрерывную часть данных объекта. Данные части можно загружать по отдельности и в любом порядке. Если передача […]
Вебхуки
Общая информация Благодаря вебхукам на платформе LinxCloud пользователь будет всегда оповещен об определенных событиях в бакете. Для их подключения нужно добавить конфигурацию уведомлений, которая содержит события, по которым необходимо отсылать запросы на клиентский сервис, и сам адрес клиентского сервиса. Эта конфигурация сохраняется в меню Webhooks, которое привязано к бакету. Примечание Уведомления о событиях LinxCloud S3 […]
Хостинг статических сайтов
На сервисе «Объектное хранилище» можно использовать ресурсы для хостинга статических сайтов, построенных на технологиях HTML, CSS и JavaScript. Также хранилище может быть использовано для перенаправления запросов. Внимание Бакет, который используется для хостинга, нельзя использовать для размещения скриптов, требующих запуска на стороне веб-сервера. Привязка домена Чтобы предоставить доступ к объектам бакета по ссылкам на уникальный […]
Классы хранения
Перечень классов Классы бакета отличаются как назначением, так и платой за размещаемые в них объекты: Hotbox — для хранения и быстрой раздачи большого количества файлов для сайтов с многопользовательским контентом, онлайн-СМИ, медиасервисов и мобильных приложений. В API называется STANDARD. Icebox — для облачноого хранения нечасто используемых данных: научных, статистических данных, бэкапов, логов, рабочих архивов и медиаконтента. В API называется STANDARD_IA Backup […]
Общая информация о бакетах
Бакеты – сущность, помогающая организовать хранение объектов. В проекте может быть один или несколько бакетов. У каждого бакета, которых в проекте может быть один или несколько, можно настраивать доступ к операциям и политики управления объектами: указывать, какие проекты могут создавать и удалять объекты в бакете, нстраивать жизненный цикл объекток, а также отображать их список. […]
Что такое CORS
Общая информация CORS (Cross-Origin Resource Sharing) — механизм предоставления общего доступа к ресурсам между разными источниками, с помощью которого можно определить способ взаимодействия клиентских веб-приложений, загружаемых в один домен, с ресурсами другого домена. Это технология с применением дополнительных HTTP-заголовков, чтобы предоставить агенту пользователя возможность получать разрешения на доступ к необходимым ресурсам с сервера на источнике […]
Список управления доступом
Основная информация С помощью ACL (Access Control List) можно контролировать уровень доступа пользователей как для всего бакета, так и для конктретного объекта. Автоматически только у владелеца бакета/объекта есть доступ к операциям ним, соттветсвенно у других доступ закрыт. Существует несколько способов, чтобы установить ACL и прочесть его. ACL задается в XML формате, где в поле Owner […]
Аккаунты
Описание Если имеется зарегистрированная и активная учетная записи и проект LinxCloud, то по умолчанию есть беспрепятственный доступ к ресурсам сервиса «Объектное хранилище» при использовании Панели LinxCloud. Но, чтобы получить доступ к ресурсам через S3 CLI, S3 API или любое другое программное обеспечение, нужно создать дополнительный аккаунт в сервисе и использовать ключ учетной записи для доступа. […]
Создание бакета S3
После создания и активации аккаунта на платформе LinxCloud предоставляется полный доступ к сервису Объектное хранилище S3. Перед загрузкой объекта в хранилище необходимо создать бакет, в котором он будет размещен, это можно сделать как в Панели LinxCloud, так и используя S3 CLI. Плата не взимается за создание бакета, а только непосредственно за хранение объектов в бакете […]
Добавление объектов в бакет
В бакет S3 можно сохранять неограниченное количество объектов, состоящие из данных файла и метаданных. Это могут быть файлы любого типа (изображения, резервные копии, данные, фильмы и т.д.), однако размер обычного файла, который можно загрузить в бакет, не должен превышать 32 ГБ. Для файлов большего размера следует использовать метод мультипартовой загрузки и хранения. Для комфортной загрузки […]
Доступ к объекту бакета
Информация об объектах Информацию об объекте можно найти в разделе «Бакеты» сервиса «Объектное хранилище». В окне «Папки и файлы» перечислены все объекты выбранного бакета и операции, которые возможны с ними. Доступ к объектам через LinxCloud возможен двумя способами: Скачивание Доступ по публичной ссылке Скачивание Чтобы скачать объекты необходимо отметить нужные объекты и нажать «Скачать»: […]
Разработка
Инструменты
Объекты
Бакеты в объектном хранилище Linx Cloud
Управление доступом в Linx Cloud
Быстрый старт работы с объектным хранилищем
О сервисе S3
Описание Защищенное объектное хранилище S3 предназначено для хранения и передачи любого объема данных в удобное время из необходимого места в Интернете. Для сохранения файла в S3 его нужно загрузить в бакет. Если загружается файл как объект, то возможно выбрать разрешения для объекта и любых метаданных. Объект — это файл и любые дополнительные метаданные, описывающие файл. […]