Skip to content

feat(iam-token-service): replace jsonwebtoken with jose#193

Open
ksrt12 wants to merge 2 commits into
yandex-cloud:masterfrom
ksrt12:master
Open

feat(iam-token-service): replace jsonwebtoken with jose#193
ksrt12 wants to merge 2 commits into
yandex-cloud:masterfrom
ksrt12:master

Conversation

@ksrt12

@ksrt12 ksrt12 commented Mar 2, 2025

Copy link
Copy Markdown

When using serviceAccountJson in new Session there is error in signing jwt with old jsonwebtoken npm package. Also jsonwebtoken has not been updated for 2 years. There is some proofs: on the left side of the screenshot the jwt was encoded using jose and on the right - with jsonwebtoken
image

image

@ksrt12

ksrt12 commented Mar 2, 2025

Copy link
Copy Markdown
Author

Original error using @yandex-cloud/nodejs-sdk with jsonwebtoken and serviceAccountJson :

ClientError: /yandex.cloud.resourcemanager.v1.FolderService/List UNKNOWN: Getting metadata from plugin failed with error: /yandex.cloud.iam.v1.IamTokenService/Create UNAUTHENTICATED: JWT signature validation fails
    path: "/yandex.cloud.resourcemanager.v1.FolderService/List",
    code: 2,
 details: "Getting metadata from plugin failed with error: /yandex.cloud.iam.v1.IamTokenService/Create UNAUTHENTICATED: JWT signature validation fails",

@nikolaymatrosov

Copy link
Copy Markdown
Contributor

There is no urgent need to change the library. Everything works perfectly right now. https://github.com/nikolaymatrosov/sdk-jwt-demo

The key for this example was created via yc iam key create -o key.json --service-account-id $SA_ID command.

@ksrt12

ksrt12 commented Mar 2, 2025

Copy link
Copy Markdown
Author

@nikolaymatrosov странно, я пробовал и 2048 и 4096-битные ключи, скачанные через консоль ЯО - проблема присутствует. Чуть позже попробую через CLI создать еще один ключ и отпишусь. Бтв по поводу Jose - в отличие от jsonwebtoken пакет имеет 0 внешних зависимостей и обновляется

@ksrt12

ksrt12 commented Mar 2, 2025

Copy link
Copy Markdown
Author

@nikolaymatrosov проблема воспроизводится только в среде bun, в нативном nodejs действительно проблемы нет

@nikolaymatrosov

Copy link
Copy Markdown
Contributor

Поддержки bun не было заявлено.

@ksrt12

ksrt12 commented Mar 2, 2025

Copy link
Copy Markdown
Author

Планируется ли внедрение поддержки среды выполнения Bun?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants