2015-05-26 7 views
1

Я нахожусь в команде, внедряющей внутреннюю галерею NuGet для клиента. Наш клиент хотел бы не требовать apikeys при публикации пакетов. Наша большая проблема с этим сейчас заключается в использовании команды mirror из командной строки. Если я не ввести Api Key, он запрашивает имя пользователя и пароль, или если я устанавливаюГалерея NuGet Опубликовать анонимно

<add key="Auth.ApiKey.Enabled" value="false"/> 

то запросит имя пользователя и пароль каждый раз. Я вижу, что он использует OwinContext для обработки аутентификации, но я не понимаю все настройки.

Так что мои вопросы:

  1. Могу ли я опубликовать с именем пользователя/пароль (в одной команде) вместо использования apikey?
  2. Могу ли я публиковать анонимно? Если да, то как? Я не вижу, как просто отключить аутентификацию или сделать ее логин в качестве определенного пользователя. Я вижу, что в методе CreateInternalPackage ApiController он вызывает:

    var user = GetCurrentUser(); Таким образом, он должен будет иметь возможность получить какой-то пользовательский объект.

Большое спасибо, банда!

ответ

4

Если вы действительно хотите опубликовать анонимно, вероятно, было бы лучше, чтобы создать свой собственный, пользовательский пакет магазин таким образом: https://docs.nuget.org/create/hosting-your-own-nuget-feeds

Таким образом, вы можете настроить то, что вы хотите, безопасности.

В противном случае, если вы пытаетесь опубликовать на Nuget.org, то анонимная аутентификация будет плохой идеей, так как это позволит любому (включая хакеров) перезаписать ваш пакет с потенциально опасным кодом.

Вы потенциально можете изучить настройки имя пользователя/пароль в файле Nuget.config: https://docs.nuget.org/consume/nuget-config-file

Я не знаю подробностей того, как вы публикуете, но я знаю, что команда толчок использует NuGet. config file: https://docs.nuget.org/consume/command-line-reference#push-command-options

... и вы даже можете настроить конфигурационный файл для каждого пользователя, а затем загрузить его в качестве опции.

+0

Мы внутри принимаем галерею NuGet, и клиент не хочет беспокоиться о ключах api. Он сказал, что опубликовал их без них, и он просто предупреждает об использовании апики, но я еще не смог воспроизвести его. Я понимаю риски безопасности, но поскольку это внутренний сайт, клиент не беспокоится о публикации анонимно. –

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