OAuth 2.0 における通信は基本的に TLS で守られるのが基本なのだけれど、ひとつ TLS で守られない通信があります。それは Client・User-Agent 間の通信です。 Authorization Code Grant においては、認可サーバから認可コードを受けた User-Agent がその情報をクライアントに渡すときに発生します。 Authlete via kwout Authlete さんの以下の図がすごくわかりやすいのですが、User-Agent (Operation System Browser) から Malicious App に認可コードが漏れていることがわかります。 Native App では、これは Custom Scheme が悪意のある App に上書きされた場合等で発生します。 もちろん、認可コードが漏れたら、アクセストークンも漏れるので、このよ
![OAuth2.0で認可コードの漏洩を防ぐPKCE - 理系学生日記](https://cdn-ak-scissors.b.st-hatena.com/image/square/7948200b6d04608a7faaa7327b071b5ea547c5f6/height=288;version=1;width=512/http%3A%2F%2Fkwout.com%2Fcutout%2F7%2Fs5%2Fd6%2Ft94_bor_rou_sha.jpg)