Как интегрировать aws s3 bucket через MFA с помощью ASP.NET MVC C# программно
Я пытаюсь добавить MFA (Multi Factor Authentication) в свое приложение, где я собираюсь хранить объект в ведрах aws S3. Пожалуйста, предоставьте любой пример кода для аутентификации сервиса amazon aws через MFA при загрузке объектов/изображений в корзину s3 с помощью asp.net mvc c#.
Вот приведенный ниже фрагмент рабочего кода без MFA,
var awsCredentials = new BasicAWSCredentials(accessKey, secretKey);
_client = new AmazonS3Client(awsCredentials, Amazon.RegionEndpoint.USEast1);
var putRequest = новый PutObjectRequest
{
BucketName = Диспетчер Конфигураций.Параметр Appsettings["S3BucketName"],
Ключ = имя файла,
FilePath = localFilePath,
ContentType = "image/" + Path.GetExtension(имя файла),
CannedACL = S3CannedACL.PublicRead
};
ВАР Треб = JsonConvert.SerializeObject(putRequest);
Спасибо,
Что я уже пробовал:
var awsCredentials = new BasicAWSCredentials(accessKey, secretKey);
_client = new AmazonS3Client(awsCredentials, Amazon.RegionEndpoint.USEast1);
var putRequest = новый PutObjectRequest
{
BucketName = Диспетчер Конфигураций.Параметр Appsettings["S3BucketName"],
Ключ = имя файла,
FilePath = localFilePath,
ContentType = "image/" + Path.GetExtension(имя файла),
CannedACL = S3CannedACL.PublicRead
};
ВАР Треб = JsonConvert.SerializeObject(putRequest);
David_Wimbley
А что вы пробовали? В чем ваша проблема? Вы просто просите кого-то написать для вас интеграцию многофакторной аутентификации? Простой поиск в google по использованию, скажем, google mfa даст множество результатов для начала работы.
RakeshAlajipur
Привет, я попытался использовать приведенный выше код, включив MFA в консоли, но через код, как отправить ключ аутентификации MFA с помощью C#, так как получаю ошибку доступа при запуске приведенного выше кода.
David_Wimbley
Вы пробовали искать в google? как использовать многофакторную проверку подлинности для проверки подлинности в AWS S3 в возвращает массу результатов.
Одна из первых ссылок выглядит именно так, как вы ищете.
https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html
То, что я пытаюсь сделать, это побудить вас думать самостоятельно, а не полагаться на других, чтобы решить ваши проблемы за вас. Судя по тому, как это выглядит, вы попробовали одну вещь (если это так), и потому что это не сработало. Теперь вы просите меня показать вам код о том, как это сделать в C#.
Еще одно звено
https://aws.amazon.com/blogs/security/how-to-enable-mfa-protection-on-your-aws-api-calls/
RakeshAlajipur
Привет, Дэвид, Спасибо за ответ. Общие ссылки содержат CLI, на самом деле я хотел сделать это со стороны сервера, чтобы сохранить изображения в корзине S3 с помощью MFA.
Я попробовал использовать метод GetSessionToken (), из которого я получаю учетные данные sessionToken, которые я передаю как paremeter при создании объекта AmazonS3Client, этот объект используется для загрузки изображения в корзину S3. Пожалуйста, обратитесь к моему нижеприведенному коду здесь, пожалуйста, посоветуйте, достаточно ли этого кода для передачи MFA программно.
клиент ВАР = новый AmazonSecurityTokenServiceClient(новый BasicAWSCredentials("АК", "СК"),Амазонки.RegionEndpoint.USEast1);
var sessionTokenResult = клиент.GetSessionToken(); Credentials sessionCredentials = sessionTokenResult.Учетные данные; AmazonS3Client s3Client = new AmazonS3Client(sessionCredentials, Amazon.RegionEndpoint.USEast1);
var putRequest = new PutObjectRequest { //параметры };
var response = s3Client.PutObject(putRequest)