Содержание
1. Создайте пользователя с доступом на чтение и запись в хранилище, которое также необходимо создать
Создайте на площадке пользователя и бакет.
Дайте права пользователю на бакет.
2. Настройка политики CORS для хранилища.
2.1. Пример ниже для настройки через веб VK Cloud
Основные
Где,
- AllowedOrigins — https://kh-ds.uatr7.ru — это url Вашего Документ сервера или Reverse proxy, через который он доступен
- AllowedMethods — GET, HEAD — методы, которые разрешены
Остальное не редактируйте на этой вкладке.
Заголовки:
На этой вкладке отредактируйте только
- AllowedHeaders, где вводим значение *
2.2. Пример для настройки через AWS CLI
2.2.1. Установите aws cli любым доступным Вам способом
Можете обратится к официальной документации.
2.2.2. Настройке доступ к провайдеру
aws configure
Будут запрошены:
aws_access_key_id aws_secret_access_key region
2.2.3. Создайте файл cors.json
Добавьте в него следующее содержимое:
{ "CORSRules":[ { "AllowedHeaders": ["*"], "AllowedMethods": ["GET","HEAD"], "AllowedOrigins": ["https://documentserver_adress"], "ExposeHeaders": [] } ] }
Где,
- documentserver_address — адрес вашего сервера документов.
2.2.4. Выполните команду для настройки CORS через s3api
Пример для VK Cloud площадки:
aws s3api put-bucket-cors --bucket documentserver --endpoint-url=https://hb.ru-msk.vkcs.cloud --cors-configuration file://cors.json
2.2.5. Проверьте применения политик
aws s3api get-bucket-cors --bucket documentserver --endpoint-url=https://hb.ru-msk.vkcs.cloud
Вывод:
3. Откройте на редактирование файл local.json
/etc/r7-office/documentserver/local.json
3.1. Отредактируйте блок «storage»
Пример настройки для объектного хранилища VK в Москве
... "storage": { "name": "storage-s3", "fs": { "folderPath": "", "urlExpires": 900, "secretString": "***" }, "region": "ru-msk", "endpoint": "hb.ru-msk.vkcs.cloud", "bucketName": "documentserver", "storageFolderName": "data_cl", "cacheFolderName": "cache_cl", "urlExpires": 604800, "accessKeyId": "****", "secretAccessKey": "***", "sslEnabled": true, "s3ForcePathStyle": true, "externalHost": "" } }
Где,
- secretString — секрет, который используется для подписи URL, его также нужно изменить в конфигурационном файле /etc/nginx/conf.d/ds.conf в параметре $secure_link_secret;
- name — обязательно указать storage-s3;
- region — регион, в котором находится ваш bucket;
- bucketName — уникальное имя хранилища S3;
- storageFolderName — имя каталога хранилища документов S3, в которой хранятся все файлы;
- cacheFolderName — имя папки кэша для работы в многопользовательском режиме;
- accessKeyId — идентификатор ключа для доступа к хранилищу документов S3;
- secretAccessKey — секретный ключ для доступа к хранилищу документов S3;
- sslEnabled — включен или нет SSL для хранилища документов S3;
- s3ForcePathStyle — всегда ли при запросах к хранилищу документов S3 используется адресация в стиле path;
- externalHost — внешний хост, который используется вместо хоста, указанного в запросе.
3.2. Перезапустите сервисы DS
systemctl restart ds-*
3.3. Проверьте редактирование документов
В бакете должны создаваться каталоги с временными файлами, при редактировании и сохранении документа
Была ли полезна статья?