idcon9レポート
7/8に渋谷mixi本社で行われたidcon9に行ってきました。発表者さんの資料へのリンクはATND記事にあります。
広くてキレイな会場です。参加者も前回、前々回よりぐっと増えました。
本題ではやっぱり話についていけなかった部分があるので、間違いもあると思いますがメモを貼っておきます。なんかおかしいぞ、と思ったら発表者さんの資料を確認してください〜。
自分がその場で理解できるところより上の話を聞くとやはり面白いです。idconはいつもいつもついていけてない感じですが、やっぱり面白い。懇親会も時間を忘れて話し込んじゃいました。
司会まつおかさんのあいさつ
idcon自体は3〜4年前に崎村さんとか工藤さんとか山口さんが勉強会としてスタート。 最初は10人。最近まで10人〜20人規模だった。 今回はmixiさんから会場のオファーがあったということで、規模を大きくしてみた。
- 懇親会ではATNDで募集するとやっぱり人が来ますねー、とか、ある時点から急に参加者が増えるーとかの声が聞こえました。
- ATNDだと参加者の歩留まりが読みにくいという話もありましたね
(1)「OAuth support on mixi Platform」@asyoulike007
mixiのOAuth 2.0サポート
- 2010年9月より、当時の最新ドラフト Draft10
- 対応認可方式
- Web Server Flow
- Resource Owner Password Credentials
- Client Credentials (Draft 12から入った仕様)
Web Server Flow
- ユーザーがオーナーであるリソースが多い (プロフ、日記、写真……)
- ユーザー認可によってどんな情報が出ていくのか理解しやすい
- 認可画面がカワイイ
Resource Owner Password Credentials
- どういうときに向いているか
- ブラウザが使えない場合
- 認可画面がカワイイのでクライアントの要望に応えられない場合もある
- 事前にクライアント審査を行う → 信用のおけるところにのみ使わせている
Client Credentials
- 開発予定
- いま: リアルなソーシャルグラフを元に交流していただく
- → 今後: マイミク以外も参照できるコンテンツを増やしていきたい
- → アプリにも提供したいが、アプリの認証は行いたい
おまけ: User Agent Flow (Implicit Grant)
- なぜ対応しないのか
- secretが不要で、クライアントの正体が確かではない → 不安
- クライアント毎の正確なアクセス状況も把握できない
- 開発者へのデータ提供もできない
- → ポリシーに合わない
secretを使わない認証認可
(2)「OpenTransactって何?」@nov
- 真武さん iKnow!
たまにはお金の話をしよう
OpenTransactの登場
- ペレ: RubyのOAuthライブラリを作ってる人
- The world's simplest spec for financial transactionsをめざす
- Bitcoinの再来じゃないのか? → そうじゃなくてtransactionを標準化するんだ
- transactionの種類: 送金、物を買う、毎月払い
- Asset: 基本的にはcurrencyのこと。通貨でなくてもいいんだけど
- Asset Service: Assetと一対一に対応してAssetを発行するサービス
- Transaction URL: ひとつのAssetを扱うRESTful API Endpoint
- GET: ヒストリ取得、POST: transaction生成
- 認証認可にはOAuthを使用
サンプル実装
- PicoMoney.com: ペレ自身が実装。自分でcurrencyを定義できる
- GitKarma.com: PicoMoneyで作ったcurrencyを使える
- 特定のgitプロジェクトにcommit, pull requestしてくれた人に投げ錢
- 遊んでみてやりたいこととやれることがわかってきた
- 自分でも作ってみた: OAuth.jp Karma
- karma.oauth.jp
- github.com/nov/oauth.jp-karma
- 自分でも作ってみた: OAuth.jp Karma
- サンプル実装にはUndocumented Specもいろいろある
- novさんのslideshareを参照
議論中の話題
まとめ
(3)「Identity over the Browser」@bkihara
- 木原さん レピダム 会社人1年目
Hot Topics
- Device ID
- 動画を保護機能のあるデバイスのみで再生
- 銀行ページを対タンパ性のみで表示したい
- プライバシーの問題
- ユーザー同意が難しい
- Non-phishable Credentials
- Account Manager Standardization
- Form Annotation for ID Input
- HTML Form認証とパスワードマネージャーの相性がよくない
- Input要素が何なのかを機械可読に
- JavaScript Crypto API
- Security Indicators
個人的に面白かったもの
- NSTIC
- ほぼ専用のセッション
- W3Cとしては関わりたくないような空気
- REST-GSS
- HTTPにREST的なログイン、ログアウトをつけよう!
- ログイン用URLへのPOSTでログイン
- セッションURLのDELETEでログアウト
- バックエンドにGSSを使う
- Verified Email
- IDとしてメアドを使うことは多い
- 所持を証明すれば連携ログインが可能
- ユーザーの鍵ペアにメールプロバイダが証明書をつける
- nonceをつけて署名すればassertできる
next steps
- crypto API
- Account manager stand
- non-phishable credentials
- security indicators
- CA and browsers
(4)「OpenID Connect最新仕様」@ritou
はじめに
- 最近情報漏洩さわぎがあって、パスワード使い回しリスクが認識された
- OpenID / OAuthへのネガティブな影響
- あるOPのパスワードがもれたら、RP/Clientまで全部やられるよね!
- 悪い評判が広まってるorz
- 大きなところが安全なAuthZ/Nを提供してみんなのっかればいい
OpenIDとOAuth
OpenID Connect
Spec
- ひとつの仕様に全部入っていると見る方は楽だが作る方は大変
OpenID Connect Core
- 基本はOAuth 2.0にかぶせる
- scopeには"openid"を含む
- display: none, popup, mobile
- prompt: login, consent, select_account
Discovery
Dynamic Client Registration
HTTP Redirect Binding
Session Management
- ID Tokenを返す
- ID Token: JWSを用いた署名つきクレーム
- Clientからログアウトを要求できる
- Requestでid_tokenを指定するとResponseでid_tokenがもらえる
- JSONでもらってもわからない人のためにCheck Sessionというendpointがある
仕様は日々更新中
- http://lists.openid.net/mailman/listinfo/openid-specs-ab
- ここを見るとよくわかるようになる
Q&A
- Q: 下道さん: 「再認証」とはどういう意味か?
- A: OPにログインした状態でOAuthを始める場合、どれくらい時間が経っているかわからない。 RPからOPに対してログイン画面をもう一度出せと要求することができる仕様
(5)「SalesforceのID関連について」@mitsuhiro
- Mitsuhiro Okamoto salesforce.com
- 今日は話が高度すぎて理解できませんが〜
- ある社でのID回りでどうやっているかについて話します〜
Salesforceとは
- Google Appsに近いが、ユーザーIDは必ずどこかの組織に属する
SAML対応
OAuth対応
まとめ
- SAMLに対応してるよー
- OAuth2対応してるよー
- こんなとき使えます
- 手頃に実験してみたい
- OAuthつきのDBがほしい
- プラットフォーム側の実装の参考に
Q&A
- ブログに書かないでね、と言われたので書きません
- でも#idconで検索すると話題になってるw
崎村さんのつなぎトーク
(6)「番号制度と情報連携基盤について」@gjmtj
番号制度
- 一体改革を支える制度・システム基盤
- 公平性確保のために各国民の情報を正確に把握するために使う
- サラリーマンは把握できているが、自営業の人はできてない
- 不正受給を受けてる人がいる
- プライバシー侵害のリスク → 最小限にしながら
- 情報マッチング基盤として電子化が必要
情報マッチング基盤(情報連携基盤)の要件
1. 必要な情報連携ができること
- 必ずしもICカードを必要としないこと
- コスト対効果が出なくなるから
- オプトインだけでなくオプトアウトもできるように
2. 国家による「個人に関わる情報」の集中管理をしえないこと
3. 情報保有機関の結託による不正な名寄せされないこと、それによるプライバシー侵害が出ないこと
4. 複数の機関からの情報漏洩によって第三者による名よせができないこと
プライバシーって何?
- .Nat Zone参照: www.sakimura.org/2011/06/1124/
マイナンバー
参考: 他の連携モデル
- リンクコードがあっても番号が同じなら名寄せされちゃうじゃん
そもそも、共通番号である必要あるの?
- 医療費の保険料返還を例として
- 会社と社保の間でリンクコードを使って調べる
- うまくないところ
- 情報連携基盤を通さないで番号流通したらダメじゃん
- 健保番号変えないとダメ
- 解決方法
- 分野ごとに番号が分かれていてもリンクコードで照合できればいい
- 既存の番号を変えなくていい。新しいリンクコードとひも付ければいい
まとめ
- 「番号制度」という名前になっているが非常に大きなIT投資
- 内容はこれまで非公開で議論されていた。目的や論点がわかりにくい
- #kokuminID で要ヲチですよ
Q&A
- Q: 下道さん: みなさんに期待することは?
- A: 議論をもり上げてほしい。重大な話だし将来の日本を左右する話なのにもり上がっていない。一部の人達だけの話になってしまっている。
- Q: どこで?
- A: #kokuminID
- 高木センセのtweet: そうか、「やる夫で学ぶ番号制度」とか、「やる夫が番号制度に賛成するようです」とか、作ればいいんだな。
- 期待しようw
以上です。