理系学生日記

おまえはいつまで学生気分なのか

2017-02-01から1ヶ月間の記事一覧

PoEAA: Metadata Mapping

Metadata Mapping は、オブジェクトとテーブルデータをマッピングさせるデザインパターンです。 データベース上のテーブルをメモリ上のオブジェクトに変換するコード、また、その逆変換のコードは、テーブル毎に似ていて非なるものなので、同じようなコード…

複雑に関係しあうJWTまわりの仕様を見る: JWS (JSON Web Signature)

最近、JWT JWT 言っているような気がしますが、ぼくはこの単語を OAuth 2.0 の文脈ではじめて知りまして、それから JWT まわりの RFC に目を通し、Auth0 が無料で出している JWT Handbook を読みました。 このエントリは、JWT に関連する仕様について、ぼく…

OAuth 2.0の認可権限無効化の仕様

OAuth 2.0 のプロバイダを作るんだったら、もしかして認可権限の取消画面も作らないといけないのかしら〜〜〜〜(ほげ〜〜〜〜)と思って調べてたら、その revoke の仕様も RFC で仕様化されていることを知りました。 これにより、必ずしも取消画面を作らなく…

PoEAA: Inheritance Mapping

オブジェクトの継承ツリーとテーブルとのマッピングに関する章も終盤、今日はそのマッピング自体の設計パターンである、Inheritance Mapping がテーマです。 P of EAA: Inheritance Mappers via kwout しかしながら、この図がすべて。あんまり追記することな…

Chromeのautofillによりテキストフィールドが謎の黄色になってしまう

css

Chrome で input フィールドに履歴から入力した後、テキストボックスの色が悲しい黄色になる。 この挙動に困った人もいると思います。 1334 - Auto-filled input text box yellow background highlight cannot be turned off! - chromium - Monorail via kwo…

PoEAA: Class Table Inheritance

Class Table Inheritance は、Rool-Leaf Mapping とも呼ばれるもので、階層構造を持つオブジェクトモデルと DB 上のエンティティとの関係について、オブジェクトモデルのクラス毎にテーブルを持たせるというデザインパターンです。 P of EAA: Class Table In…

特定ユーザのGithub上のリポジトリをごそっとローカルにcloneする

Github 上にある特定 user のリポジトリをぜんぶローカルに持ってきたいなぁというときのワンライナー。 nablarch のところは適当なユーザに書き換えれば OK。ghq ではなく単に git を使いたければ、ghq get を git clone に変えれば良いです。 $ curl 'http…

PoEAA: Single Table Inheritance

Patterns of Enterprise Application Architecture (Addison-Wesley Signature Series (Fowler)) (English Edition)作者:Martin, FowlerAddison-Wesley ProfessionalAmazon Single Table Inheritance は、オブジェクトモデルにおいて表現された継承関係を DB…

OAuth 2.0 authorization code grant 実装ポイント

OAuth 2.0 で Authorization code grant を実装しようとする場合の設計/実装ポイントをまとめてみました。 RFC 6749 を読みながら書いていますが、「普通に作ったらこんなことしねーだろ」というポイントとかはガンガン除外しています。 なので、本気で OAut…

Touch IDには複数の指紋を登録できる

Apple Pay を使うようになってから、市井で頻繁に iPhone のロックを解除することが多くなりました。 ぼくは iPhone のセットアップ時に右手の指の指紋を登録していたのですが、iPhone は左ポケットに入れているので、Apple Pay で決済するときは右手に持ち…

PoEAA: Serialized LOB

今日は Serialized LOB。 Patterns of Enterprise Application Architecture (Addison-Wesley Signature Series (Fowler)) (English Edition)作者:Martin, FowlerAddison-Wesley ProfessionalAmazon あんまり珍しくないパターンが多かったけど、このパターン…

OAuth2.0で認可コードの漏洩を防ぐPKCE

OAuth 2.0 における通信は基本的に TLS で守られるのが基本なのだけれど、ひとつ TLS で守られない通信があります。それは Client・User-Agent 間の通信です。 Authorization Code Grant においては、認可サーバから認可コードを受けた User-Agent がその情…

OAuth 2.0 におけるアクセストークン実装方法の検討

OAuth 2.0 のプロバイダにおいて、アクセストークンをどのようにシステムで保持するのかっていうところを考えたり調べたりしていました。 前提として、OAuth のトークンには以下の 2 種類の表現方法があります (RFC 6819 3.1. Tokens) Handle "opaque" トー…

OAuth2.0を利用するネイティブアプリの注意点

OAuth 2.0 をスマートフォンのネイティブアプリに提供することになりそうだったので、この一週間くらい RFC を読み続けていました。 しかしですね、Web アプリケーションが OAuth 2.0 のクライアントとなるケースは想像できるようになったんだけど、iPhone …