Как пакет AWS Secrets Manager SDK получает учетные данные AWS?C#

Место общения программистов C#
Anonymous
Как пакет AWS Secrets Manager SDK получает учетные данные AWS?

Сообщение Anonymous »

Я пришел из этой публикации, в которой объясняется, как AWS SM SDK получает учетные данные из вызовов WEB API, реализуя такие методы:

Код: Выделить всё

IAmazonSecretsManager client = new AmazonSecretsManagerClient(
RegionEndpoint.GetBySystemName(region));

GetSecretValueRequest request = new GetSecretValueRequest();
request.SecretId = "MySecretNameExample";

GetSecretValueResponse response = null;
response = client.GetSecretValue(request);
Однако пара вопросов осталась без ответа, которые очень важны для меня:
В ответах говорилось, что когда дело доходит до класса AmazonSecretManagerClient, документация говорит: Создает AmazonSecretsManagerClient с учетными данными, загруженными из конфигурации приложения по умолчанию, а в случае неудачи — из службы профиля экземпляра на экземпляре EC2.
  • Да это означает, что AWS выделит экземпляр EC2 от вашего имени, чтобы получить ту или иную форму учетных данных, и что это будет осуществляться за ваш счет? Будет ли это дополнительными расходами, поскольку вы не обработали должным образом доступ к учетным данным?
  • И когда они говорят о конфигурациях приложения, в случае .NET 8 означают ли они учетные данные, хранящиеся в файле app settings.json?
Я прочитал в документации (которая Я действительно думаю, что вообще не могу понять), что где-то в вашей системе и/или вашем коде «должны» (возможно) быть установлены переменные среды, что для меня звучит как учетные данные в виде обычного текста и, следовательно, бесполезно.
  • Похоже, речь идет только о локальной разработке. Как это отразится на производственной среде? Как вам следует настроить все это для производства, чтобы все обрабатывалось правильно и без сбоев при попытке доступа к секретам (не говоря об ошибках http или ошибках доступа к серверу, а на самом деле о доступе к учетным данным и отсутствии необходимости хранить где-то свои учетные данные в виде обычного текста) ) ?
Я спрашиваю обо всем этом, потому что я новичок в добавлении таких сторонних сервисов в свой код, и на этот раз мне нужен мой WEB API для запуска на страницах GitHub, и поэтому мне придется сделать свой репозиторий общедоступным, о котором никакой информации нельзя найти нигде в исходном коде.
Кроме того, мне очень сложно обернуть свой иметь возможность получить доступ к таким конфиденциальным данным без необходимости предоставления учетных данных, которые должны быть найдены в коде, каким-то образом «написанном» в исходном коде, чтобы приложение могло взаимодействовать со службой.

Подробнее здесь: https://stackoverflow.com/questions/791 ... redentials

Вернуться в «C#»