タグ

ブックマーク / monjudoh.hatenablog.com (10)

  • CSRF脆弱性対策 - monjudoh’s diary

    CSRF対策のtokenはセッションIDで良い セキュリティ的にワンタイムトークン>セッションIDではない。 という話が、この辺の記事に書かれています。 高木浩光@自宅の日記 - クロスサイトリクエストフォージェリ(CSRF)の正しい対策方法 高木浩光@自宅の日記 - CSRF対策に「ワンタイムトークン」方式を推奨しない理由, hiddenパラメタは漏れやすいのか? 肝はこういう事のようです tokenは外部のサイトから知り難い(実質知り得ない)ものでないといけない セッションIDはcookieに格納される document.cookieは自ドメインのものと親ドメインのものしか見れない→外部サイトで動かすJavaScriptからは参照できない セッションIDは『暗号学的に安全な擬似乱数生成系で生成されているはず』(引用) 推測も事実上できない 補足すると、セッションIDを使用したCSRF対

    CSRF脆弱性対策 - monjudoh’s diary
  • hgsubversionの導入 - monjudoh’s diary

    的にhttp://monkeyisland.pl/2009/11/04/hgsubversion-on-windows/を参考にする svnをインスコする hgsubversionを使うにあたってはsvnコマンドのインストールが必要。 TortoiseSVNが入っていてもダメ。 Apache Subversion 設定時に知っておくべきことか http://mino.blog.eonet.jp/minoproject/2009/08/windowssubversi.html Subversionのリポジトリをsvn+sshで管理する - Lism.in * blog - nekoya (id:studio-m) Mercurialをインスコする こちらはTortoiseHGを入れれば入るので、 好みに応じてTortoiseHGもしくはMercurial体のみをインストールする。 Bi

    hgsubversionの導入 - monjudoh’s diary
  • Subversionのブランチ操作を git並に簡単にするsvnbr - monjudoh’s diary

    http://openlab.dino.co.jp/2010/04/07/225425663.htmlをforkした。 GitHub - monjudoh/svn-utils: Subversion Utilities 変更内容は root以外の階層でbranches/,tags/を作っていてもbranch,tagの操作ができるようにした tagについてもswでsvn swできるようにした svnbr tagでtagを作成出来るようにした 他に何ができるかについて詳しくはUsageを読んでもらうとして、 svnbrでのtag/branchの作成が概ね問題なく出来るようになった。 で、これらはちょうど現時点でのhgsubversionからはできない事なので、 svnリポジトリのbranchの管理で面倒くさいsvnコマンドを打つ必要がなくなった。 という事で、詳しい話はまた次のエントリに続く。

    Subversionのブランチ操作を git並に簡単にするsvnbr - monjudoh’s diary
  • Firebugで元のJavaScriptのコードに手を入れずにdebug用のconsole出力を入れる方法 - monjudoh’s diary

    Firebugでは条件付きブレークポイントが使えるので、 scriptタブにて該当行にブレークポイントを貼り、 条件としてconsoleへの出力を||区切りで、最後に&& falseを入れる。 console.debug('this.lastPosition') || console.dir(this.lastPosition) && false こうするとブレークポイントを通る度にconsoleへの出力は評価され、 consoleに出力され、最後の&& falseのため式全体は必ずfalseとして評価されるため ブレークすることはない。 追記 console出力系関数の戻り値はundefinedなんだから&& falseは不要か 追記 nanto_vi @monjudoh JSでは||より&&の方が優先順位が高いので、a || b && c はaが真ならbもcも評価されずに全体が真として

    Firebugで元のJavaScriptのコードに手を入れずにdebug用のconsole出力を入れる方法 - monjudoh’s diary
  • 非ギークのためのMercurialとか - monjudoh’s diary

    思うところとか blogでずっとやってきたでのtipsの蓄積は自分の開発効率を最大化するために、 Mercurialの機能を最大限生かして行く方針で蓄積しているtips。 これは、そうではなくて、色んな会社の人が入っているようなプロジェクトで、 メンバ全員バージョン管理はMercurialでやりますといって、 開発者は幸せになり、上も納得するようなやりかたはどんななのか、という考察。 Mercurial単体/中央集権SCMとの連携どちらかは問わない。望ましい方。 全員にとって、導入による生産性の向上>導入時の学習コスト等となるようにするにはどうすればよいか? 理想 初心者は忠実に守り、上級者はまったくのフリーダムではなくこれを中心に破っていける "型"のようなプラクティスを目指したい。 構想 こんな感じでっていう骨組みだけ。中身はこれからじっくり考えていきたい。 意見も求む。 非ギークのた

    非ギークのためのMercurialとか - monjudoh’s diary
  • hg transplantを試してみた - monjudoh’s diary

    Mercurialを使った俺々バージョン管理ノウハウまとめ(2009年夏編) - 文殊堂で、 export・importによるつまみいmergeの話を書いたら、 id:ursmがTransplantExtension - Mercurialを教えてくれた。 先日書いたやり方はbranch b1に含まれるいくつかのchangesetをb2につまみいする場合は、 つまみいしたいchangesetを指定してそれぞれhg exportしてpatchを作成、 b2のheadにupdateしてからhg importで順次patchを取り込んでいくというやり方だった。 hg transplantを使う場合は、b2のheadにupdateして、 hg transplant -b b1 とやれば良い、後は各chnagesetつまみいするかなど聞かれていくので、 つまみいの対象の場合はy、ではない場

    hg transplantを試してみた - monjudoh’s diary
  • Mercurialでchangeset圧縮 - monjudoh’s diary

    Gitのchangeset圧縮がうらやましいので、 MercurialQueueを利用してやってみた。 概ね↓を参考にした。 ursmの日記 最初からMercurialQueueで管理していない場合のやり方です。 branchのMercurialQueueへのpatchに変換 Rev:298〜Rev:301のbranchのRev:298〜Rev:300を圧縮するとする。 まず該当branchのheadに移動する hg update 301 qimportでRev:298〜Rev:301をMercurialQueueのpatchに変換する。 hg qimport -r 298:301 このとき例えばRev:299だけ別のbranchなどという場合は、 Rev:299がネックになってしまいできないので、 Rev:299を除外してコマンド実行を分割する。 hg qimport -r 300:30

    Mercurialでchangeset圧縮 - monjudoh’s diary
  • TortoiseHGのGuess Renamesが超素敵な件 - monjudoh’s diary

    EclipseのJava projectをMercurialのリポジトリとして管理していて、 その中に何かclassがあるとします。 Eclipseのリファクタリング機能でpackage移動とclass名変更すると、 変更/移動元classのファイル削除と、 無関係の新規ファイル(変更/移動)追加になっている。 これは嬉しくない。 そこで、右クリックメニューからGuess Renamesを選択する。 類似度を自動判定し、後付けでhg renameにしてくれる。 ちゃんとファイルの移動になっています。 annotateで見てもちゃんと、 (自動で)変更されたpackage宣言/class宣言の行だけが 先ほどcommitしたリビジョンになっています。 参考・公式ドキュメントより Bitbucket | The Git solution for professional teams

    TortoiseHGのGuess Renamesが超素敵な件 - monjudoh’s diary
  • Mercurialを使った俺々バージョン管理ノウハウまとめ(2009年夏編) - monjudoh’s diary

    職場でMercurialを使っていい感じに俺々バージョン管理を やれるようになってきた感があるので、 ノウハウをまとめる。 概略 中央リポジトリと同期をとるbranchを用意する 同期branchはsync_cvsとかそんな名前 defaultをそのまま使っても良い このbranchで開発作業は絶対にしない 全ソースをhgで管理しない 中央リポジトリで管理しているソースの数が多い場合の話 hgで管理するファイル数が多いとhg update等が遅くなり、開発のスピード感が落ちる ticket毎に開発作業用branchを作成する 同期branchから作成する 同期branchから随時rebaseする 必ず、同期branchの最新版からrebaseした状態でテストを行う。 テストが通ったらticket別branchから同期branchにmergeする。その後、同期branchの内容で中央リポジト

    Mercurialを使った俺々バージョン管理ノウハウまとめ(2009年夏編) - monjudoh’s diary
  • FirefinderはJavaScriptプログラマ以外も使うべき - monjudoh’s diary

    Firefinderとは何か? https://addons.mozilla.org/en-US/firefox/addon/11905/ CSSセレクタやXPathで要素を検索出来るFirebugの拡張です。 どんな人にお勧めか? hiddenフィールドの値を閲覧したり、 formのどの要素のnameが何かとかさくっと見たくなることないですか? あるならお勧めです。 Firebugには既に$$というCSSセレクタで要素を検索出来る関数があるんだが? CSSセレクタのサポートの度合いが違います。 $$関数では基的なCSSセレクタしかサポートされていないので、 例えば、ここなら、http://images.google.co.jp/advanced_image_search?hl=ja $$('input'); // [input, input ja, input Google 検索, i

    FirefinderはJavaScriptプログラマ以外も使うべき - monjudoh’s diary
  • 1