SSOクロニクル:銀行、トークン、およびリトルマジック

ねえ!私の名前はArtemIvlevで、VTBBankのクライアントの識別アーキテクチャに携わっています。私たちの仕事は、私たちの銀行サービスを誰が使用するかという質問に答えることです。モバイルバンキングまたはインターネットバンキング、音声アシスタント、または多くのオフィスの1つです。これには多くのツールがあります-そして私はそれらの1つの形成についてあなたに話したいと思います。 





プロローグ





2019年、銀行のエコシステムは飛躍的に成長しており、顧客とIDプロバイダーのための単一のエントリポイントがますます必要になっています。また、認証用のアカウントのディレクトリとさまざまなチームの個別のソリューションしかありません。





すべてがどのように見えるかについての要件はまだありませんでした。同時に、オンラインバンクだけでなく、パートナーのリソースについても、すぐに個人の認証について話し始めました。同じボタン「VTBから入力」。 





これがVTBの入り口の様子です





このことから、最も普遍的なソリューションを採用して使用を開始する必要がありました。使用する過程で、正確に必要なもの、不足している機能などを把握することができました。





どちらに行くかを選ぶ





インターネットを検索し、ガートナーの魔方陣を吸った後、彼らはロシアでサポートされているオープンソースソリューションを検討し始めました。





• WSO2 Identity Server





• Keycloak





• OpenAM





WSO2 , . .





WSO2 Identity Server





2019 .





(, ) —





, OAuth 2 ID- JWT, . , JWT — :





1. (HEADER) , , .





2. (PAYLOAD) — — , , .





3. (SIGNATURE) , , .





JSON Web Token (JWT)





— , . Base64.





ID- JWT : , . — . API Gateway, .









, X , , «» . 





— API Gateway. , , Redis TimeToLive.





, , ? - . , , , .





«»





, « ""» (()​ « »). (HttpOnly, SameSite, Secure) UUID. UUID , , CRC32, — JWT. . , , . , « — » . 





,  





. , , , , , -, , (, push, - ).





. , , WSO2 IS, , , API SPA. 





, JSP. -, API .





- , . 





- API/oauth2/token — . 





- grant_type, /oauth2/token, .





. - — . , — grant type. , . 





, ,





, , — - , « » . WSO2 IS . 





. PostgreSQL Redis. . 





:)





, , . — . ( , - ) . 





— , . — .





active-active active-passive, PostgreSQL Redis. - .





— WSO2 IS. . Redis, JWT refresh-. 





? SSO





WSO2 IS, , , , , . 





-. . . «», « » , , . . 





« »





, , , «» . . , , « » (, « », ). — .









, . . ? WSO2 IS? 





, , , , — , . , — .





: SSO, .





: ? , Tarantool Data Grid?








All Articles