Предоставление доступа к S3 без ключа доступа / секрета? - PullRequest
0 голосов
/ 02 июня 2019

Я хочу использовать AWSSDK в .NET Core для взаимодействия с S3.

Для этого я могу указать ключ доступа и секрет.

Однако у меня сложилось впечатление, что этоне требуется, если код, пытающийся получить доступ к S3, выполняется под экземпляром EC2?Можно ли это сделать с помощью магии IAM?

1 Ответ

1 голос
/ 02 июня 2019

EC2 могут быть связаны с Instance Profile, который является своего рода контейнером для роли IAM. Инструкции по управлению профилями экземпляра см. В Использование профилей экземпляров - Управление идентификацией и доступом AWS .

Как только роль IAM присоединена к EC2 (с использованием профиля экземпляра), приложения, работающие на EC2, могут взять на себя эту роль.

Приложения, работающие на EC2, следуют цепочке поставщиков учетных данных для получения учетных данных, и учетные данные профиля экземпляра (предоставляемые через службу метаданных EC2) являются одними из них. В большинстве AWS SDK вам не нужно делать ничего особенного в своих приложениях для использования учетных данных профиля экземпляра. Для получения дополнительной информации см. Документацию по SDK (например, Документы по Java SDK ). В .NET Core все, что вам нужно сделать, это добавить что-то подобное в ваш Startup class

public void ConfigureServices(IServiceCollection services)
{
...
    services.AddDefaultAWSOptions(Configuration.GetAWSOptions());
    services.AddAWSService<IAmazonS3>();
...
}

И тогда вы можете зависеть от IAmazonS3 в ваших классах приложений, и все будет просто работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...