私は、JWTで認証されたEC2にデプロイされたバックエンドのスプリングブートREST APIを作成しました。すべてが正常に動作します私のRESTリソースAPIゲートウェイを使用してセキュリティで保護されたバックエンドAPIにアクセスするには?
curl -H "Authorization: eyJhbGzd9.NYHXPv-vXUIoNr7qtA" http://123.45.6782.910:8080/categories/pets/
これにアクセスするためのREST呼び出しを行うその後
curl -iH "Content-Type: application/json" -X POST -d '{"username":"myusername", "password":"mypassword"}' http://123.45.6782.910:8080/login
:ベアラトークンを取得するので、私が最初にカール。
ここでは、APIゲートウェイを使用して/categories/pets/
リソースにアクセスしたいと考えています。
私は、GET - メソッド実行のメソッド要求、統合要求セクションを設定しました。私は設定をテストしようとする。しかし、私は私が直接無記名トークンなしでバックエンドAPIにアクセスしようとしていますので、これが期待されていると思います403
{
"timestamp": 1498392625274,
"status": 403,
"error": "Forbidden",
"message": "Access Denied",
"path": "/categories/pets/"
}
を取得します。ベアラトークンを取得するためにhttp://123.45.6782.910:8080/login
のPOSTをどのようにしてから/categories/pets/
に電話をかけることができますか?
UPDATE:@KaHouIeongの提案によると、私はベアラトークンを取得するためにAPIゲートウェイにPOSTエンドポイント/ログインを作成しました。テストはAPIゲートウェイのテストコンソールにありますが、私はAuthorization →Bearer eyJhbGzd9
郵便配達員から試してみると、ステータス200はOKですが、Authorization →Bearer eyJhbGzd9
トークンは取得していません。
content-length →0
content-type →application/json
status →200
via →1.1 swfbfbbaf3fb6c32bdccb152354539e473d.cloudfront.net (CloudFront)
x-amz-cf-id →K9V3XUxHOretrza0kCM5dk_G5eZgePrtrBziyVTxptrePD7wjsWqk-l0kCQQ==
x-amzn-requestid →5ac81024-5c27-11e7-af9a-9f3c8494c542
x-amzn-trace-id →Root=1-5953e77f-ed76d15b5bfre9374c9
あなたが認証ベアラトークンを使用する場合は、ヘッダーが正しくないと思われる、これを試してみてください。 '-H「認可:ベアラeyJhbGzd9.NYHXPv-vXUIoNr7qtA」' – chenrui
はありません、それはここでの問題はありません。あなたは必ずしもベアラキーワードを必要としません。それなしで私のために働いている。 – tintin
一見するためのサーバーログはありますか? – chenrui