ブックマーク / atmarkit.itmedia.co.jp (17)

  • 知っていれば恐くない、XMLHttpRequestによるXSSへの対応方法

    知っていれば恐くない、XMLHttpRequestによるXSSへの対応方法:HTML5時代の「新しいセキュリティ・エチケット」(3)(1/2 ページ) 連載目次 皆さんこんにちは。ネットエージェントのはせがわようすけです。前回は、同一オリジンポリシーを突破する攻撃の代表的事例であるXSSについて、特にDOM based XSSと呼ばれるものについて解説しました。今回はその続きとして、XMLHttpRequestによるXSSを解説します。 XHR Level 2によるリモートからのコード挿入によるXSS 従来、XMLHttpRequest(以下、XHR)は、表示しているドキュメントと同じオリジン(オリジンについては第1回を参照)としか通信できませんでしたが、現在の主要なブラウザーではXHR Level 2と呼ばれる実装により、オリジンを超えて通信することが可能になっています。 これは、Jav

    知っていれば恐くない、XMLHttpRequestによるXSSへの対応方法
    gotouma
    gotouma 2014/03/18
  • @IT:Spring Frameworkで理解するDI(1)

    DI:依存性の注入とは何か?:Spring Frameworkで理解するDI(1)(1/3 ページ) Javaエンジニアであれば最近、「Dependency Injection」や「DIコンテナ」「Spring」、または「Seaser2」といった名前を目にしたことがあるのではないでしょうか。これらは次世代のEJB(EJB 3.0)に取り込まれる動きがあるなど、最近非常に注目されているキーワードであり、今後のJava開発を語るうえで避けては通れない概念の1つになるとされています。 この連載は、「Spring」というフレームワークを利用して、J2EE開発における「Dependency Injection(DI)」というデザインパターンから得られるメリットを紹介し、J2EEの今後の方向性を理解する助けとしていただくことを目的としています。 Dependency Injection:依存性の注入

    @IT:Spring Frameworkで理解するDI(1)
    gotouma
    gotouma 2012/02/04
  • 連載記事 「Strutsを使うWebアプリケーション構築術」

    Strutsプログラミングの準備 Strtusを使うWebアプリケーション構築術(1) ステップ・バイ・ステップの解説で誰にも分かるStruts講座。効率の高いWebアプリケーション開発をマスターしよう

    gotouma
    gotouma 2012/02/04
  • @いう間にWebアプリを作れる「Struts 2」入門 (1/3) - @IT

    【特集】Strutsは“2”を使えば、サルでも幸せに ヤスダネットワーク 関川 晶子 2009/1/8 Strutsに“2”が存在することを知ってましたか? Strutsフレームワークの登場により、JavaによるWebアプリケーション開発は飛躍的に成長しました。いまでは、さまざまなフレームワークが存在しています。日発のフレームワークSeaserやサン・マイクロシステムズのJSFなどが有名です。 その中に、「Struts 2」というフレームワークが存在することをご存じの方は多いでしょう。ところが、日語の情報源がとても少ないのが現実です。その結果、なかなか日でブレイクするキッカケをつかめずにいます。 いまでも、多くの現場で使われているStrutsは、2001年に登場しました。来Strutsが目指したものは、メンテナンス性に優れた、チーム開発に適した土台を提供することにありました。その結

    gotouma
    gotouma 2012/02/03
  • リクエストデータをJavaBeansにセット(Commons活用)

    リクエストデータをJavaBeansにセット(Commons活用):JavaTips ~Apache/JakartaJavaBeansのプロパティを文字列として指定 Javaで記述されたコンポーネント間で、まとまった情報をやり取りしたい場合は、JavaBeansを使用すると便利です。JavaBeansのプロパティxxxに値をセットしたり取得したりするには、setXxx()やgetXxx()メソッドを呼ぶコードを記述します。しかし、XML形式の設定ファイル内に、JavaBeansにセットしたいプロパティ名と値の組が記述されていた場合等、アクセスしたいプロパティのプロパティ名を文字列として指定したい場合があります。このようなときは、java.lang.reflectパッケージによるリフレクションを用いて、プロパティ文字列に対応するsetter/getterメソッドを呼ぶコードを記述するのが

    リクエストデータをJavaBeansにセット(Commons活用)
    gotouma
    gotouma 2011/12/11
  • @IT:事例に学ぶWebシステム開発のワンポイント(6)APサーバからの応答がなくなった、なぜ?

    今回のワンポイント アプリケーション・サーバから応答がない、いわゆる無応答状態は、ベンダのサポートセンターに寄せられる質問でも数が多いといわれている。無応答状態の原因の多くはGC(ガベージ・コレクション)にあり、これはGCチューニングにより解消可能だ。今回の記事では、GCチューニングにより無応答状態を解決する道のりを紹介していく。 サーバから応答がない、なぜ? あるとき、長時間レスポンスが返ってこないという事象が発生した。定期的な応答時間の監視から、無応答状態はアプリケーション・サーバを起動してから数時間経過すると発生し、数分間無応答状態が続いた後に再び正常に処理を開始することが分かった。 無応答の原因を探る 筆者はこの現象を見て、無応答が数分間で終わっていることからガベージ・コレクション(GC)が原因であるとの仮説を立てた。GC実行中、アプリケーション・サーバのCPUはGCのためだけに使

    @IT:事例に学ぶWebシステム開発のワンポイント(6)APサーバからの応答がなくなった、なぜ?
    gotouma
    gotouma 2008/12/14
  • Webアプリの常識をJSPとStrutsで身につける

    いまさら聞けない、Webアプリケーションの常識 Webアプリの常識をJSPとStrutsで身につける(1) JSP/サーブレット+Strutsを通じてJava以外の開発にも通用するWebアプリ全般の広い知識・常識を身に付けましょう

    gotouma
    gotouma 2008/11/30
  • App Store登録もOK!JavaScriptで作るiPhoneアプリ

    Webアプリケーションは、傾きセンサやGPSからの情報取得やバイブレータ動作などのOSの機能の利用に制限があります。また、オフラインでの動作ができません。 開発の容易さは、若干主観めいてしまいますが、コンパイルが必要でメモリ管理も必要なネイティブアプリに比べて、Webブラウザでリロードするだけで最新のコードをテストできて、基的にメモリ管理も不要なWebアプリケーションに軍配が上がります。 ネイティブアプリケーションの最大のメリットは、「App Storeでの配布ができる」ことで、多くのユーザーが集まるApp Storeでアプリケーションを配布でき、さらには課金もできてしまう点です。 ローカルWebアプリという第3の選択肢 前段の機能比較表に「ローカルWebアプリケーション」という項目があります。これは、Safariでオンライン中に所得したHTMLCSS、画像データなどを保存して、オフラ

    App Store登録もOK!JavaScriptで作るiPhoneアプリ
  • 表の結合を極めるチューニング・テクニック

    連載では、Oracleデータベースのパフォーマンス・チューニングの中から、特にSQLのチューニングに注目して、実践レベルの手法を解説する。読者はOracleデータベースのアーキテクチャを理解し、運用管理の実務経験を積んでいることが望ましい。対象とするバージョンは現状で広く使われているOracle9iの機能を基とするが、Oracle 10gで有効な情報も随時紹介していく。(編集局) 連載目次 前回までは、索引に関するチューニング・テクニックを説明しました。今回からは表の結合に関するパフォーマンス向上方法を考えてみます。結合処理は、正規化されたデータベースでは、必ず必要になる処理であり、パフォーマンスが問題となりやすい部分でもあります。ここでは、参照する表の件数、絞り込み条件の有無などを変更し、結合の種類によって処理時間、アクセスブロック数などがどのように変わるか、実例を挙げて説明していき

    表の結合を極めるチューニング・テクニック
  • 簡単な仮想計算機を作ろう(準備編)

    仮想計算機もどきを設計する さて、後置記法という式の表現方法を見てみました。次は、連載でコンパイラがターゲットとするコンピュータについて設計をしてみましょう。コンピュータの設計をするといっても、ハードウェアから設計して実装まではできませんので、簡単な仮想計算機ソフトウェアとして実装することにします。 最初に、作成する仮想計算機の機能について決める必要があります。あまり複雑なことまで実装する必要はないので、ここでは非常に単純な機能しか考えないことにします。そこでここでは、オペランドとなるデータの範囲は0から127までの整数だけを対象とします。この値を表現するには7bitあれば十分ですが、コンピュータにとっては区切りが良い1byte(8bit)を使って表現することにします。 次に、サポートする命令語を決めておく必要があります。コンピュータの命令としては来、データを操作するためのデータ操作命

    簡単な仮想計算機を作ろう(準備編)
    gotouma
    gotouma 2008/02/28
  • 肥え続けるTomcatと胃を痛めるトラブルハッカー

    PrintClassHistogramオプションで、迷宮入りを防げ!! 残された道はただ1つ。いまもメモリリークが発生している番環境で、何としても発生状況の情報を取得することだ。プロファイラを用いることが確実だが、性能劣化が確実に予想されるため、番環境に導入することは考えられない。 どうすれば、と考えあぐねていたところ、一緒に解析に当たっていた同僚より「PrintClassHistogramオプションが使えるのではないか」との情報を得た。試験環境でサービスへの影響がないことを確認した後、プロジェクトメンバが見守る中、最後の望みを賭けてPrintClassHistogramを番環境へ適用した。 ■PrintClassHistogramオプションとは? このオプションを知らない方のために、PrintClassHistogramオプションについて説明しよう。PrintClassHistog

    肥え続けるTomcatと胃を痛めるトラブルハッカー
    gotouma
    gotouma 2007/12/01
  • 失敗プロジェクトを誘発するユーザー企業の姿勢 - @IT

    2006/9/6 「500人月以上の大規模プロジェクトでは5割近くで工期遅れが発生している」。日情報システム・ユーザー協会(JUAS)が9月5~6日に開催しているイベント「ITガバナンス 2006」で、JUASが4月に発表したユーザー企業の調査結果について、JUASの調査部会が解説した。同部会長の浜田達夫氏(JALインフォテック 代表取締役副社長)は「プロジェクト規模に応じて工期やコストの管理が難しくなっている」と指摘した。 調査は2005年11月から2006年1月にかけて、923社のIT部門と800社のエンドユーザー部門にアンケートを実施。ほかにユーザー企業42社と情報システム子会社20社にインタビュー調査を行った。 調査によると、500人月以上のプロジェクトでは46%の企業が「予定よりも工期が遅延する」と回答。100人~500人月未満では39%、100人月未満では21%で、プロジェク

    gotouma
    gotouma 2007/11/28
  • 3秒で2000ルータがダウン、NTT東フレッツ障害の原因は ― @IT

    2007/05/16 NTT東日の「フレッツサービス」「ひかり電話」が東日の広いエリアで5月15日18時44分から翌日1時35分まで使えなくなった大規模障害の原因が分かってきた。 5月16日に説明会見を開いたNTT東日によると、障害のきっかけは1台のルータの故障。このルータ故障の影響が3秒でNTT東日管内の約4000台のルータに広がり、2000台が機能を停止した。NTT東日の代表取締役副社長 大木一夫氏は顧客に謝罪したうえで、「今回の事象を教訓に次世代ネットワーク(NGN)を安心安全信頼のネットワークにしたい」と語ったが、緊急通報までも利用できなくなった今回の障害で、同社の技術に対して不信感が広がりそうだ。 複合的な要因で処理能力オーバー 障害が発生したのはBフレッツ(約100万契約。うち、ひかり電話契約は約50万)、フレッツ・ADSL(約126万契約)、フレッツ・ISDN(約1

    gotouma
    gotouma 2007/09/29
  • すべてが大規模、三菱東京UFJ銀行システム部は9000人の大所帯 - @IT

    2007/06/22 装置産業ともいわれる銀行業ではITシステム開発にどれだけのリソースを投入するかで競争力が決まる面がある。国内最大の総資産を持つ三菱東京UFJ銀行も同様だ。6月22日に都内で開催された「ITmedia エグゼクティブ オープン記念セミナー」で講演した三菱東京UFJ銀行の執行役員 システム部長 根武彦氏は、「旺盛なシステム需要にいかに応えるかが課題の1つ」と話した。 確かに三菱東京UFJのシステム需要は旺盛だ。半年に立ち上がるプロジェクトは1000以上。700のプロジェクトがリリースされる。システム部は加えて2006年の旧東京三菱銀行とUFJ銀行のシステム統合を主導。現在は次のフェイズとして未統合の勘定系システムの統合を進めているという。「この1年で2500人を投入した。日中の技術者をつかんで離さないため、私は“歩くブラックホール”と自ら称している」(根氏) システ

    gotouma
    gotouma 2007/09/29
  • パーティショニングは大規模DBの性能向上に効く(1/3) ― @IT

    連載では、大規模データベースでのパフォーマンス・チューニングの手法として、Oracleパーティショニングを解説する。単なる機能説明にとどまらず、実機による検証結果を加えて、より実践的な内容をお届けする。(編集部) パーティショニングの必要性 今日、Oracleデータベースを取り巻く環境は、多種多様なユーザーのニーズに応えるべく進化しています。例えば、Webサーバのバックエンドとして使用されるデータベースでは、高い可用性を実現しながら、日々増加するデータに対し、多数のユーザーからの要求をレスポンスの遅延なく処理し、さらに、優れたメンテナンス性を提供するなど、ハードルの高い要件が求められています。 このような要件のデータベース・システムに対し、ハードウェア面ではここ数年、IAサーバを採用するケースが増加しています。IAサーバの64bit化やCPUの処理能力増大(マルチコア化)に伴いCPU処理

    パーティショニングは大規模DBの性能向上に効く(1/3) ― @IT
    gotouma
    gotouma 2007/09/29
  • @IT:連載 Strutsを使うWebアプリケーション構築術(1)

    アプリケーション・フレームワーク「Struts」 昨今、とみに「フレームワーク・プログラミング」という言葉が取りざたされることが多くなってきました。そして、稿のテーマでもあるStrutsもまた、「サーバサイドJava」――サーブレットベースで動作する「アプリケーション・フレームワーク」の一種です。 Strutsプログラミングの具体的な手続きを紹介していくに先立って、まずはこのアプリケーション・フレームワークとしてのStrutsについて、簡単に解説しておくことにしましょう。 ■アプリケーションの枠組み フレームワーク、それはアプリケーションを構築するうえでの「枠組み」であり、「ルール」であり、(語弊を恐れずにいえば)「制限」です。 昨今、アプリケーション構築におけるチーム開発の重要性がますますクローズアップされています。アプリケーションがますます大規模化し、また、基幹システムの一角をも担う

    @IT:連載 Strutsを使うWebアプリケーション構築術(1)
    gotouma
    gotouma 2007/08/07
  • Podcastでプログラマーに必要な英語をStudyしよう!

    Java News.jp(Javaに関する最新ニュース)」の安藤幸央氏が、CoolなプログラミングのためのノウハウやTIPS、筆者の経験などを「Rundown」(駆け足の要点説明)でお届けします。(編集部) いまの仕事に「英語」は無用! 当に? 昨今では、コンピュータ関連の翻訳書や日人著者の書籍も増え、大抵の分野であれば、日語で最先端の技術的情報を取得できるようになりました。ただ、最新の技術情報や、ニッチな領域の奥深い情報の場合、どうしても最新の洋書や、論文、英文のWebページの情報などに頼っているプログラマ・エンジニアも多いことでしょう。 また、海外で開催されるカンファレンスのQ&Aや、BOF(birds of a feather)などのミーティングの場合、英語力が即、理解力や情報伝達力に反映してきます。 自分は日にいて、日人相手に仕事をしているから「英語」なんて関係ないと思

    Podcastでプログラマーに必要な英語をStudyしよう!
    gotouma
    gotouma 2007/05/11
  • 1