タグ

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

  • 「HTTPマルチパートレスポンスについて」(1) Java Solution - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    tgk
    tgk 2006/10/11
    Firefoxはマルチパートレスポンスをすでにサポートしている
  • 隠されていたSQLインジェクション ― @IT

    星野君は赤坂さんと一緒にお客さんのWebアプリケーションの検査をすることになった。辛うじて「不必要情報」の脆弱性を見つけたものの、赤坂さんは不満げだ。 「だって、これ、ほかにもっと危険な脆弱性あるよ……」。 赤坂さん 「ってことで、今回は50点ってとこかな」 星野君 「うわっ。厳しいですね……。一応脆弱性は見つけたんだからもう少し……」 赤坂さん 「え。だって、これ、ほかにもっと危険な脆弱性あるよ」 星野君 「(ほかにも脆弱性あるっていってもなぁ……)」 赤坂さんに「ほかにもっと危険な脆弱性あるよ」と指摘されたにもかかわらず、星野君にはサッパリ見当が付かなかった。不必要情報(Unnecessary Information)の脆弱性に気付くまでの作業で、一通り思い付くことはやりつくしていた。 そうこうしているうちに時間は過ぎ、結局ほかの脆弱性を見つけられないまま、お客さんと約束した時間になっ

    隠されていたSQLインジェクション ― @IT
    tgk
    tgk 2006/08/28
    ブラインドSQLインジェクション
  • 1つのSQL文で複数の表にINSERTする絶品テクニック(1/2) ― @IT

    連載はSQLの応用力を身に付けたいエンジニア向けに、さまざまなテクニックを紹介する。SQLの基構文は平易なものだが、実務で活用するには教科書的な記述を理解するだけでは不十分だ。連載は、著名なメールマガジン「おら!オラ! Oracle - どっぷり検証生活」を発行するインサイトテクノロジーコンサルタントを執筆陣に迎え、SQLのセンス向上に役立つ大技小技を紹介していく。(編集局) FOR...LOOP文を使って、いくつものSQL文でデータをINSERTしているPL/SQLプロシージャやプログラムをよく見掛けますが、実は1度にデータをINSERTする方法もあるんです。マルチテーブル・インサート(Multitable Insert)とはその名のとおり、1つのSQL文で複数の表にINSERTが可能になります。この最大のメリットは、やはりパフォーマンスです。では早速ご紹介します。 マルチテーブ

    1つのSQL文で複数の表にINSERTする絶品テクニック(1/2) ― @IT
    tgk
    tgk 2006/08/25
    Oracleにはマルチテーブルインサートというのがある
  • なぜDIコンテナを使うのか

    記事は2005年に執筆されたものです。Spring、DI、AOP全般の最新情報は@IT Java Solutuionのカテゴリ「DI×AOP(Spring/Seasarなど)」をご参照ください。 私がDIコンテナを使う理由 前回までで、Spring Framework(以下Spring)やDIの概念について説明してきました。最近では、実際の開発現場でもSpringのようなDIコンテナを利用するケースが増えてきているようです。 現場のエンジニアはDIの“機能”や“役割”は理解できるようです。しかしながら、「なぜそれが必要なのかピンと来ない」「学習してまで導入するほどの効果があるのか疑わしい」という声をよく耳にします。そのほかにも、自分自身はメリットを十分に理解して開発プロジェクトに導入したい気持ちがあるけれど、導入するためには上司や関係者を説得しなくてはならず、どのように説得すればよいか分

    なぜDIコンテナを使うのか
    tgk
    tgk 2006/08/18
  • データへの最短ルートを確保せよ!(1/4) ― @IT

    前回「システムの寿命はコードで決まる!」ではコード設計について解説しました。今回はデータへの最短ルート、つまりSQLの最も効率的なアクセスパス(実行計画)を見つけ出すためのテクニックを解説します。 SQLはデータベースに関する最も基的な技術で、まずSQLから学んだ(でいる)という方は多いと思います。しかし、SQLを学ぶ際、データベースから必要なデータを取得する手段を学んでも、どのようなアクセスパスでデータを取得するかは後回しになることが多いのではないでしょうか。 商用のシステムで使用されるSQLは、必要なデータを取得できるだけでは不十分で、どれだけ素早く取得できるかも重要です。データ取得の素早さは、SQLに適用されるアクセスパスの良しあしで決まります。そこで、今回は「どんなアクセスパスが適しているか」「どうやってRDBMSに適切なアクセスパスを利用させるか」を以下のような構成で解説します

    データへの最短ルートを確保せよ!(1/4) ― @IT
    tgk
    tgk 2006/08/17
  • Hibernateでインテグレーション層のDAOデザインを考える - @IT

    @Stateless public class OrderEntry { @PersistenceContext EntityManager em; public void enterOrder(int custID, Order newOrder) { Customer cust = (Customer)em.find("Customer", custID); cust.getOrders().add(newOrder); newOrder.setCustomer(cust); } } OrderEntryクラスは、アノーテーション@Statelessがあることからステートレスなセッション・ビーンとして動作することが示されています。また、@PersistentContextによって、EJB 3.0から導入されたパーシスタンスAPIであるEntityManagerをOrderEntryセッ

    tgk
    tgk 2006/08/15
  • 安全なセッション管理を実現するために ― @IT

    HTTPを使用したWebアプリケーションにおいて、安全なセッション管理を行うことは難しい問題である。タブブラウザによる画面の複数起動や、Webブラウザの戻るボタン/更新ボタンの押下といった、予期しない画面遷移に起因するバグの発生に頭を悩ませることは多いだろう。 大きな問題が発生しないならば、画面遷移の仕様上の制限をクライアントに許容してもらう選択肢もあるだろうが、不正な画面遷移を利用したセキュリティホールが存在するならば、放置しておいてよい問題ではなくなる。今回はセッション管理を安全に行うための基的な注意点について解説していこう。 セッション固定攻撃とは何か セッション固定攻撃(Session Fixation)という脆弱性を耳にしたことはあるだろうか。脆弱性そのものの詳しい解説は稿の趣旨ではないため割愛するが、簡潔に説明すると、以下のような手順を踏むことによりセッション情報がハイジャ

    安全なセッション管理を実現するために ― @IT
    tgk
    tgk 2006/08/01
    セッション固定攻撃の解説。ログインしたらsessionIdを新しくしないとダメ
  • メールアドレスの登録チェックが、余計なお世話に?

    メールアドレスの登録チェックが、余計なお世話に?:星野君のWebアプリほのぼの改造計画(8)(3/4 ページ) 重複させたくなければ、重複を許容すればいい? 星野君 「(メールアドレスが流出しただけでもニュースになるくらいだからこれは問題だろうな……)」 1つ脆弱性を見つけることができた時点で、赤坂さんが話し掛けてきた。 赤坂さん 「何か見つけられた?」 星野君 「あ、はい。1つだけですけども……」 赤坂さん 「そかそか。じゃあ、まだ終了までちょっと時間あるけど、いったん見つけた脆弱性確認しよっか」 星野君 「はい」 星野君には、一瞬赤坂さんの顔が曇ったように見えたが、ひとまず見つけた脆弱性の現象やどういった悪用方法が考えられるかなどを説明した。 赤坂さん 「お。ちゃんとそれ見つけたんだね。じゃあ、どういうふうに直したらいい?」 星野君 「えっと……。そこまで考えてなかったです……」 赤坂

    メールアドレスの登録チェックが、余計なお世話に?
    tgk
    tgk 2006/07/27
    パスワードリマインダで「そんなメールアドレスはありません」と画面に表示したら、それは脆弱性
  • @IT:読者調査結果 データベース編(2) データベース設計の現状と課題とは?

    IT読者調査結果:データベース編(2) ~データベース設計の現状と課題とは?~ 小柴 豊 @IT マーケティングサービス担当 2005/3/15 リレーショナルデータベース(RDB)が情報システムの中核としての位置付けを固める一方、アプリケーション開発の領域では、オブジェクト指向アプローチの台頭が目覚ましい。そうした中、データベース設計の手法はどのように変わっていくのだろうか? Database ExpertフォーラムとXML & SOAフォーラムが合同で実施した読者調査の結果から、その現状と課題を紹介しよう。 ■設計業務にかかわる人は全体の8割 まず今回の調査回答者が、情報システムの設計業務にどのような立場でかかわっているのか尋ねた結果が図1だ。全体の84%が何らかの設計業務に従事している中で、「アプリケーションからデータベースまで、一貫して設計している」人が44%に上っている。ではシ

    tgk
    tgk 2006/07/27
    クラス図とER図の両方を描くという人がけっこう多い
  • .NET Frameworkのバージョンを確認する方法 - @IT

    対象ソフトウェア:Windows 2000/Windows XP/Windows Vista/Windows 7/Windows 8/Windows 8.1/Windows 10/Windows Server 2003/Windows Server 2008/Windows Server 2008 R2/Windows Server 2012/Windows Server 2012 R2、.NET Framework 1.0/1.1/2.0/3.0/3.5/4/4.5/4.5.1/4.5.2/4.6 解説 .NET Frameworkとは、Visual Studioなどで開発したCLR(Common Language Runtime)ベースのプログラム(.NETアプリケーション)を実行するために必要なランタイムである。.NETアプリケーションを実行するには、Windows環境に.NET F

    .NET Frameworkのバージョンを確認する方法 - @IT
    tgk
    tgk 2006/06/23
    管理ツールの中に"Microsoft.NET Framework Configuration" というのがあったらとりあえずインストールされているとみなせる
  • Web 2.0アプリ自動生成ツール“Tuigwaa”(1/3) ― @IT

    四次元データ 西岡 悠平/染田 貴志 2006/6/23 エンジニアではない一般ユーザー自らが、Webの操作だけで簡単にWebアプリケーションを作れるソフトウェア“Tuigwaa”。2005年度上期未踏ソフトウェア創造事業に採用されたプロジェクトは、Web 2.0の世界を切り開く純国産ソフトウェアとして大きな注目を集めている。そのコンセプトを紹介しよう。(編集部) ■いつまでもWebアプリ化されない現場 「プロジェクトにかかわっている社員全員の名前、連絡先、所属を今週中にリストにしたい」 「新製品についての説明会を来週行う。ついてはお得意さまへの連絡と参加の可否、人数を把握したい」 このようなシーンを日常の業務の中で見掛けたこと、または経験されたことはありませんか。細かい内容は異なれど、こういった「ある程度急を要し、その都度必要な情報の内容が異なる、そして集められた情報がその後複数人で共

    tgk
    tgk 2006/06/22
  • アドビのAjaxフレームワーク「Spry」を使ってみよう ― @IT

    先月5月11日、米アドビシステムズが発表したAjaxフレームワーク「Spry」は、最低限のプログラミングでAjaxスタイルのWebページ構築を可能にする、Webデザインフレームワークだ。今回は数あるJavaScriptライブラリの中でもユニークなフレームワークであるSpryを紹介し、実際にSpryを使ったサンプルを解説しながらその機能を探っていきたい。 ■Spry framework for Ajax Ajaxが騒がれた昨年から今年にかけて、Ajaxアプリケーション開発のためのJavaScriptライブラリ、フレームワーク、開発環境などの開発が盛んだ。多くのオープンソースコミュニティがライブラリやフレームワークを公開しており、「Prototype」や「script.aculo.us」といったライブラリはすでにメジャーな位置を占めて多くのアプリケーションで採用されている。 また、いくつかの企

    tgk
    tgk 2006/06/21
  • JavaをJavaScriptに変換するグーグルのツールを使ってみよう ― @IT

    グーグルが発表したGoogle Web ToolkitJava言語で作成したクライアントアプリケーションを、JavaScriptHTMLアプリケーションに変換するという、まったく異なるアプローチを持つAJAXアプリ開発ツールだ。簡単なサンプルを動かしてみよう(編集部) 2006年5月17日、米国Googleが、Google Web Toolkitをリリースしました。早速Webサイトを見ると、『Google Web Toolkit - Build AJAX apps in the Java language』(=Java言語でAJAXアプリを造る)という、Java開発者にとって非常に刺激的なキャッチで始まっています。 これまでも、BACKBASE Java Edition、ICESOFT ICEFACES、Nexaweb などAJAX+Javaでの開発に対応するフレームワーク製品または

    tgk
    tgk 2006/06/13
    何だこりゃあ
  • 例外を思いのままに発生できる「DevPartner Fault Simulator」レビュー(1/4) - @IT

    .NET Tools 例外を思いのままに発生できる 「DevPartner Fault Simulator」レビュー ―― 面倒な異常ケース/例外処理のテストを強力サポート ―― 株式会社ピーデー 川俣 晶 2006/06/10 プログラミングで厄介なもの、それは異常ケース 筆者が.NET Frameworkベースで(主にC#による)プログラムを書き始めてから遭遇した思い出深いトラブルは2つある。 その1つは、外部からの通信を処理する機能で発生した問題だった。通信を受け付けると、その通信を処理するスレッドを走らせる仕様だったのだが、どういうわけかスレッドの数が異常に増え、スレッド数の上限に達してそれ以上のリクエストを受け入れられない状態に陥ることがあったのだ。しかし、開発用の環境で問題を再現することができなかった。外部に公開された実運用サーバでのみ発生したのだ。 そこで、.NET Fram

    tgk
    tgk 2006/06/11
    .NET Frameworkのシステム例外を再現するツール
  • GPartedでNTFSパーティションを操作するには - @IT

    GPartedでパーティションを操作するにはで、GPartedのインストールや操作方法について説明した。 GPartedの初期設定で操作可能なファイルシステムは、ext2/3、FAT16/32、ReiserFSなどに限定されているが、各ファイルシステムに対応したパーティション編集ツールを追加することにより、NTFSなどの変更も可能になる。 注:パーティションの操作では、プログラムのバグやハードウェア的な要因などで、ハードディスク上のデータが破壊されることがある。作業を行う際は、事前に必要なファイルのバックアップを取っておくことをお勧めする。また、作業は自己責任で行ってほしい。ちなみに、筆者は商用製品やフリーソフトウェアといった区別とは無関係に、データが破壊された経験がある。 GPartedでNTFSパーティションの編集を行うには、ntfsprogsというソフトウェアが必要となる。ntfsp

    tgk
    tgk 2006/05/31
    GParted
  • 新しい業界標準「SQL99」詳細解説

    オブジェクト指向、Javaを取り入れた 新しい業界標準「SQL99」詳細解説 データベースに対するアクセス言語として成功している業界標準の 「SQL」が、 7年ぶりに改訂の時期を迎えた。 新しく登場する「SQL99」では、オブジェクト指向やJavaを取り入れたものとなり、 リレーショナルなデータのみならず、データアクセス一般に広く利用される アクセス言語としての地位を目指したものとなっている。 ここではその詳細を3章に分けて説明していこう 室住正晴+松居由美子 日IBMシステムズ・エンジニアリング 2000/6/4(@IT掲載) 1999/10/24(INTEROP MAGAZINE初出) (記事は、ソフトバンク・パブリッシング発行の「INTEROP MAGAZINE」 1999年12月号から3回連載された同名の記事を、筆者、編集部のご厚意により掲載の許諾をいただいたものです。一部再編

    tgk
    tgk 2006/05/23
    初出が99年のふるーい記事。まだ実装されてないとは
  • 表の結合を極めるチューニング・テクニック

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

    表の結合を極めるチューニング・テクニック
    tgk
    tgk 2006/05/22
    ソートマージ結合は結合カラムがnot nullでないと非効率だと指摘されている
  • 素早く正規形を見抜く実践テクニック(1/4) - @IT

    今回のテーマはデータベースエンジニアの必須知識の1つである「正規化」です。正規化は、リレーショナル・データベースのテーブル設計を行ううえで非常に重要なテクニックであり、データベースを設計、実装したことのある方なら一度は正規化に触れているのではないでしょうか。 それほど基的な知識であるにもかかわらず、正規化を説明できる人はなかなかいません。多く聞かれるのが「何となくテーブルを作ると自然に第3正規形になる」とか「実務上は第3正規化まで行えば問題ない」というものです。 ではなぜ「第3正規化まで行えば問題ない」のでしょうか。稿ではひととおり正規化について確認しながら、あまり触れられることのない第3正規化より先の正規化を紹介して、この疑問に答えていきたいと思います。 正規化の位置付け 正規化は、データベース設計全般にかかわる基礎知識ですが、特に論理データモデリングの作業の中で必要になります。稿

    素早く正規形を見抜く実践テクニック(1/4) - @IT
    tgk
    tgk 2006/05/14
    なぜ第3正規形で十分だと言われるのかの答え...だが、もともとそう言われるようになった理由は別にあるのではないかな?という印象
  • SQL Serverというブラックボックスを開いてみる

    SQL Serverというブラックボックスを開いてみる:Dr. K's SQL Serverチューニング研修(1)(1/3 ページ) SQL Serverは一般的にチューニング不要のデータベースと認識されている。しかし基幹系業務システムへの導入が進むにつれて、パフォーマンス・チューニングのニーズは急速に高まってきた。そこで記事では、日におけるSQL Serverコンサルタントの第一人者、熊澤幸生氏にSQL Serverチューニングのノウハウを語っていただくことにした。インタビュアーはSQL Serverへの造詣が深いITジャーナリスト、工藤淳氏が担当する。(編集局) ―― はじめに 「簡単に導入できるのはいいけれど、いざチューニングしようと思うとブラックボックスで手出しできない」と思われがちなSQL Server。だが、当にSQL Serverは“いじれない”のだろうか? 「そんなこ

    SQL Serverというブラックボックスを開いてみる
    tgk
    tgk 2006/02/24
    Dr. K's SQL Serverチューニング研修