• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
へろくしーの挫折
 

へろくしーの挫折

on

  • 2,328 views

Heroku-ja Meetup #1でのLT

Heroku-ja Meetup #1でのLT

Statistics

Views

Total Views
2,328
Views on SlideShare
2,223
Embed Views
105

Actions

Likes
0
Downloads
4
Comments
1

5 Embeds 105

http://codenote.net 99
http://webcache.googleusercontent.com 2
http://cache.yahoofs.jp 2
http://s.deeeki.com 1
https://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

11 of 1 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    へろくしーの挫折 へろくしーの挫折 Presentation Transcript

    • 「へろくしー」の挫折 Heroku-ja Meetup #1 2011年7月7日 @yebihara | 海老原 雄一郎
    • @yebiharaについて• キャリア 定職に就かず職を転々 日本オラクル → ソニー → IPLocks → Preferred Infrastructure (Railsでサービスをいくつか開発) → SaaS/PaaS系の某ドットコム企業 (Heroku勉強中)• 好きなもの – 巨人 – ビール – SQL • 「NoSQL入門」 http://www.slideshare.net/pfi/introductiontoonlysql
    • 最近困ったこと• 某SaaSアプリケーションの標準APIから取得できるユー ザー情報には、プライバシー情報が含まれる。• 企業内ユースがメインなので通常は問題ないが、今 回だけは隠したかった。 User *id ! *email 標準 API *name { title id: 90053, address email: “yebihara@bou.com”, phoneNumber モバイル端末 name: “海老原 雄一郎”, ... title: “データベーススペシャリスト”, address: “東京都品川区・・・”, phoneNumber: “090xxxxxxxx”, ... } 某SaaSアプリケーション
    • 最初の解決案• カスタムAPIを作る。• けど、標準APIがそのままだと意味ない。 カスタムAPI User { *id id: 90053, name: “海老原 雄一郎”, *email title: “データベーススペシャリスト”, *name モバイル端末 } title ! address 標準API phoneNumber { ... id: 90053, 攻撃者 email: “yebihara@bou.com”, name: “海老原 雄一郎”, title: “データベーススペシャリスト”, address: “東京都品川区・・・”, phoneNumber: “090xxxxxxxx”, ... 某SaaSアプリケーション }
    • リバースプロクシー案• 某SaaSアプリケーションは、アクセス可能なソースIPア ドレス範囲を制限する機能を持っている。• 前段にリバースプロクシーを置いて、標準APIへのアク セスをブロックすればいい! カスタムAPI User Reverse Proxy *id *email *name モバイル端末 title address 標準API phoneNumber ... 攻撃者 某SaaSアプリケーション
    • どうやって実装しようか• PaaS屋さんにとって大切なこと。• サーバーの構築や運用などしたくない! – たとえAmazon EC2だとしてもイヤ – アプリケーションサーバーより上のレイヤーしか 見たくない• Herokuでリバースプロクシーを作ろう!
    • Herokuについておさらい(誤)HerokuはRuby on RailsのためのPaaSである。(正)HerokuはRackアプリケーションのための PaaSである。 つまり、リバースプロクシーをRackアプリ ケーションとして構築すれば、Herokuの上で 動かせる!
    • 最初にしたことまずは名前決め よい名前があれば中身は後からついてくる!Herokuで動くリバースプロクシー「へろくしー」 !!
    • 次にしたこと開発。・・・ではなく、Gemを探す。首尾よく見つかる!rack-reverse-proxyhttps://github.com/jaswope/rack-reverse-proxyプロトタイプの構築はあっさり完了!・・・というか、へろくしーオリジナルな部分はほとんどなし。
    • 最後にしたこと後は某SaaSアプリケーションにへろくしー経由でしかアクセスできないようIPアドレスを登録するだけ!へろくしーのIPアドレスを調べるか!おや? 再起動するたびにIPアドレスが変わるぞ・・・Heroku FAQ: Does my app have a static IP? http://devcenter.heroku.com/articles/does-my-app-have-a-static-ip私のアプリは静的IPアドレスを持てますか? No!
    • 終了
    • まとめ• HerokuはRailsじゃなくても、Rackだったらなん でもホストできます。• いい名前を思い付いただけで、うまくいくとい うわけではないようです。