Несколько месяцев go Я создал частный npm фид в Azure Артефактах. Аутентификация с этим фидом работала нормально.
В последнее время другие начали использовать этот фид, и аутентификация у них не работает с использованием токенов, которые они сгенерировали из Azure Артефактов. При установке npm они получают следующую ошибку
npm ERR! Невозможно пройти проверку подлинности, ваш токен проверки подлинности
недействителен. npm ОШИБКА! Чтобы исправить это, пожалуйста, попробуйте войти снова с:
npm ERR! npm login
В журнале отладки npm есть эта ошибка
verbose stack Ошибка: невозможно аутентифицировать, необходимо: Bearer, Basi c realm = "{{redacted url}}", NTLM
Похоже, что структура токена аутентификации, который мы помещаем в глобальный файл .npmr c, изменилась в Azure Артефакты
С:
; Treat this auth token like a password. Do not share it with anyone, including Microsoft support. This token expires on or before 27/02/2020.
; begin auth token
//{{redacted URL}}/_packaging/{{redacted user name}}/npm/registry/:_authToken={{redacted token string}}
//{redacted URL}}/_packaging/{{redacted user name}}/npm/:_authToken={{redacted token string}}
; end auth token
До
; Treat this auth token like a password. Do not share it with anyone, including Microsoft support. This token expires on or before 14/04/2020.
; begin auth token
//{{redacted url}}/npm/registry/:username={{redacted username}}
//{{redacted url}}/npm/registry/:_password={{redacted password}}
//{{redacted url}}/npm/registry/:email=npm requires email to be set but doesn't use the value
//{{redacted url}}/_packaging/{{redacted username}}/npm/:username={{redacted user name}}
//{{redacted url}}/_packaging/{{redacted username}}/npm/:_password={{redacted password}}
//{{redacted url}}/_packaging/{{redacted username}}/npm/:email=npm requires email to be set but doesn't use the value
; end auth token
Когда используется второй токен (или действительно любой из токенов, которые я теперь генерирую из Azure Артефактов) Мы не можем npm install
, мы получаем ошибку, показанную выше. Если другие люди используют тот же токен (в старом формате), что и я, это прекрасно работает. Но срок действия этого токена скоро истечет.
Я попытался указать адрес электронной почты вместо строк «npm требует настройки электронной почты, но значение не используется», но это также не сработало.
Возможно, это не связано, но мы недавно обновили tfs версии 16.131.28507.4 до Azure Devops Server версии Dev17.M153.3.
Кто-нибудь знает, почему изменился формат токена аутентификации? И / или как я могу заставить новые токены работать с моим личным каналом?
npm версия: 6.13.0
версия узла: 10.12.0
Azure Версия сервера Devops: Dev17.M153.3