Создание и настройка бакета AWS S3

Cloud Contact поддерживает автоматический экспорт аудио и записей экрана в Amazon Web Services (AWS) S3 для хранения и воспроизведения. Хранение записей на S3 может обеспечить экономию средств вашей организации, при этом позволяя вам прослушивать или просматривать записи с помощью записей взаимодействия на платформе Cloud Contact.

В этой статье описывается, как создать корзину S3 и настроить ее для интеграции с Cloud Contact для хранения записей разговоров и/или записей экрана.

Предварительные требования

  • У вас должна быть существующая учетная запись Amazon AWS.
  • Вы должны быть пользователем IAM с доступом администратора к учетной записи.

Процедура настройки

Шаг 1. Создайте бакет S3 в США

Если у вас уже есть сегмент S3, вы можете пропустить создание нового сегмента и просто отредактировать свойства сегмента, чтобы они соответствовали следующему описанию.

  1. Войдите в свою учетную запись AWS, а затем перейдите в Консоль управления AWS.
  2. Найдите в сервисах Хранилище > S3, чтобы перейти на панель управления Amazon S3 Buckets. Нажмите Создать сегмент.
    Amazon S3 > Панель инструментов корзин
  3. Назовите сегмент и укажите регион.
    Создать сегмент > Имя и регион
  4. Настройте параметры сегмента.
    Создать сегмент > Настроить параметры
  5. Включите возможность блокировать публичный доступ.
    Создать сегмент > Установить разрешения
  6. Просмотрите и нажмите Создать сегмент.
    Создать сегмент > Обзор
  7. Нажмите на имя сегмента и просмотрите его сведения. У вас есть возможность добавлять папки в корзину, чтобы упорядочить ее содержимое при последующем экспорте в нее записей. Это не обязательно.
    Новые сведения о сегменте

Шаг 2. Получите ARN пользователя

Найдите в сервисах Amazon IAM, перейдите в Панель IAM > Управление доступом > Пользователи и скопируйте ARN пользователя администратора. Имя ресурса пользователя Amazon (ARN) — это идентификатор пользователя, и оно понадобится вам для настройки политики корзины S3 позже.

IAM > Пользователи > Сводка пользователя > ARN пользователя

Шаг 3. Задайте разрешения в политике бакета

  1. Вернитесь в раздел Amazon S3 и просмотрите сведения о своем сегменте S3. Откройте вкладку Разрешения сегмента, а затем нажмите Политика сегмента, чтобы открыть редактор политики сегмента.

    Политика сегмента использует язык политики доступа на основе JSON для управления расширенными разрешениями для ваших ресурсов Amazon S3.

    Нажмите «Разрешения», а затем «Политика сегмента»
  2. Добавьте JSON политики, либо щелкнув ссылку Генератор политики в нижней части редактора и заполнив форму, либо скопировав и вставив следующий пример JSON политики в редактор политики и отредактировав значения для:
    1. <user_arn> – имя ресурса Amazon (ARN)/идентификатор пользователя-администратора, скопированное из раздела «Пользователи» панели управления IAM.
    2. <bucket_arn> – ARN/идентификатор вашего сегмента. ARN сегмента можно найти либо в Панель управления Amazon S3 > свойства сегмента S3 (см. показанный пример), либо в верхней части редактора политики сегмента (см. показанный пример).
      Панель управления Amazon S3 > свойства корзины S3 > ARN корзины
      верхняя часть редактора политики сегмента > ARN сегмента

Пример политики (скопируйте это):

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ListObjectsInBucket",
            "Effect": "Allow",
            "Principal": {
                "AWS": "<user_arn>"
            },
            "Action": "s3:*",
            "Resource": "<bucket_arn>"
        },
        {
            "Sid": "AllObjectActions",
            "Effect": "Allow",
            "Principal": {
                "AWS": "<user_arn>"
            },
            "Action": "s3:*",
            "Resource": "<bucket_arn>"
        }
    ]
}

Например:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ListObjectsInBucket",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::532998658301:user/christy.borden"
            },
            "Action": "s3:*",
            "Resource": "arn:aws:s3:::cloud-contact-example-bucket"
        },
        {
            "Sid": "AllObjectActions",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::532998658301:user/christy.borden"
            },
            "Action": "s3:*",
            "Resource": "arn:aws:s3:::cloud-contact-example-bucket"
        }
    ]
}

Политика минимального сегмента, на случай, если вы захотите ужесточить ситуацию:

{
	"Version": "2012-10-17",
	"Statement": [
		{
			"Sid": "Statement1",
			"Effect": "Allow",
			"Principal": {
				"AWS": "arn:aws:iam::[act_id]:user/[user_name]"
			},
			"Action": [
				"s3:ListBucket",
				"s3:PutObject",
				"s3:GetObject",
				"s3:DeleteObject"
			],
			"Resource": [
				"arn:aws:s3:::[bucket_name]/*",
				"arn:aws:s3:::[bucket_name"
			]
		}
	]
}

В частности, вот список привилегий корзины, которые не используются (и при необходимости могут быть запрещены):

  • "s3:GetBucketNotification",
  • "s3:GetBucketAcl",
  • "s3:GetBucketLocation",
  • "s3:GetBucketLogging",
  • "s3:GetBucketPolicy",
  • "s3:GetBucketOwnershipControls",
  • "s3:PutBucketNotification",
  • "s3:ListBucketMultipartUploads",
  • "s3:ListBucketVersions",
  • "s3:ListMultipartUploadParts",
  • "s3:GetAccelerateConfiguration",
  • "s3:GetBucketCORS",
  • "s3:GetBucketVersioning",
  • "s3:GetObjectAcl",
  • "s3:GetObjectAttributes",
  • "s3:GetObjectVersion",
  • "s3:GetAnalyticsConfiguration",
  • "s3:GetBucketObjectLockConfiguration",
  • "s3:GetBucketPolicyStatus",
  • "s3:GetBucketPublicAccessBlock",
  • "s3:GetBucketWebsite",
  • "s3:GetEncryptionConfiguration",
  • "s3:GetInventoryConfiguration",
  • "s3:GetMetricsConfiguration",
  • "s3:GetObjectVersionAcl",
  • "s3:GetObjectVersionAttributes",
  • "s3:GetObjectVersionForReplication",
  • "s3:GetReplicationConfiguration",
  • "s3:AbortMultipartUpload",
  • "s3:DeleteObjectVersion",
  • "s3:InitiateReplication",
  • "s3:PutBucketObjectLockConfiguration",
  • "s3:PutBucketVersioning",
  • "s3:PutEncryptionConfiguration",
  • "s3:PutObjectRetention",
  • "s3:ReplicateObject",
  • "s3:PutObjectVersionAcl",
  • "s3:PutObjectAcl"

3. После вставки JSON нажмите Сохранить. Если какая-либо часть политики неверна, вы не сможете сохранить и увидите сообщение об ошибке, указывающее, что политика недействительна. Если все пройдет хорошо, политика будет сохранена и на экране не будет никаких изменений.

Завершенная политика сегмента в формате JSON

Настройка сегмента S3 завершена.


Следующие шаги