タグ

ブックマーク / thinkit.co.jp (5)

  • [Think IT] 第2回:PHPで作ろうConsumer (1/3)

    PHP-OpenIDを使ってみよう 今回は、「Identity Provider(以下、IdP)」の提供するアカウントを利用し、ログイン作業を行う「Consumer」の作成を行いながら、OpenIDの解説を進めていきます。 今回Consumerの作成に使用する言語としてPHPを選びました。実はOpenIDのConsumerやIdPを構築するためのライブラリとして、さまざまな言語向けのものが公開されており、1から構築する必要はありません。 OpenIDの公式サイトである「opdnid.net」にもその一覧 (http://wiki.openid.net/Libraries)が公開されてます。複数あるPHP向けのライブラリから、もっとも一般的な「PHP OpenID Library(JanRain PHP OpenID)」を利用してみることにします。 配布元(http://www.openid

  • [Think IT] 第2回:PHPで作ろうConsumer (1/3)

    PHP-OpenIDを使ってみよう 今回は、「Identity Provider(以下、IdP)」の提供するアカウントを利用し、ログイン作業を行う「Consumer」の作成を行いながら、OpenIDの解説を進めていきます。 今回Consumerの作成に使用する言語としてPHPを選びました。実はOpenIDのConsumerやIdPを構築するためのライブラリとして、さまざまな言語向けのものが公開されており、1から構築する必要はありません。 OpenIDの公式サイトである「opdnid.net」にもその一覧 (http://wiki.openid.net/Libraries)が公開されてます。複数あるPHP向けのライブラリから、もっとも一般的な「PHP OpenID Library(JanRain PHP OpenID)」を利用してみることにします。 配布元(http://www.openid

  • 要求仕様書の標準化プロセス

    「DUNGEON」はソフトウェア開発の各工程において必要とするドキュメント標準を決めて、その具体的なテンプレートを用意したものです。概念的なアプローチとはまったく逆に、アウトプット側から開発プロセスを標準化するという実践的な考え方を重視しています。 これまで7回にわたって、基設計から詳細設計、プログラミング、単体テスト、結合テスト、総合テストという流れに沿って、各プロセスで必要とするドキュメントの標準化を説明してきました。最終回の今回は、その前段のプロセスである要求分析フェーズのアウトプットについて説明します。 みなさんはSLCPという言葉を知っていますか。SLCPとはSoftware Life Cycle Processの略で、ソフトウェアの開発ライフサイクル、つまりこれまで解説してきた基設計から総合テストまでの開発工程を指す言葉です。SLCPの代表的なものは30年前に提唱されたウォ

  • [ThinkIT] 第2回:Subversionによるバージョン管理(前編) (1/3)

    今回は、Subversionによるバージョン管理方法とウノウでの導入事例について前編と後編にわけて紹介していきます。 Subversionとは、無償で利用できるバージョン管理システムです。現在もオープンソースで活発に開発が進んでおり、執筆時点の最新バージョンは1.4.2となります。バージョン管理システムとは、ソースコードや仕様書などを含むドキュメントなど、時間とともに内容が変化するファイルを管理するシステムの総称です。 Subversionと同じようなバージョン管理システムとしては、CVS(Concurrent Version System)が有名ですが、SubversionではこのCVSで使いにくかった点を改良した次世代バージョン管理システムというコンセプトで開発が続けらています。筆者が実際にどちらも利用してみた結論として、導入をおすすめするバージョン管理システムは、やはり「Subver

  • [ThinkIT] 第1回:SQLインジェクションによるデータベース操作 (1/3)

    SQLインジェクションでは、クエリなどの任意データを、データベースが実行するSQL文に挿入します。挿入されたクエリは、意図しないデータを検索したり、データベースの情報を変更したり削除したりするというように、様々な操作をデータベースに行います。問題を実証するために次の例を見てみましょう。 // 問題を実証するための入力 $name = "ilia'; DELETE FROM users;"; mysql_query("SELECT * FROM users WHERE name='{$name}'"); 上記の関数内では、ユーザが指定した名前とnameカラムの値が一致したデータをusersテーブルから取り出すことを想定しています。普通、$nameには、iliaといった文字列のように、アルファベットとスペースからできた文字列が格納されています。 しかしここでは、$nameにまったく新しいクエリ

  • 1