2012-02-20 2 views
2

Мой вариант использования - позволить пользователям создавать нового пользователя/пароль, создавать папки для каждого пользователя и разрешать им загружать файлы.Аутентификация и использование пользователей iAM для доступа к S3

Затем, когда они возвращаются, они могут войти в систему с пользователя/пароль и загрузить свои файлы (которые используются в нашем продукте)

мне удалось получить большинство сотрудников сделано с помощью C# API - очень рад ! Единственная проблема заключается в том, что я не могу найти способ аутентифицировать пользователя с помощью IAM - используя имя пользователя/пароль.

Я не хочу, чтобы конечный пользователь беспокоился о ключах/секретах и ​​длинных строках, они должны иметь возможность передавать эти данные (и доступ к файлам данных) другим пользователям, чтобы помочь им.

Есть ли способ аутентифицировать имя пользователя/пароль IAM? Спасибо, Ури.

+0

Я предполагаю, что вы имели в виду имя пользователя/пароль через консоль? Таким образом, это не sem вопрос C# или API. Извините, если это так. – Gray

ответ

2

Вам необходимо использовать «федеративный доступ» - с вами у вас есть учетные записи и пароли в вашей системе. Затем они аутентифицируются в вашей системе, и вы предоставляете им доступ на 36 часов через систему на основе сеанса (зашифрованный файл cookie или memcache и т. Д.), Чтобы иметь доступ к своей папке.

Вы можете сделать это с помощью веб-приложения или с автономным приложением Windows C#, которое будет аутентифицироваться на вашем сервере.

С веб-приложением ваши пользователи входят в систему, пользователь/пароль, затем вы храните зашифрованный файл cookie или аналогичный, чтобы ваше веб-приложение могло создавать предварительно подписанные сообщения, загружать файлы и т. Д., Пока они вошли в систему. нет необходимости в том, чтобы они когда-либо видели AWSID/Secret.

+0

Вот что я понял, AWS не позволяет аутентифицировать пользователей. –

+0

То, что я закончил, заключалось в том, чтобы хранить имя пользователя/пароль/ключ/секрет в моей базе данных/сервере и проверять подлинность на месте - на самом деле это было очень просто. –

+0

Вы можете зашифровать информацию aws с помощью пароля пользователя.Поскольку вы также храните только хеш-пароль, у вас будет дБ, который, если украден, даст только вору некоторые соленые хэши и некоторые зашифрованные вещи вместе с их именами пользователей. –

0

Нет. Вам нужно будет использовать ключ/секреты. Это короткий ответ. Когда вы создаете нового пользователя в IAM, он даст этому конкретному пользователю свой собственный ключ/секреты. Все, что им нужно сделать, это Войти, захватить их ключ/секретный и пробивать его в

Управление пользователями IAM и их доступа. - Вы можете создавать пользователей в IAM, Присвоить пользователей учетные данные индивидуальной безопасности (например, ключи доступа, , устройства с несколькими факторами аутентификации) или запросить временные учетные данные безопасности , чтобы предоставить пользователям доступ к услугам AWS и . Вы можете управлять разрешениями для управления операциями, которые может выполнять пользователь . - aws.amazon.com/iam

1

Насколько я понимаю, это похоже на доступность. Вам просто нужно, чтобы они вошли в консоль из ссылки входа, представленной на домашней странице AWS IAM.

IAM console sign-in link

Затем необходимо задать пароль для учетной записи пользователя в вопросе и добавить политику для них, чтобы они могли получить доступ к ведру S3 в вопросе. Вам нужен список всех моих ведер, чтобы пройти первый экран консоли. Я просто попробовал это и что-то вроде следующих работ:

{ 
    "Statement": [ 
    { 
     "Sid": "Stmt1363222128", 
     "Effect": "Allow", 
     "Action": "s3:ListAllMyBuckets", 
     "Resource": "*" 
    }, 
    { 
     "Sid": "Stmt136328293", 
     "Action": [ 
     "s3:*" 
     ], 
     "Effect": "Allow", 
     "Resource": [ 
     "arn:aws:s3:::your_bucket_name" 
     ] 
    } 
    ] 
} 
+0

Спасибо @gray. Решил мои проблемы. –

 Смежные вопросы

  • Нет связанных вопросов^_^