JWK от Amazon Cognito не содержит поля X5 c - PullRequest
1 голос
/ 19 апреля 2020

Я пытаюсь подключить свой GO веб-сервер к Amazon Cognito для аутентификации. Я использую JWT-Middleware от гориллы. Я также следую руководству от AuthO: https://auth0.com/docs/quickstart/backend/golang/01-authorization

Руководство создает сертификат, используя следующее:

    for k, _ := range jwks.Keys {
        if token.Header["kid"] == jwks.Keys[k].Kid {
            cert = "-----BEGIN CERTIFICATE-----\n" + jwks.Keys[k].X5c[0] + "\n-----END CERTIFICATE-----"
        }
    }

AWS говорит, чтобы получить ваш Файл JWK, использующий https://cognito-idp. {Регион} .amazon aws .com / {userPoolId} /. Всем известный / jwks. json

Я сделал это, но в моем файле отсутствует поле X5 c. Это выглядит так:

{
    "keys": [{
        "alg": "RS256",
        "e": "AQAB",
        "kid": "abcdefghijklmnopqrsexample=",
        "kty": "RSA",
        "n": "lsjhglskjhgslkjgh43lj5h34lkjh34lkjht3example",
        "use": "sig"
    }, {
        "alg":
        "RS256",
        "e": "AQAB",
        "kid": "fgjhlkhjlkhexample=",
        "kty": "RSA",
        "n": "sgjhlk6jp98ugp98up34hpexample",
        "use": "sig"
    }]
}

Как мне проверить подпись токена, отправленного через заголовок авторизации, отправленный клиентом с использованием этого файла?

Спасибо за вашу помощь!

...