ほんとに備忘録としてたまには使ってみる。
EC-CUBEのカスタムテンプレートを自作したい場合のメモ。

-/_packages
    -/css
     /img
     /js
     /sql
     *.tpl
 /abouts
 /bloc
 /campaingn
 /cart
 /contact
 /entry
 /forgot
 /frontparts
 /inquiry
 /mail_templates
 /mobile
 /mypage
 /order
 /products
 /regist
 /rss
 /shopping
 *.tpl

とか何とかいう構成でEC-CUBEのテンプレートからダウンロードしてくるとなっているが、/_packages以下は/html/user_data/packages/テンプレートの名前/以下に展開される。その他は/data/Smarty/テンプレートの名前/以下に展開される。

ちょっと/_packages以下の行方が分かりにくい気がしたのでメモってみた。以上。

ここ何日か色々試してみたのだが、どうにもうまくいかない。
OSDE上のOpenSocialガジェットからmakerequestでOAuthを使うことができない。できない・・・。
色々書き方を変えてみたりしても、Failed to retrieve OAuth URLs~ のエラーが出て一切通信できないので、対応してないのではないかという結論に勝手に至ることにした。OSDE的にはModulePrefs内にOAuthエレメントが無いらしい。あるはずなんだけどなあ。

仕方ないのでとりあえず2-legged OAuthで場当たり的に実装を進める。

どうやらOSDEは内部でHibernateを使ってH2DatabaseEngineとのアクセスをしているらしい。
しかもどうやらHibernate Annotationsを使っているっぽい。

これは・・・Hibernateの時代が来るのかな?今のうちに色々把握しておこう。

ちい散歩アプリケーション
・歩いたルートを記録してくれる
・ポイントで写真+コメントを付ける
・ブログか何かに一まとめにしてアップロードしてくれる
・歩数を記録しておいて消費カロリーを最後にのせてくれる
・QRコードか何かを記事の最後に載せて、それを読み込むとその人の歩いたルートをナビゲーションしてくれる
・各ブログサービスと連携する

こんなの。

ってのを作るのはどうだろうか。
加速度センサーで歩く速さを取ってきて、タコメーター的な感じで表示。車の駆動音みたいなSEが鳴ったら楽しそうじゃないですか?

どうやってSEを録音するかって?もちろん口で再現で。

OpenSocialの署名付きリクエストの検証テストをしようと思ったのだが、OSDEの公開鍵が分からない。どっかに公開されてたりするのかな?

追記:探すべきは証明書のようだ。証明書はどこだ!

更に追記:うおおお検証通った!OSDEのソースを落としてきたら秘密鍵が入っていたので、こっから証明書を生成して作ったらいけた!役に立つかもしれないので貼っておく。

OSDE用の証明書

-----BEGIN CERTIFICATE-----
MIICDDCCAXWgAwIBAgIJAI/Uh/1KPGPUMA0GCSqGSIb3DQEBBQUAMA8xDTALBgNV
BAMTBG9zZGUwHhcNMTAwNjI5MDQwMzU0WhcNMTAwNzI5MDQwMzU0WjAPMQ0wCwYD
VQQDEwRvc2RlMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDAv7N2y4S1TWgL
1UlaqivxGKyskl5o5TLoZdli2AMHidjVzTJsGX1ydYWJmteicnVLTo//JrmkB19C
L+IYCOnxo6H5YdNAi+t7e3NRpMJF6YBCV+MXnP2dZx02SHAhO6z4i8P/EMcnNX6l
sX7cXeMnmYS+X7AG+AS6zVVdSKQwVwIDAQABo3AwbjAdBgNVHQ4EFgQUbONO5jjA
q8gC34J+iUfAnkZVelswPwYDVR0jBDgwNoAUbONO5jjAq8gC34J+iUfAnkZVeluh
E6QRMA8xDTALBgNVBAMTBG9zZGWCCQCP1If9Sjxj1DAMBgNVHRMEBTADAQH/MA0G
CSqGSIb3DQEBBQUAA4GBAG3QjNTSvDTpAmzEH3NueftHi34xN9+6B5H/vpknsz/K
oGmLXdXjhnFlPJn+5nlOLyYG5W24yeyQ/gjwY9aYsWpJGUp59fHy8tU215P5lDc/
VTOi4LLFqbd89r0w4mNccPZ5LMuSmyBG42ypzCjfLsjzw80DW7wxegndXb6oAjNo
-----END CERTIFICATE-----

どうやらAndroidだとバックグラウンドでGPSや加速度センサー使って歩いたルートと歩数を計測しておくことができるらしい。こいつを使えば、俺の欲しいアプリケーションが作れる!でも品切れらしい、ちくしょう!そもそも金がない!

冷蔵庫のドアに付箋を貼る、あるいはメモを貼る。そういうインターフェースのコミュニケーションツールはどうだろうか。
「つぶやき」位の気軽さで、さらっと書いたメモを貼る。人とボードを共有して、ボードを使ってコミュニケーションをする。
一つ一つの発言の関連性は、メモの置き方で表現して、ユーザーが自由にボードを作ったり消したりできるような。

考え中。

(function(arg){
	//処理内容を記述する
	var foo = 2;
	alert(foo+arg); //5
})(3);

jQuery UIの定義とかでこのような表記を見かけ、何だろうこれはと思っていた。要はJavaScriptで無名関数を宣言し、すぐ実行する方法らしい。こいつを使うと何がいいかというと、グローバルスコープを汚染しないで済むというところがいい。もしこれを使わないで書いた場合、var fooの時点でグローバルスコープにfooが定義されてしまい、ちょっと気持ち悪い感じになるところを回避することが出来る。

今更感のあるエントリだが、よく分かっていなかったので記録を残しておくことにする。

CSRFを利用した有名な事件としては、mixi上での「ぼくはまちちゃん」事件があげられる。
攻撃者が巧みな文言で誘ってURLをクリックさせ、ユーザーの意図しない操作をmixi上で行わせてしまう、という攻撃手法であった。実際には、http://www.google.com/url?xxxxxxxxxxxxなどと信頼できるサイトへのリンクと思わせたうえで、攻撃用のサイトにリダイレクトさせて攻撃を行う、といったように行われた。

この攻撃手法は、ユーザーからのリクエストがユーザーの意図したものであるか、ということを確認していない場合に成立する。ログイン情報をセッションやクッキー等で管理している場合には、サーバー側ではユーザーからのリクエストがユーザーの意図したものであるか、そうでないものであるか判断する術を持たないので、CSRFの攻撃対象となってしまう。

ユーザーからのリクエストがユーザーの意図にのっとったものであるか確認する方法はいくつかある。

まず、一つ目に、アクセスのリファラを確認する方法がある。リファラが想定されたサイト以外からのもの、あるいは空である場合にはリクエストを拒否する、という方法である。ただし、この方法に関しては悪意ある攻撃者がリファラを改ざんすることが出来るので、100%の攻撃を防ぐことはできない。

もう一つの方法としては、毎回のリクエストにランダムな文字列を含ませ、それとクッキーに保存している文字列が一致するか確認する、という方法がある。

最後に、一時期CAPTCHAが話題になったが、あれを使う方法がある。本来はROBOTからのアクセスを防ぐ方法だが、ユーザーの意図しない操作による攻撃を防ぐことが出来る。

以上、こんな感じ。

最近気になるもの

・Sinatra Rubyの超軽量Webフレームワーク。なんかのプロトタイプを作るのにはぴったりかも。

・Scala Twitterで本格的に導入されたので有名。オブジェクト指向言語と関数型言語のいいとこどり、らしい。JavaScriptにはまってる俺からしたらちょい気になるもの。

・SproutCore JavaScriptのみでMVCフレームワークやリッチなUIを実現するものらしい。Railsのような生産性?まだよく分からない。開発にはRubyを使うらしい。近いうちに試してみたい。

・VoltDB 分散型オンメモリデータベース、超高速らしい。RDBMSを使うまでもないWebアプリ上での使用とかに適切なのかな。ただしストアドプロシージャしか使えないので、使いどころは限られてくるかも。一応SQLの構文に対応しているらしい?

カレンダー
2018年9月
« 9月    
 12
3456789
10111213141516
17181920212223
24252627282930