かとじゅん(@j5ik2o)です。OAuth2を使った、チャットワークAPI開発者向けのリリース情報です。
今回は、RFC7636 PKCE(=Proof Key for Code Exchange by OAuth Public Clients)をリリースしました*1。 ただ、API ドキュメントの修正が間に合っていないので、後追いで修正させていただきます。また、現状のPKCEの実装には一部制限がありますので、開発者の方は最後までこの記事に目を通していただけると助かります。
PKCEとは、認可コード横取り攻撃対策のためのOAuth2の拡張仕様です。詳しくは以下のブログ記事などを参考にしてください。
簡単に説明すると、Authorization Code Flowで「ブラウザ上のJSやモバイルアプリなど」のパブリッククライアント*2を認可させるための拡張仕様です。つまり、OAuth2クライアントとしてのサーバなしで、ブラウザやモバイルアプリなどの端末上で動作するアプリケーションが、直接的にOAuth2クライアントとして実装できます。
*1:PKCEはピクシーと呼ぶそうです
*2:クライアントシークレットを安全に秘匿できない環境で動作するOAuth2クライアントのこと。詳しくはRFC 6749 - The OAuth 2.0 Authorization Frameworkを参照してください