#jwt #nats.io
Вопрос:
Команда, с которой я работаю, создала контейнер NAS Docker. Файл Dockerfile использует FROM synadia/nats-account-server:0.8.4
и устанавливает NSC с помощью curl -L https://raw.githubusercontent.com/nats-io/nsc/master/install.py | python
. Когда NAS запускается в контейнере Docker, ему указывается путь к server.conf
файлу, который содержит operatorjwtpath: "/nsc/accounts/nats/OperatorName/OperatorName.jwt"
.
Проблема в том, что когда я создаю оператора на своем ПК с помощью nsc add operator -i
и когда я запускаю контейнер Docker на AWS Fargate и монтирую файл JWT в соответствующую папку с помощью файловой системы AWS EFS, контейнер выходит из строя и показывает ошибку unexpected "ed25519-nkey" algorithm
.
Согласно странице основ NATS, алгоритм, который следует использовать, таков "alg": "ed25519"
. Но когда я сгенерировал JWT и расшифровал его на этом сайте, я увидел, что используется именно это "alg": "ed25519-nkey"
.
Так что же здесь происходит? Я не могу найти никакой конкретной информации об алгоритме, к названию которого прилагается «nkey». Это сгенерированный JWT по умолчанию. Почему это отличается от того, что ожидает алгоритм NAS? Как мне устранить эту ошибку?
Дополнительная информация: Согласно этому сайту, это должно быть связано с конфликтом версий, но даже обновление до FROM synadia/nats-account-server:1.0.0
не решило его.
Комментарии:
1. На данный момент проблема исчезла, когда я очистил все сборки контейнера Docker и начал заново с NAS 1.0.0. Теперь отображается ошибка «удалена поддержка прямого доступа к папке nsc. используйте выделенный каталог магазина и вместо этого укажите путь оператора jwt».