Ошибка Access Denied при монтировании Amazon S3 — NetDrive
Ошибка Access Denied на S3-диске, подключённом в NetDrive? Разбираем три частые причины: неверные учётные данные, нехватку прав IAM и конфликты политики бакета.
Вы монтируете бакет S3 в NetDrive, буква диска появляется в проводнике Windows, а затем любая операция с файлами возвращает «Access Denied». Диск отображается, но недоступен. Это происходит, когда учётным данным IAM, которые использует NetDrive, не хватает нужных действий S3 — или когда политика IAM корректна, но её переопределяет политика бакета.

Монтируйте бакеты S3 как локальный диск
NetDrive показывает Google Drive, OneDrive, S3, SFTP, WebDAV и другие хранилища как обычные диски в Windows и macOS — без синхронизации и полной загрузки файлов.
- Поддержка Amazon S3 и S3-совместимых хранилищ (Wasabi, MinIO и других)
- Файловый браузер позволяет проверить доступ к бакету перед монтированием
- Автоматическое определение региона S3 начиная с NetDrive 3.19.7
Бесплатный пробный период. Доступны бессрочная лицензия и подписка.
Почему на смонтированном диске S3 появляется Access Denied
Доступ к Amazon S3 регулируется двумя независимыми уровнями: политикой IAM, привязанной к пользователю или роли, чьи ключи доступа вы ввели, и политикой бакета, привязанной к самому бакету. Любой из уровней может отклонить операцию независимо от другого.
Для нормального монтирования и работы с бакетом NetDrive требуются как минимум следующие действия S3:
s3:ListBucket— для получения списка объектов и построения представления папокs3:GetObject— для чтения содержимого файла при его открытииs3:PutObject— для записи файлов обратно в бакет (только для монтирования с записью)s3:DeleteObject— для удаления файлов со смонтированного диска (только для монтирования с записью)
Отсутствие нужного действия вызывает «Access Denied» именно на этой операции. Вы можете просматривать папку, но получать отказ при открытии файла, либо открывать файлы, но получать отказ при сохранении — оба случая говорят о частичном предоставлении прав IAM, а не о полном сбое учётных данных.

Шаг 1: учётные данные, введённые в NetDrive
Начните с самих учётных данных. Одна переставленная местами буква в ключе доступа или устаревший секретный ключ дают те же симптомы «Access Denied», что и неверно настроенная политика IAM.
- Откройте NetDrive → нажмите на значок шестерёнки на вашем диске S3, чтобы открыть его настройки.
- Сравните Access Key ID посимвольно со значением, показанным в консоли AWS в разделе IAM → Users → [имя пользователя] → Security credentials. Копируйте и вставляйте значение, а не вводите его заново.
- Введите заново Secret Access Key. AWS никогда не показывает это значение после первоначального создания, поэтому при малейшем сомнении в его корректности создайте новую пару ключей в IAM и сразу обновите значения в NetDrive.
- Проверьте поле Region. Несовпадение региона — например, указание
us-east-1, когда ваш бакет находится вeu-west-1— направляет запросы не на тот конечный узел и возвращает ошибки 403. В NetDrive 3.19.7 добавлено автоматическое определение региона для новых подключений, но конфигурации дисков, созданные до обновления, по-прежнему хранят изначально введённое значение. При необходимости обновите регион вручную.
Исправив проблемы с учётными данными, нажмите Mount и попробуйте просмотреть папку, прежде чем переходить к уровню IAM.
Шаг 2: политика IAM — необходимые действия S3
Если учётные данные верны, но доступ по-прежнему отклоняется, значит в привязанной политике IAM не хватает одного или нескольких необходимых действий. Быстрее всего это подтвердить с помощью AWS IAM Policy Simulator.
В консоли AWS перейдите в IAM → Policy Simulator, выберите пользователя IAM, чьи ключи указаны в NetDrive, и проверьте s3:ListBucket для ARN вашего бакета (arn:aws:s3:::my-bucket) и s3:GetObject для ARN объектов (arn:aws:s3:::my-bucket/*). Если симулятор возвращает «Denied», добавьте политику, предоставляющую недостающие действия.
Минимальная политика для доступа на чтение и запись к одному бакету:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket"
],
"Resource": "arn:aws:s3:::my-bucket"
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:DeleteObject"
],
"Resource": "arn:aws:s3:::my-bucket/*"
}
]
}
Обратите внимание на два разных значения Resource: ListBucket относится к ARN самого бакета, тогда как GetObject, PutObject и DeleteObject относятся к объектам внутри него (/*). Объединение их в одну строку Resource — распространённая ошибка, которая незаметно нарушает получение списка объектов или доступ к ним.

Используйте File Browser NetDrive (доступен без монтирования), чтобы быстро проверить, работает ли доступ к объектам после обновления политики IAM. Он выполняет те же вызовы API, что и смонтированный диск, но без присвоения буквы диска, что делает его быстрым способом проверки при поиске неполадок.
Шаг 3: явные запреты в политике бакета
Разрешающая политика IAM переопределяется явным Deny в политике бакета. Перейдите в S3 → [ваш бакет] → Permissions → Bucket policy и найдите любые утверждения с "Effect": "Deny". Частые причины:
- Ограничения по конечной точке VPC — политики, запрещающие запросы, поступающие не из определённой конечной точки VPC (
aws:SourceVpc). Десктопная версия NetDrive подключается через публичный интернет, если вы не маршрутизируете трафик через VPN. - Списки разрешённых IP-адресов — политики с использованием
aws:SourceIp, блокирующие запросы с публичного IP-адреса вашего компьютера. - Запрет незащищённого HTTP — утверждение, запрещающее запросы при
aws:SecureTransport, равномfalse. Обычно это безвредно, поскольку NetDrive использует HTTPS для запросов к S3 (подтверждено начиная с версии 3.1.234), но стоит проверить, если политика бакета была написана с запасом.
Если вы обнаружили ограничивающее условие, применимое к вашему сценарию доступа, ослабьте условие или добавьте пользователя IAM в явное разрешение Allow с более высоким приоритетом.
Итог
Ошибки S3 «Access Denied» в NetDrive почти всегда сводятся к одной из трёх причин: неверные учётные данные, политика IAM без нужного действия или политика бакета с явным запретом. Проверяйте их в этом порядке — учётные данные исключить проще всего. Для монтирования других провайдеров объектного хранилища см. монтирование Amazon S3 на macOS или рабочий процесс DevOps с тестовыми данными S3 в NetDrive.
— Casey, NetDrive