2017-09-14 1 views
0

ユーザー認証後にJavaアプリケーションにjwtトークンを送るnode.jsで承認者が書かれています。スプリングを使用せずにプレーヤJavaアプリケーション(クラウドファウンダリのマイクロサービス)でapprouterから送信されたoauthトークンを検証する方法はありますか?

REST APIを実行する前に、春のアプリケーションでこのトークンとスコープを確認する必要がありますが、春の機能を使用せずに同じことを行う方法はありますか?

答えて

0

1つのオプションは、UAAの/check_tokenエンドポイントを使用することです。このアプローチの良い点は、外部ライブラリの助けなしにこれを行うのは、HTTPリクエストを送信するだけなので、非常に簡単だということです。また、(TLS以外の)暗号は必要ありません.UAAはそれをすべて処理します。ただし、UAAを使用してトークンをチェックするアプリケーションを識別し、HTTP要求を送信するオーバーヘッドがあるように、クライアントの資格情報が必要です。

例:

appappclientsecretアプリのクライアントの資格情報がある
curl 'http://uaa.example.com/check_token' -i -u 'app:appclientsecret' -X POST \ 
    -d 'token=53dbe3e05dcf4ff38d350bc74a7fc97bscopes=password.write%2Cscim.userids' 

& scopes属性はオプションですが、それを含めない場合、UAAはまた、あなたが示すスコープがトークン上に存在していることを検証します。以下のリンクで

より:

他のオプションは、トークンを自分で検証することです。これには署名トークンが必要で、サーバーとCloud Foundry、UAAの場合には、共有秘密情報が必要です。

私はSpringを使わずにこれを説明する方法はありませんが、Spring Securityはオープンソースなので、コードを見てどのように処理されているかを見ることができます。

decodeAndVerifyの方法はJwtHelperのように見えます。また、JwtHelperの使用例をhereで示しています。

希望に役立ちます!

関連する問題