ChatWork Creator's Note

ビジネスチャット「チャットワーク」のエンジニアとデザイナーのブログです。

AWS DevDay Challengeに参加してきました(チーム吹田)

こんにちはー

藤井(@yoshiyoshifujii) ですー。

以下の記事に引き続きまして、

creators-note.chatwork.com

AWS DevDay Challenge - 2018/11/2 (金) に参加させていただきましたので、レポートさせていただきます。

DevDay Challengeは、3名一組のチームで行う開発コンテストです。当日、運営から与えられるテーマの中から1つを選び、開発に取り組んで頂きます。イベントの最後に発表をして頂き、優秀チームを選出します。優秀チームには副賞も用意しています。 3名でのチーム対抗戦が基本ですが、一人で参加というのもアリです。仲間を誘ってチームでエントリーして頂くことも可能、1人でエントリーして、当日発表のチームで参戦という形も選べます。

とのことで、今回、 cw-hayashi と、 cw-adachi と、 私の3名で 「ChatWork吹田チーム」 を結成して挑みました。

続きを読む

AWS Dev Day Tokyo 2018 10/31(水) テクニカルセッションに行ってきましたー

こんにちは。

藤井 (@yoshiyoshifujii) です。

今回、弊社のかとじゅんさんが登壇されるということと、興味深いいくつかのセッションを聴講するという名目で参加させていただきましたので、レポートを上げさせていただきますー。

aws.amazon.com

私が聴講させていただいたセッションは、以下となっており、それぞれ簡単に内容と所感を述べさせていただければと思います。

  • (10:00) セキュア開発プロセスをアジャイル開発に適用するには - 徳丸 浩 氏
  • (11:00) ドメインモデリングの始め方 - 加藤 潤一 氏
  • (15:00) 外部に依存したコードもテストで駆動する - 和田 卓人 氏
  • (16:20) クックパッドの動画事業での AppSync 活用事例 - Firebaseからの移行 - - 渡辺 慎也 氏
続きを読む

akka-httpでの総当たり攻撃(brute-force-attack)対策について

こんにちはかとじゅん(@j5ik2o)です。

akka-httpで特定の失敗条件を元に、特定のリクエストをブロックするための仕組みを、akka-guardとして実装したので、設計思想や使い方に関して簡単にお知らせします。今回、想定したシナリオは、認証の総当たり攻撃(brute-force-attack)の対策で、認証の失敗回数が閾値を超えた場合、一定期間認証リクエストをブロックする対策を想定しています。

設計は主に僕がやりましたので僕の方から紹介します。実装は主に藤井(@yoshiyoshifujii)さんにお願いしたので、後半は藤井さん対応で。

続きを読む

IFTTT対応と使い方について

こんにちは、サーバーサイド開発部の原田です。
先日IFTTT連携をリリースしましたので、そのことについて書きたいと思います。

今回のリリースにより、プログラミング不要で簡単に、さまざまなサービスとチャットワークを連携させることができるようになりました。

続きを読む

OAuth2 PKCE対応について

かとじゅん(@j5ik2o)です。OAuth2を使った、チャットワークAPI開発者向けのリリース情報です。

今回は、RFC7636 PKCE(=Proof Key for Code Exchange by OAuth Public Clients)をリリースしました*1。 ただ、API ドキュメントの修正が間に合っていないので、後追いで修正させていただきます。また、現状のPKCEの実装には一部制限がありますので、開発者の方は最後までこの記事に目を通していただけると助かります。

PKCEとは、認可コード横取り攻撃対策のためのOAuth2の拡張仕様です。詳しくは以下のブログ記事などを参考にしてください。

qiita.com qiita.com

簡単に説明すると、Authorization Code Flowで「ブラウザ上のJSやモバイルアプリなど」のパブリッククライアント*2を認可させるための拡張仕様です。つまり、OAuth2クライアントとしてのサーバなしで、ブラウザやモバイルアプリなどの端末上で動作するアプリケーションが、直接的にOAuth2クライアントとして実装できます。

*1:PKCEはピクシーと呼ぶそうです

*2:クライアントシークレットを安全に秘匿できない環境で動作するOAuth2クライアントのこと。詳しくはRFC 6749 - The OAuth 2.0 Authorization Frameworkを参照してください

続きを読む