(57)【要約】【課題】  セキュリティ強度が低いアドレスに対するアクセスを受けた場合や望ましくないアクセス方法でアクセスされた場合に、セキュリティ強度が高い通信方法や望ましいアクセス方法に切り替えることを可能にする情報処理装置を提供する。【解決手段】  この情報処理装置は、クライアント装置１１からのリクエストを受信して、リクエストに使用されたアクセス先を指定するアドレスのアドレス情報がセキュリティおよび接続に関して設定された設定情報に適合するか否かを判定する判定手段と、適合しないと判定された場合、設定情報に適合するアドレスを検索し、検索したアドレスをクライアント装置１１へ送信して再リクエストさせるアドレス検索手段とを含む。これらの手段は、ＵＲＬ作成システム２０として構成することができる。【選択図】  図２
2008312016.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置との通信を制御する情報処理装置であって、
前記クライアント装置からのリクエストを受信して、前記リクエストに使用されたアクセス先を指定するアドレスのアドレス情報がセキュリティおよび接続に関して設定された設定情報に適合しているか否かを判定する判定手段と、
適合していないと判定された場合、前記設定情報に適合するアドレスを検索し、検索した前記アドレスを前記クライアント装置へ送信して再リクエストさせるアドレス検索手段とを含む、情報処理装置。
【請求項２】
前記アドレスは、ＩＰアドレスで、前記アドレス情報は、前記ＩＰアドレスのバージョン情報を含み、前記判定手段は、前記ＩＰアドレスのバージョン情報が前記設定情報に含まれるバージョン情報と一致するか否かを判定する、請求項１に記載の情報処理装置。
【請求項３】
前記アドレス情報は、ＩＰｓｅｃ通信するか否かの情報を含む、請求項１に記載の情報処理装置。
【請求項４】
前記アドレス検索手段は、前記情報処理装置および前記クライアント装置が保持する前記設定情報に適合したアドレスを検索する、請求項３に記載の情報処理装置。
【請求項５】
前記設定情報は、セキュリティ強度に関する情報を含み、前記アドレス検索手段が複数のアドレスを検索した場合、前記セキュリティ強度が最も高いアドレスを選択する選択手段をさらに含む、請求項３に記載の情報処理装置。
【請求項６】
前記リクエストとして前記クライアント装置から受信した前記情報処理装置を識別するためのホスト名を含むＵＲＬを、アドレス形式のＵＲＬに変更する変更手段をさらに含む、請求項１に記載の情報処理装置。
【請求項７】
前記設定情報は、前記情報処理装置に対する設定情報と、前記情報処理装置が保持する複数のページのページごとの設定情報とを含む、請求項１に記載の情報処理装置。
【請求項８】
前記情報処理装置は、前記クライアント装置を識別するためのホスト名を基にＤＮＳサーバからＩＰアドレスを取得する取得手段をさらに含み、前記アドレス検索手段は、取得したＩＰアドレスから前記設定情報に適合するＩＰアドレスを検索し、前記選択手段は、前記セキュリティ強度が最も高いＩＰアドレスを選択する、請求項５に記載の情報処理装置。
【請求項９】
優先順位を有する複数のセキュリティポリシーを保存する保存手段と、前記ＩＰアドレスが前記セキュリティポリシーに適合するか否かを判断する判断手段とをさらに含み、前記選択手段は、最も高い優先順位を有する前記セキュリティポリシーに適合したＩＰアドレスを選択する、請求項８に記載の情報処理装置。
【請求項１０】
前記判断手段により複数の前記ＩＰアドレスが同じ優先順位を有する前記セキュリティポリシーに適合すると判断された場合、前記選択手段は、該セキュリティポリシーに適合したＩＰアドレスのうち、前記取得手段が最も先に取得したＩＰアドレスを選択する、請求項９に記載の情報処理装置。
【請求項１１】
前記ＤＮＳサーバから取得したＩＰアドレスと、前記選択手段により選択されたＩＰアドレスと、前記選択されたＩＰアドレスが適合したセキュリティポリシーとをログとして記録する記録手段をさらに含む、請求項９または１０に記載の情報処理装置。
【請求項１２】
前記ＤＮＳサーバから取得されるＩＰアドレスが変更され、これまでＩＰｓｅｃ通信を行っていた前記クライアント装置との通信が非ＩＰｓｅｃ通信となった場合に警告表示を行う警告表示手段を含む、請求項８〜１１のいずれか１項に記載の情報処理装置。
【請求項１３】
前記警告表示手段は、前記ＤＮＳサーバから取得されるＩＰアドレスが変更され、前記選択されたＩＰアドレスが適合する最も高いセキュリティポリシーの順位が下がった場合に警告表示を行う、請求項１２に記載の情報処理装置。
【請求項１４】
クライアント装置との通信を制御するための情報処理装置により可読なプログラムであって、
前記クライアント装置からのリクエストを受信して、前記リクエストに使用されたアクセス先を指定するアドレスのアドレス情報がセキュリティおよび接続に関して設定された設定情報に適合しているか否かを判定するステップと、
適合していないと判定された場合、前記設定情報に適合するアドレスを検索し、検索した前記アドレスを前記クライアント装置へ送信して再リクエストさせるステップとを実行させる、プログラム。
【請求項１５】
前記設定情報は、セキュリティ強度に関する情報を含み、前記再リクエストさせるステップは、複数のアドレスを検索した場合、前記設定情報を参照し、前記セキュリティ強度が最も高いアドレスを選択するステップを含む、請求項１４に記載のプログラム。
【請求項１６】
前記クライアント装置を識別するためのホスト名を基にＤＮＳサーバからＩＰアドレスを取得するステップをさらに実行させ、前記再リクエストさせるステップでは、取得したＩＰアドレスから前記設定情報に適合するＩＰアドレスを検索し、前記選択するステップでは、前記セキュリティ強度が最も高いＩＰアドレスを選択する、請求項１５に記載のプログラム。
【請求項１７】
前記情報処理装置は、優先順位を有する複数のセキュリティポリシーを保持しており、前記ＩＰアドレスが前記セキュリティポリシーに適合するか否かを判断するステップをさらに実行させ、前記選択するステップでは、最も高い優先順位を有する前記セキュリティポリシーに適合したＩＰアドレスを選択する、請求項１５に記載のプログラム。
【請求項１８】
前記判断するステップで、複数の前記ＩＰアドレスが同じ優先順位を有する前記セキュリティポリシーに適合すると判断した場合、前記選択するステップでは、該セキュリティポリシーに適合したＩＰアドレスのうち、最も先に取得したＩＰアドレスを選択する、請求項１７に記載のプログラム。
【請求項１９】
前記ＤＮＳサーバから取得したＩＰアドレスと、前記選択手段により選択されたＩＰアドレスと、前記選択されたＩＰアドレスが適合したセキュリティポリシーとをログとして記録するステップをさらに実行させる、請求項１７または１８に記載のプログラム。
【請求項２０】
前記ＤＮＳサーバから取得されるＩＰアドレスが変更され、これまでＩＰｓｅｃ通信を行っていた前記クライアント装置との通信が非ＩＰｓｅｃ通信となった場合に警告表示を行うステップを実行させる、請求項１６〜１９のいずれか１項に記載のプログラム。
【請求項２１】
前記ＤＮＳサーバから取得されるＩＰアドレスが変更され、前記選択されたＩＰアドレスが適合する最も高いセキュリティポリシーの順位が下がった場合に警告表示を行うステップを実行させる、請求項１６〜１９のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リクエストのためにアドレスを指定して行われた通信が、セキュリティおよび接続設定情報に適合していない場合、その設定情報に適合する別のアドレスで再リクエストさせて通信を制御する情報処理装置およびその処理を実現するためのプログラムに関する。
【背景技術】
【０００２】
クライアント装置とサーバ装置との間の通信は、クライアント装置からのリクエストに対してサーバ装置がレスポンスを返すという形式で行われる。クライアント装置からのリクエストは、インターネット上のリソースのロケーションを指し示すＵＲＬとされる。このＵＲＬは、ＵＲＬが指し示すリソースの種類を表すスキーム名と、リソースを提供するインターネット上のサーバ装置を識別するためのホスト名と、サーバ装置内でのＨＴＭＬ文書を示すパス名とから構成される。スキーム名としては、一般的に、Ｈｔｔｐ、Ｆｔｐといった通信プロトコルのプロトコル名とされている。
【０００３】
従来、こういったインターネット上で、安全にデータをやりとりするために、サーバ装置ではクライアント装置からのＵＲＬのスキーム名、すなわちプロトコル名を変更することが行われている。例えば、上記のＨｔｔｐを、インターネット上で情報を暗号化し、認証を行うＳＳＬ機能が付加されたＨｔｔｐｓに変更することが知られている。
【０００４】
また、クライアント装置からのＵＲＬに対して、サーバ装置から他のサーバ装置へ変更するために、ホスト名を変更することも行われている。
【０００５】
さらに、ＩＰｓｅｃといったセキュリティ通信のためのプロトコルを使用したセキュリティ通信技術も採用されている。このＩＰｓｅｃは、７階層のネットワークプロトコルの構造モデルの第３層であるネットワーク層で認証、暗号化を行うセキュリティプロトコルである。
【０００６】
ＩＰｓｅｃを使用した通信では、クライアント装置に対応してセキュリティ通信のレベルを設定している。このため、複数のユーザが１つのクライアント装置を使用する場合、セキュリティ通信を必要としないユーザや、より高いセキュリティ通信レベルを望むユーザに対しても、同じセキュリティ通信レベルで通信を行うことができる。
【０００７】
そこで、クライアント装置を使用するユーザの情報とセキュリティ種を対応付けた対応情報を記憶しておき、ユーザの情報を基に、対応するセキュリティ種を選択して、ユーザごとにセキュリティ通信レベルを設定することができる技術が提案されている（特許文献１参照）。
【０００８】
また、ホスト名から対応するＩＰアドレスを取得できるようにするＤＮＳサーバとの通信に第１のセキュリティレベルを設定し、ＤＮＳサーバから取得したアドレスの相手との通信に第１のセキュリティレベルより高い第２のセキュリティレベルを設定し、ＤＮＳサーバにメッセージを送信する場合とＤＮＳサーバから取得したアドレスの相手にメッセージを送信する場合で、異なる匿名アドレスを送信元アドレスとして設定する技術が提案されている（特許文献２参照）。このように異なるセキュリティレベルを設定することで、ユーザが所望するセキュリティレベルで通信を暗号化して、適切なきめの細かいアクセス制御を行うことができる。
【特許文献１】特開２００１−２９８４４９号公報
【特許文献２】特許第３７９６４９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
現在、サーバ装置は、複数のＩＰアドレスを保持することが可能であり、それら複数のＩＰアドレスは、アドレス毎にセキュリティ強度が異なっている。このような状況であっても、クライアント装置は、サーバ装置に対して、ホスト名でアクセスすることが多い。この場合、クライアント装置が使用するＩＰアドレスは、ＤＮＳサーバ等により行われる、ホスト名からＩＰアドレスを求める名前解決の結果で決まり、ユーザが指定することはできない。
【００１０】
また、クライアント装置は、保存機能等を使用してサーバ装置にアクセスすることが多い。この場合、セキュリティ強度が低いアドレスが保存されていれば、そのセキュリティ強度が低いアドレスに繰り返してアクセスされることになる。
【００１１】
さらに、セキュリティ強度が高いアドレスが保存された場合であっても、サーバ装置の状態が変わった場合、セキュリティ強度が低くなる可能性がある。この場合にも、ユーザは、セキュリティ強度が低いアドレスでアクセスされることになる。
【００１２】
ユーザが指定するホスト名のサーバ装置にアクセスできさえすればよい場合には問題は生じないが、データを安全にやりとりするため、常にセキュリティ強度が高い通信方法に限定したい場合や、サーバ装置が望む特定のアクセス方法に限定したい場合には問題が生じる。
【００１３】
サーバ装置が、セキュリティ強度が低いアドレスに対するアクセスを受けた場合に拒否することで通信を制限することはできるが、この場合、ユーザがサーバ装置にアクセスするたびにＩＰアドレスを調べる必要があり、時間と労力がかかり、不便である。
【００１４】
そこで、セキュリティ強度が低いアドレスに対するアクセスを受けた場合や、望ましくないアクセス方法でアクセスされた場合でも、ユーザが時間や労力を要することなく、セキュリティ強度が高い通信方法や特定のアクセス方法に切り替えることを可能にする装置およびその処理を実現するためのプログラムの提供が望まれている。
【課題を解決するための手段】
【００１５】
本発明は、上記課題に鑑み、サーバ装置のセキュリティに関する設定値を保持するセキュリティ設定テーブル、サーバ装置の全ＩＰアドレス情報を保持する機器アドレステーブル、サーバ装置のアドレス情報とそのアドレスとのセキュアな通信相手の情報を持つセキュリティアドレス設定テーブルを参照し、セキュアなアドレスを検索し、そのアドレスを使用してＵＲＬを作成し、クライアント装置へそのＵＲＬを送信する機能を備える情報処理装置を提供する。クライアント装置は、そのＵＲＬを受け取り、自動的に再リクエストを行い、情報処理装置は、そのＵＲＬを基に、レスポンスを返す。これにより、ユーザが時間や労力を要することなく、セキュリティ強度が高い通信方法に切り替えることができる。
【００１６】
すなわち、クライアント装置との通信を制御する情報処理装置であって、クライアント装置からのリクエストを受信して、そのリクエストに使用されたアクセス先を指定するアドレスのアドレス情報がセキュリティおよび接続に関して設定された設定情報に適合しているか否かを判定する判定手段と、適合していないと判定された場合、設定情報に適合するアドレスを検索し、検索したアドレスをクライアント装置へ送信して再リクエストさせるアドレス検索手段とを含む、情報処理装置が提供される。
【００１７】
このように、情報処理装置に保持されている設定情報に適合するアドレスを使用してアクセスさせることで、コンテンツや情報等をセキュリティ制御することができ、アクセス方法を制限することができるため、セキュリティ保護が容易になる。一般に、セキュリティを強化すると、ユーザビリティが低下するが、本発明の情報処理装置では自動的にセキュリティ強度が高いアドレス情報に変換することができるため、ユーザビリティが低下することはない。
【００１８】
上記のアドレスは、ＩＰアドレスで、アドレス情報は、そのＩＰアドレスのバージョン情報を含み、判定手段は、そのＩＰアドレスのバージョン情報が、設定情報に含まれるバージョン情報と一致するか否かを判定する。ＩＰアドレスのバージョン情報としては、３２ビットのアドレスフィールドをもつＩＰｖ４であればｖ４、１２８ビットのアドレスフィールドをもち、セキュリティ機能を実装したＩＰｖ６であればｖ６である。このようなアドレスバージョンごとのセキュリティ設定をすることが容易になることで、セキュリティ強化を図ることができる。ＩＰｖ６アドレスは、Ｍａｃアドレスとの関連が強く、ＩＰｖ６アドレスのみのアクセス制御を行うことができれば、装置単位でのアクセス制御が容易となる。また、装置単位のページを用意することも容易となる。
【００１９】
アドレス情報は、ＩＰｓｅｃ通信するか否かの情報を含むことができる。例えば、アドレス情報では非ＩＰｓｅｃ通信という情報が含まれ、設定情報ではＩＰｓｅｃ通信という情報が含まれている場合、判定手段は、設定情報に適合しないと判定し、アドレス検索手段は、セキュアなアドレスとして、ＩＰｓｅｃ通信可能なアドレスを検索する。アドレス検索手段は、検索したＩＰｓｅｃ通信可能なアドレスを送信し、そのアドレスを使用して再リクエストさせる。このように、セキュアなアドレスに変更することで、非セキュアな通信時に、サーバ装置が提供するコンテンツや情報がネットワーク上に流れなくなり、それによって、セキュリティを強化することができる。
【００２０】
アドレス検索手段は、情報処理装置およびクライアント装置が保持するアドレスを検索する。これにより、現在の通信だけではなく、情報処理装置とクライアント装置との間の複数のアクセス方法を選択することが可能となる。
【００２１】
設定情報は、セキュリティ強度に関する情報を含むことができ、アドレス検索手段が複数のアドレスを検索した場合、セキュリティ強度が最も高いアドレスを選択する選択手段をさらに含むことができる。このように、最も高いセキュリティ強度のアドレスに変換することができることにより、クライアント装置全体のセキュリティ強化が容易になる。
【００２２】
上記リクエストとして、クライアント装置から受信した情報処理装置を識別するためのホスト名を含むＵＲＬを、アドレス形式のＵＲＬに変更する変更手段をさらに含むことができる。ホスト名でのアクセスは、常に同じアドレスでアクセスされることが保障されないので、複数の通信の中で、セキュアな通信と非セキュアな通信が混在する可能性がある。しかしながら、アドレス形式のＵＲＬにすることで、そのような混在をなくし、アクセス方法を限定することができる。
【００２３】
設定情報は、情報処理装置に対する設定情報と、情報処理装置が保持する複数のページのページごとの設定情報とを含むことができる。これにより、ページ単位の通信制御が可能となり、ページ全体が非セキュアな通信を許可する場合でも、ページ単位でセキュアなページを用意することができる。
【００２４】
情報処理装置は、ホスト名を基にＤＮＳサーバからＩＰアドレスを取得する取得手段をさらに含む。アドレス検索手段は、取得したＩＰアドレスから設定情報に適合するＩＰアドレスを検索し、選択手段は、セキュリティ強度が最も高いＩＰアドレスを選択する。これにより、通信するたびに、セキュリティ強度が変化することがなく、ユーザが望むセキュリティ強度で通信を行うことができる。
【００２５】
また、優先順位を有する複数のセキュリティポリシーを保存する保存手段と、ＩＰアドレスがセキュリティポリシーに適合するか否かを判断する判断手段とをさらに含む。この場合、選択手段は、最も高い優先順位を有するセキュリティポリシーに適合したＩＰアドレスを選択する。これにより、通信するたびに、セキュリティ強度が変化することがなく、ユーザが望むセキュリティ強度で通信を行うことができる。
【００２６】
判断手段により複数のＩＰアドレスが同じ優先順位を有するセキュリティポリシーに適合すると判断された場合、選択手段は、該セキュリティポリシーに適合したＩＰアドレスのうち、取得手段が最も先に取得したＩＰアドレスを選択することができる。これにより、カスタマイズされたＤＮＳサーバにおいて、所定の順序で複数のＩＰアドレスを取得する場合に、セキュリティ強度が同じであれば、ＤＮＳサーバ側で優先順位を制御することができる。
【００２７】
ＤＮＳサーバから取得したＩＰアドレスと、選択手段により選択されたＩＰアドレスと、選択されたＩＰアドレスが適合したセキュリティポリシーとをログとして記録する記録手段をさらに含むことができる。これらをログとして記録しておくことで、通信の可否やセキュリティ強度を確認することができ、セキュリティポリシーの見直しや、通信不具合時の解析に、そのログを使用することができる。
【００２８】
また、ＤＮＳサーバから取得されるＩＰアドレスが変更され、これまでＩＰｓｅｃ通信を行っていたクライアント装置との通信が非ＩＰｓｅｃ通信となった場合に警告表示を行う警告表示手段を含むことができる。このような状況において警告表示することで、セキュリティポリシーの設定見直しやＤＮＳサーバの登録情報の見直しをユーザに促し、情報漏洩の危険性を低下させることができる。
【００２９】
警告表示手段は、上記のほか、ＤＮＳサーバから取得されるＩＰアドレスが変更され、選択されたＩＰアドレスが適合する最も高いセキュリティポリシーの順位が下がった場合に警告表示を行うことができる。これにより、セキュリティポリシーの見直しや、ＤＮＳサーバの登録情報の見直しをユーザに促し、ユーザが意図しないセキュリティ強度による通信が行われる危険性を低下させることができる。
【００３０】
本発明によれば、上記の処理をプログラムとして構成し、情報処理装置にそのプログラムを実行させることにより実現することもできる。これは、コンピュータ可読なプログラムとして提供することができる。
【発明を実施するための最良の形態】
【００３１】
図１は、本発明の情報処理装置の一つの実施形態であるサーバ装置を含むネットワーク機器構成を例示した図である。図１では、サーバ装置１０と、クライアント装置１１と、ＤＮＳサーバ１２とが、２つのルータ１３、１４が存在するネットワーク１５に接続されている。サーバ装置１０とクライアント装置１１は、２つのルータ１３、１４から配布されるプレフィックス情報によって、２つのＩＰアドレスを有している。
【００３２】
例えば、ルータ１３からプレフィックス情報として、２００１：１：２：３：：／６４が配布されると、サーバ装置１０には、２００１：１：２：３：：２といったＩＰアドレスが登録され、クライアント装置１１には、２００１：１：２：３：：３といったＩＰアドレスが登録される。また、ルータ１４からプレフィックス情報として、２００１：１：２：５：：／６４が配布されると、サーバ装置１０には、２００１：１：２：５：：２といったＩＰアドレスが登録され、クライアント装置１１には、２００１：１：２：５：：３といったＩＰアドレスが登録される。この結果、ＤＮＳサーバ１２は、サーバ装置１０の登録情報として、２００１：１：２：３：：２、２００１：１：２：５：：２といった２つのＩＰアドレスが登録され、クライアント装置１１の登録情報として、２００１：１：２：３：：３、２００１：１：２：５：：３といった２つのＩＰアドレスが登録される。
【００３３】
サーバ装置１０は、上記のように２つといった複数のＩＰアドレスを持つことができ、また、通信を制御するために参照されるセキュリティおよび接続に関して設定された設定情報を保持している。サーバ装置１０は、クライアント装置１１からリクエストを受信すると、ＤＮＳサーバ１２に問い合わせ、サーバ装置１０に対して登録されている１つのＩＰアドレスを取得し、そのＩＰアドレスでリクエストを受ける。サーバ装置１０は、このＩＰアドレスのアドレス情報が設定情報に適合しているか否かを判定する。設定情報に適合していない場合には、サーバ装置１０が保持するＩＰアドレスのうち、設定情報に適合するセキュアなアドレスを検索する。
【００３４】
サーバ装置１０は、検索したアドレスで再リクエストさせるように、再リクエストさせるためのＵＲＬを作成する。また、サーバ装置１０は、ＤＮＳサーバ１２へクライアント装置１１に対する名前解決要求を送り、ＤＮＳサーバ１２からクライアント装置１１が保持するＩＰアドレスを取得することができる。ＤＮＳサーバ１２は、名前解決要求を受け取ると、上記の２つのＩＰアドレスを不定な順序で返信する。サーバ装置１０は、ＤＮＳサーバ１２からＩＰアドレスを受け取り、受け取ったＩＰアドレスの中から、設定情報に適合するセキュアなアドレスを検索し、そのセキュアなアドレスを使用してレスポンスを返す。このレスポンスでは、再リクエストさせるためのＵＲＬが返される。
【００３５】
クライアント装置１１は、そのＵＲＬを受け取り、自動的にそのＵＲＬで再リクエストを行う。このＵＲＬでのリクエストは、サーバ装置１０の設定情報に適合したセキュアなアドレスを使用して行われるため、サーバ装置１０は、再度リクエストさせるためのＵＲＬを生成することなく、そのアドレスで指定されたＷｅｂページをクライアント装置１１へ返信する。このセキュアなアドレスは、クライアント装置１１に登録情報として登録され、それ以降の通信は、このアドレスを使用して行われる。これにより、通信のセキュリティを強化することができる。
【００３６】
サーバ装置１０は、上記の処理を実行するために、ソフトウェアとして、アプリケーション、ユーザＩ／Ｆ、ネットワーク制御部、ＯＳとを備える。この場合、アプリケーションがネットワーク制御部を通してクライアント装置１１のホスト名の名前解決や通信等を行うことができる。ＯＳは、ネットワークプロトコルおよびネットワーク通信ドライバを備えていて、ネットワーク通信を行うことができる。
【００３７】
図１では、ネットワーク機器構成として、２つのルータ１３、１４が存在する例を示したが、クライアント装置１２が２つのネットワークインタフェースを持つような場合であってもよい。
【００３８】
図２は、自動的にセキュアなアドレスへ切り替える機能を実現するサーバ装置１０のソフトウェア構成の詳細を示したブロック図である。図２に示す各システム等は、アプリケーションおよびネットワーク制御部に含まれるものである。このサーバ装置１０は、ＵＲＬ作成システム２０を有し、上記の判定およびセキュアなアドレスで再リクエストさせる処理を行う。
【００３９】
ＵＲＬ作成システム２０は、サーバ装置１０の設定情報である、セキュリティ設定テーブル２１、セキュリティアドレス設定テーブル２２、機器アドレステーブル２３を参照し、設定情報に適合しているか否かを判定し、適合していない場合にその設定情報に適合するセキュアなアドレスを検索して、再リクエストさせるためのＵＲＬを作成し、クライアント装置１１に送る。
【００４０】
セキュリティ設定テーブル２１は、サーバ装置１０全体のセキュリティに関する設定情報を保持する。図３に、セキュリティ設定テーブル２１を例示する。図３では、ＷＷＷ（World Wide Web）を利用する場合のポート番号８０の設定、セキュアなＷＷＷを利用する場合のポート番号４４３の設定、ｖ４やｖ６といったアドレスバージョンの設定、アドレスバージョン転送機能設定、ＳＳＬ設定（暗号化設定）、ＩＰｓｅｃ設定、ポート番号転送機能設定、ＨＴＴＰポート番号設定、ＳＳＬポート番号設定といった各設定情報を保持している。
【００４１】
セキュリティアドレス設定テーブル２２は、セキュアな通信方法に関する接続設定情報を保持しており、サーバ装置１０のアドレス情報と、そのアドレスとセキュアな通信相手の情報とを有している。図４にセキュリティアドレス設定テーブル２２を例示する。図４では、ＩＰｖ４やＩＰｖ６といったアドレスタイプ、サーバ装置１０のローカルアドレス、クライアント装置１１等の通信相手のリモートアドレス、要求レベル、セキュリティレベルを保持している。
【００４２】
機器アドレステーブル２３は、サーバ装置１０のすべてのＩＰアドレス情報を保持する。図５に機器アドレステーブル２３を例示する。図５に示すテーブルは、ＩＰｖ４の１つのＩＰアドレスと、ＩＰｖ４に比較してセキュリティ強度が高いＩＰｖ６の３つのＩＰアドレスとを保持している。
【００４３】
なお、クライアント装置１１からのリクエストは、ｈｔｔｐｄ２４で受け取り、ｌｉｂｈｔｔｐ２５、ｌｉｂｇｗｗｗ２６、ｌｉｂａｃａｃｉａ２７を経由してＵＲＬ作成システム２０へ送られる。また、要求されたＷｅｂページは、ＷＰＦ２８で作成され、ｌｉｂａｃａｃｉａ２７、ｌｉｂｇｗｗｗ２６、ｌｉｂｈｔｔｐ２５、ｈｔｔｐｄ２４を経由してクライアント装置１１へ返信される。ＵＲＬ作成システム２０は、アドレスバージョン変換システム２９、セキュア設定要求取得システム３０、セキュアアドレス取得システム３１を含む。ｈｔｔｐｄ２４等の詳細については後述する。
【００４４】
サーバ装置１０におけるアドレス切り替え処理を説明する前に、従来のＳＳＬ変換、すなわちｈｔｔｐからｈｔｔｐｓへ変換する処理について簡単に説明する。図６は、そのＳＳＬ変換処理のシーケンスを例示した図である。クライアント装置６０が保持するＷｅｂブラウザから、図７に示す「http://serverIP/test.cgi」というリクエストが出された場合、サーバ装置は、「serverIP」というホスト名をＤＮＳサーバへ送り、ＤＮＳサーバから名前解決の結果として１つのＩＰアドレスを取得し、このＩＰアドレスでリクエストを受ける。
【００４５】
従来のサーバ装置は、ｈｔｔｐｄ６１で、そのリクエストを受け取り、ｌｉｂｈｔｔｐ６２で、図８で示されるリクエストのヘッダから、そのリクエストを解析する。このヘッダは、情報をＷｅｂブラウザに返すように要求していること、ホスト名が「serverIP」であること、アプリケーション名、データ圧縮アルゴリズム、文字コードの指定、接続時間等の情報を含んでいる。
【００４６】
ｌｉｂｇｗｗｗ６３では、ｌｉｂｈｔｔｐ６２で解析された結果を使用し、リクエストすべきモジュールへリクエストを送る。ｌｉｂａｃａｃｉａ６４は、サーバ装置１０において共通の処理を行うためのモジュールで、ログイン管理やモジュールが処理しやすいようにデータ変換等を行う。ＷＰＦ６５は、リクエストされたページを作成し、クライアント装置６０に返すモジュールである。ここでは、ｈｔｔｐをｈｔｔｐｓへ変換して返却し、ｈｔｔｐｓで再リクエストする処理を行うため、ＷＰＦ６５は、リクエストをＵＲＬ作成システム６６へ送る。
【００４７】
ＵＲＬ作成システム６６は、リクエストを受け取ると、セキュリティ設定テーブル６７を参照し、ｈｔｔｐｓへ変換したＵＲＬを作成する。作成されたＵＲＬは、クライアント装置６０へと返却され、別の場所で見つかったことを表す「302エラー」が返される。これにより、クライアント装置６０は、受け取ったＵＲＬを使用して再リクエストし、そのリクエストに応答して、ＷＰＦ６５はページを作成し、そのページをクライアント装置６０へ送る。Ｈｔｔｐｓは、情報を暗号化、認証を行うＳＳＬ機能を備えているため、ｈｔｔｐに比較して安全に情報のやりとりを行うことができる。
【００４８】
上述した従来の処理では、ＩＰアドレスがＤＮＳサーバの名前解決で決まってしまい、ユーザが指定することはできない。サーバ装置は複数のＩＰアドレスをもつことができ、ＩＰアドレスによってセキュリティ強度が異なる。本発明では、セキュリティ強度が低いＩＰアドレスを名前解決によって決定しても、セキュリティ強度が高いＩＰアドレスに変更させ、そのセキュリティ強度が高いＩＰアドレスで再リクエストさせる処理を実現する。以下、その処理を、図９を参照して詳細に説明する。
【００４９】
クライアント装置１１から「http://serverIP/test.cgi」というリクエストがなされ、ＤＮＳサーバ１２への問い合わせの結果、アドレスタイプがＩＰｖ４で、そのＩＰアドレスが「133.139.49.123」であったとする。ｈｔｔｐｄ２４は、そのリクエストを受け取り、ｌｉｂｈｔｔｐ２５は、リクエストを解析する。ｌｉｂｇｗｗｗ２６は、その解析結果を使用して、リクエストすべきモジュールへのリクエストを行う。そのリクエストは、ｌｉｂａｃａｃｉａ２７に対して行われる。ｌｉｂａｃａｃｉａ２７は、ＷＰＦ２８へはリクエストを送らず、セキュリティ設定テーブル２１を参照し、サーバ装置１０全体のセキュリティ設定を確認し、装置全体のセキュリティ制御を行う必要があるか否かを判定する。必要である場合、ｌｉｂａｃａｃｉａ２７は、ＵＲＬ作成システム２０に対して、ＩＰアドレスの変更の必要があるか否かを確認させる。
【００５０】
ＵＲＬ作成システム２０は、セキュリティ設定テーブル２１を参照し、設定情報を確認することにより、ＩＰアドレスの変更の必要性を判定する。この確認の結果、アクセスを禁止したい場合、ＵＲＬ作成システム２０は、ｌｉｂａｃａｃｉａ２７に対し、「404 Not Found エラー」を返す。この「404 Not Foundエラー」は、ページが見つからないときに返されるメッセージである。これを受け取ったｌｉｂａｃａｃｉａ２７は、ｌｉｂｇｗｗｗ２６、ｌｉｂｈｔｔｐ２５、ｈｔｔｐｄ２４を経由し、クライアント装置１１に「404
Not Foundエラー」を返す。これを受け取ったユーザは、ページがないことを理解する。この場合、サーバ装置１０が、そのＵＲＬでのアクセスを禁止していることになる。
【００５１】
セキュリティ設定テーブル２１において、よりセキュアな通信方法あるいはサーバ装置１０が指定する通信方法に切り替える設定となっている場合には、ＵＲＬ作成システム２０は、「302エラー」と、再リクエストさせるＵＲＬとを作成し、ｌｉｂａｃａｃｉａ２７に返す。図９に示される処理シーケンスでは、再リクエストさせるＵＲＬが、「http://1234:1234:222」とされている。ｌｉｂａｃａｃｉａ２７は、「302エラー」およびこのＵＲＬを、ｌｉｂｇｗｗｗ２６、ｌｉｂｈｔｔｐ２５、ｈｔｔｐｄ２４を経由し、クライアント装置１１に返す。
【００５２】
「302エラー」を受け取ったクライアント装置１１が保持するＷｅｂブラウザは、同時に指定されたＵＲＬに対して再リクエストを行う。すなわち、サーバ装置１０に対し、「http://1234:1234:222」でアクセスする。ここで、「1234:1234:222」と「133.139.49.123」とは共に、同一のサーバ装置１０のＩＰアドレスである。
【００５３】
再度リクエストを受けたサーバ装置１０は、先の処理と同様に、リクエストを解析し、リクエストを処理すべきモジュールへリクエストを送り、セキュリティ設定テーブル２１を参照して、装置全体のセキュリティ設定を確認し、装置全体のセキュリティ制御を行う必要があるか否かを判定する。必要である場合、ｌｉｂａｃａｃｉａ２７は、ＵＲＬ作成システム２０に対して、ＩＰアドレスの変更の必要があるか否かを確認させる。
【００５４】
再度リクエストを受けたＵＲＬ作成システム２０は、再度、同様に変更の必要性を確認するが、この場合は、サーバ装置１０の設定で望まれるアドレスであるため、変更の必要性がないことがわかり、その結果をｌｉｂａｃａｃｉａ２７に返す。変更の必要性がないことを受け取ったｌｉｂａｃａｉａ２７は、ページ作成処理をＷＰＦ２８に依頼し、ＷＰＦ２８が、Ｗｅｂページを作成し、ｌｉｂｇｗｗｗ２６、ｌｉｂｈｔｔｐ２５、ｈｔｔｐｄ２４を経由し、クライアント装置１１に送る。
【００５５】
サーバ装置１０が望まないアドレスでアクセスされた場合、Ｗｅｂページは送らず、サーバ装置１０が望むアドレスである場合にのみＷｅｂページを送る。セキュリティで守りたい情報は、Ｗｅｂページ内にしか存在しないため、サーバ装置１０が望まないアドレスである場合には、情報が配信されず、その結果、セキュリティを保持することができる。
【００５６】
図１０を参照して、ＵＲＬ作成システム２０における処理を詳細に説明する。ＵＲＬ作成システム２０は、ｌｉｂａｃａｃｉａ２７からＵＲＬ作成依頼を受けて、処理を開始する（Ｓ１０００）。まず、サーバ装置１０のすべてのＩＰアドレス情報を保持する機器アドレステーブル２３を参照し（Ｓ１００１）、全ＩＰアドレス情報を使用して検索対象テーブルを作成する（Ｓ１００２）。この検索対象テーブルは、この処理のために一時的に作られるものであり、例えば、図１１に示すような機器アドレス設定テーブルの情報をコピーし、それに、各アドレスがＩＰｓｅｃ通信か、非ＩＰｓｅｃ通信かを示す情報を付加したものとすることができる。なお、ＩＰｓｅｃは、暗号技術を用いたＩＰパケット単位でのデータの改ざん防止および秘匿機能を提供するプロトコルである。
【００５７】
クライアント装置１１から送信されたリクエストを解析し、アドレスバージョンの変更の必要があるか否かを確認する（Ｓ１００３）。この確認処理では、どのアドレスバージョンに変更するかを決定することができる。この確認処理は、図２に示すＵＲＬ作成システム２０のアドレスバージョン変換システム２９により行われる。
【００５８】
アドレスバージョンの変更は、セキュリティを考慮し、よりセキュリティ強度が高いアドレスバージョンでアクセス制御したい場合等に行うことができる。アドレスバージョン変換システム２９により実行される処理を図１２に例示する。
【００５９】
処理を開始し（Ｓ１２００）、初めに、リクエストを解析し、Ｗｅｂページを要求するために使用されたリクエストアドレスと、クライアント装置１１のアドレスとを取得し、アドレスバージョンを判断する（Ｓ１２０１）。例えば、アドレスタイプがＩＰｖ４であれば、そのアドレスバージョンはｖ４である。セキュリティ設定テーブルを参照し、Ｗｅｂバージョン設定を確認する（Ｓ１２０２）。このセキュリティ設定テーブルでは、例えば、Ｗｅｂバージョン設定のＩＰｖ６が「ｏｐｅｎ」に設定され、ＩＰｖ４は「ｃｌｏｓｅ」とされ、アドレスバージョンｖ６が設定されているものとすることができる。
【００６０】
通信に使用されているアドレスバージョン、すなわちリクエストアドレスおよびクライアントアドレスのアドレスバージョンと、設定情報として設定されているアドレスバージョンが同一であるか判定する（Ｓ１２０３）。上記の例では、通信に使用されているアドレスバージョンがｖ４で、設定情報として設定されているアドレスバージョンがｖ６であるため、異なると判定する。なお、アドレスバージョンが同一であると判定した場合、アドレスバージョンを変更する必要がないため、変更なしと決定する（Ｓ１２０４）。この場合、そのアドレスで接続することに問題はなく、変更の必要はない。
【００６１】
アドレスバージョンが異なると判定した場合、セキュリティ設定テーブル２１を参照し、アドレスバージョン転送機能を確認する（Ｓ１２０５）。その転送機能が有効であるか否かを判定し（Ｓ１２０６）、無効である場合、「404 Not Found エラー」となる（Ｓ１２０７）。
【００６２】
有効である場合、すなわち転送機能が「ＯＮ」である場合、転送先のアドレスバージョンの設定を確認する（Ｓ１２０８）。通信に使用されているアドレスバージョンが転送先のアドレスバージョンと異なるか否かを判定する（Ｓ１２０９）。転送先のアドレスバージョンの設定が「ｃｌｏｓｅ」である場合、すなわち上記の例で「ＩＰｖ６：ｃｌｏｓｅ」である場合、「404 Not Found エラー」となる（Ｓ１２０７）。
【００６３】
転送先のアドレスバージョンの設定が「ｏｐｅｎ」である場合、すなわち上記の例で「ＩＰｖ６：ｏｐｅｎ」である場合、転送方法を決定する（Ｓ１２１０）。この例では、通信に使用されているアドレスバージョンがｖ４であるため、ｖ６への変更が必要であることを処理結果として返す。このようにして処理結果を返すと、正常終了となり（Ｓ１２１１）、この処理を終了する（Ｓ１２１２）。
【００６４】
再び図１０を参照して、Ｓ１００３でアドレスバージョンの変更の必要があるか否かを確認した後、この結果が正常終了したか判定する（Ｓ１００４）。エラーとなった場合、クライアント装置１１に対し、「404 Not Found エラー」を返す（Ｓ１００５）。正常終了した場合、この結果が、ｖ４からｖ６への変更かを判定する（Ｓ１００６）。ｖ４からｖ６への変更である場合には、一時的に作成された検索対象テーブルからＩＰｖ４に関する情報を削除する（Ｓ１００７）。その結果、ＩＰｖ６に関する情報のみが残ることになる。
【００６５】
Ｓ１００６でｖ４からｖ６への変更でないと判定した場合、ｖ６からｖ４への変更であるかを判定する（Ｓ１００８）。ｖ６からｖ４への変更である場合、一時的に作成された検索対象テーブルからＩＰｖ６に関する情報を削除する（Ｓ１００９）。いずれでもない場合、特に指定がなく、変更なしとされる（Ｓ１０１０）。
【００６６】
次に、ＩＰｓｅｃの必要性を判定する（Ｓ１０１１）。このＩＰｓｅｃは、アドレス毎にセキュリティ通信の設定を行うことができる。このため、複数のアドレスをもつ機器では、ＩＰｓｅｃに設定されたアドレスと非ＩＰｓｅｃに設定されたアドレスとをもつことで、セキュアでない通信からセキュアな通信に変更することができる。このＩＰｓｅｃの必要性を判定する処理は、図２に示すＵＲＬ作成システム２０のセキュア設定要求取得システム３０により行われる。このセキュア設定要求取得システム３０により実行される処理を図１３に例示する。
【００６７】
この判定処理を開始する（Ｓ１３００）と、まず、リクエストを解析し、クライアント装置１１のアドレスを確認する（Ｓ１３０１）。セキュアな通信方法に関する情報を保持するセキュリティアドレス設定テーブル２２を参照し（Ｓ１３０２）、現在の通信状態を確認する（Ｓ１３０３）。セキュリティ設定テーブルを参照し、ＩＰｓｅｃ設定を確認する（Ｓ１３０４）。
【００６８】
次に、ＩＰｓｅｃ通信のみに設定されているか判定する（Ｓ１３０５）。Ｓ１３０５でＩＰｓｅｃ通信のみに設定されている場合、現在の通信状態と比較し（Ｓ１３０６）、現在の通信状態が同じＩＰｓｅｃ通信であるか否かを判定する（Ｓ１３０７）。同じＩＰｓｅｃ通信であれば、変更を必要としないと決定し、正常終了となる（Ｓ１３０８）。現在の通信状態がＩＰｓｅｃ通信でなければ、非ＩＰｓｅｃ通信であり、一時的に作成された検索対象テーブルからＩＰｓｅｃ通信アドレスを検索する（Ｓ１３０９）。ＩＰｓｅｃ通信アドレスが存在するか否かを判定し（Ｓ１３１０）、存在する場合、そのアドレスに変更する必要があると決定し、Ｓ１３０８へ進み、正常終了となる。これに対し、ＩＰｓｅｃ通信アドレスが存在しない場合、変更するアドレスがないため、エラーとなる（Ｓ１３１１）。なお、正常終了またはエラーとなった時点で、このＩＰｓｅｃの必要性を判定する処理は終了する（Ｓ１３１２）。
【００６９】
Ｓ１３０５でＩＰｓｅｃ通信のみに設定されていない場合、セキュリティ設定テーブルでＩＰｓｅｃ優先に設定されているか判定する（Ｓ１３１３）。ＩＰｓｅｃ通信のみの場合は、ＩＰｓｅｃ通信以外は許可されないが、このＩＰｓｅｃ優先では、ＩＰｓｅｃ通信アドレスが存在すればＩＰｓｅｃ通信が優先され、存在しなければ非ＩＰｓｅｃ通信でも許可される設定である。
【００７０】
ＩＰｓｅｃ優先に設定されている場合、現在の通信状態と比較し（Ｓ１３１４）、現在の通信状態が同じＩＰｓｅｃ通信であるか否かを判定する（Ｓ１３１５）。現在の通信状態が同じＩＰｓｅｃ通信であれば、変更を必要としないと決定し、Ｓ１３０８へ進み、正常終了となる。現在の通信状態が非ＩＰｓｅｃ通信であれば、一時的に作成された検索対象テーブルからＩＰｓｅｃ通信アドレスを検索する（Ｓ１３１６）。ＩＰｓｅｃ通信アドレスが存在する場合、そのアドレスに変更する必要があると決定し、Ｓ１３０８へ進み、正常終了となる。これに対し、ＩＰｓｅｃ通信アドレスが存在しない場合、優先されるべきＩＰｓｅｃ通信アドレスがないため、現在の通信に使用されているアドレスを使用することとし、変更を要しないと決定する。この場合もＳ１３０８へ進み、正常終了となる。ＩＰｓｅｃ優先に設定されている場合、上記のように、ＩＰｓｅｃ通信アドレスが存在するか否かに関係なく正常終了となる。
【００７１】
Ｓ１３１３でＩＰｓｅｃ優先に設定されていない場合、ＩＰｓｅｃ／非ＩＰｓｅｃ併用かを判定する（Ｓ１３１７）。併用である場合、ＩＰｓｅｃ通信アドレスおよび非ＩＰｓｅｃ通信アドレスの両方とも許可されるため、変更を要しないと決定し、Ｓ１３０８へ進み、正常終了となる。併用でない場合、現在の通信状態と比較し（Ｓ１３１８）、現在の通信状態が同じ非ＩＰｓｅｃ通信であるかを判定する（Ｓ１３１９）。同じ非ＩＰｓｅｃ通信であれば、変更を必要としないと決定し、Ｓ１３０８へ進み、正常終了となる。これに対し、現在の通信状態がＩＰｓｅｃ通信で、ＩＰｓｅｃ設定が非ＩＰｓｅｃ通信のみの場合、Ｓ１３１１へ進み、エラーとなる。
【００７２】
再び図１０を参照すると、Ｓ１０１１でＩＰｓｅｃの必要性を判定した後、ＩＰｓｅｃの必要性を判定する処理が正常に終了したか判定する（Ｓ１０１２）。エラーである場合、Ｓ１００５へ進み、クライアント装置１１に対し、「404 Not Found エラー」を返す。正常に終了した場合、図１３に示す処理の結果が変更ありと判定されたかを確認する（Ｓ１０１３）。変更ありの場合、変更すべきアドレスを取得する（Ｓ１０１４）。変更なしの場合、現在の通信に使用されているアドレスが処理結果として取得されたアドレスとなる。これらのアドレスから検索結果テーブルを作成する（Ｓ１０１５）。検索結果テーブルは、例えば、図１４に示すような情報を含むテーブルとすることができる。
【００７３】
図１４に示すテーブルは、ＩＰｖ６で、ＩＰｓｅｃのＩＰアドレスのみとされ、その他の情報として、暗号化アルゴリズム、ハッシュアルゴリズム、暗号化レベルを含んでいる。図１４では、「1234:1234::222」、「1233:1233::222」という２つのＩＰアドレスが変更すべきアドレスとして取得されているのが示されている。このように、複数のＩＰｓｅｃ通信が選択可能な場合には、検索結果テーブルに含まれる暗号化アルゴリズム、ハッシュアルゴリズム、暗号化レベルを、セキュリティ強度に関する情報として使用し、セキュリティ強度が高いアドレスを選択することができる。図１４に示す場合では、暗号化アルゴリズムがＤＥＳに比較して、ＤＥＳを３重に適用した３ＤＥＳの方がよりセキュアであり、また、暗号化レベルも１より２の方が高いことから、「1234:1234::222」が選択される。
【００７４】
検索結果テーブルを参照し、ＩＰアドレスが存在するか判定する（Ｓ１０１６）。ＩＰアドレスが存在しない場合、エラーとなり、Ｓ１００５へ進み、クライアント装置１１に対し、「404 Not Found エラー」を返す。ＩＰアドレスが存在する場合、リクエストアドレスと同じであるかを確認する（Ｓ１０１７）。同じである場合には、正常終了となる（Ｓ１０１８）。すなわち、同じアドレスであるため、ＵＲＬを新しく作成することなく、終了する。異なる場合には、その検索結果テーブルのＩＰアドレスを使用して、新しいＵＲＬを作成する（Ｓ１０１９）。作成後、クライアント装置１１に対し、Ｓ１０２０の「302
エラー」とともに、新しいＵＲＬを返す。クライアント装置１１は、「302 エラー」を受け取り、望むＷｅｂページが別の場所で見つかったことを知り、受け取ったＵＲＬで再リクエストを行う。ＵＲＬ作成システム２０における処理は、Ｓ１００５の「404
Not Found エラー」若しくはＳ１０２０の「302 エラー」が返されたとき、またはＳ１０１８の正常終了したときに、処理が終了する（Ｓ１０２１）。
【００７５】
Ｓ１０１４における処理は、図２に示すＵＲＬ作成システム２０のセキュアアドレス取得システム３１により行われる。セキュアアドレス取得システム３１による処理を、図１５を参照して詳細に説明する。処理を開始し（Ｓ１５００）、リクエストを解析し、クライアント装置１１のアドレスを確認する（Ｓ１５０１）。そのアドレスからホスト名を取得する（Ｓ１５０２）。ＤＮＳサーバ１２に問い合わせ、そのホスト名からクライアントアドレス一覧を取得する（Ｓ１５０３）。
【００７６】
クライアント装置１１の１つのアドレスを選択し、そのアドレスがセキュリティアドレス設定テーブル２２に存在するか確認する（Ｓ１５０４）。そのアドレスが検知できたか判定する（Ｓ１５０５）。検知できない場合、未検知とされる。検知できた場合、検知とされ、検索結果テーブルにそのアドレスおよびそのアドレスに関する情報を追加する（Ｓ１５０６）。次に、すべてのアドレスを確認したか判定する（Ｓ１５０７）。すべてのアドレスを確認していない場合、再びＳ１５０４へ戻り、クライアント装置１１の次のアドレスに対し、同様に判定を行う。
【００７７】
一覧として取得したクライアント装置１１のアドレスのすべてに対し、Ｓ１５０４〜Ｓ１５０６の処理が終了したところで、セキュリティ優先機能を確認する（Ｓ１５０８）。そして、その機能が有効であるかを判定する（Ｓ１５０９）。無効である場合、検索結果テーブルの先頭にあるアドレスを使用して、アドレスを変更する（Ｓ１５１０）。有効である場合、検索結果テーブルに複数のアドレスが含まれるとき、最初の２つのアドレスのセキュリティ強度を比較し、高い方のアドレスのセキュリティ強度とその次のアドレスのセキュリティ強度とを比較することを繰り返す（Ｓ１５１１）。このようにして、最も高いセキュリティ強度のアドレスを決定し、そのアドレスを選択し、その選択したアドレスを変更アドレスとして更新する（Ｓ１５１２）。この更新が終了したところで、変更すべきアドレスを取得する処理を終了する（Ｓ１５１３）。
【００７８】
ＵＲＬ作成システム２０は、セキュアなアドレスを使用してＵＲＬを作成し、作成したＵＲＬでクライアント装置１１に再リクエストさせる。このＵＲＬは、ホスト名ではなく、「1234:1234::222」といったアドレス形式のものとされる。この第１回目の通信で決定されたアドレス形式のＵＲＬは、クライアント装置１１に登録される。このため、Ｗｅｂページ内で同一のサーバ装置１０へのアクセスは相対パスで記述され、第２回目以降のリクエストの通信経路は、第１回目で決定したアクセス経路となる。これにより、Ｗｅｂページ全体のアクセス経路を制御することができる。
【００７９】
ここで、図１５のＳ１５０８で、最も高いセキュリティ強度のアドレスを選択する処理を説明する前に、その処理を実現するためのソフトウェア構成を説明する。図１６は、そのソフトウェアモジュール構成を例示した図である。上述したように、ソフトウェア構成は、アプリケーション１００と、ユーザＩ／Ｆ１１０と、ネットワーク制御部１２０と、ＯＳ１３０とから構成される。ＯＳ１３０は、ネットワーク通信を行うためのネットワークプロトコル１３１とネットワーク通信ドライバ１３２とを備える。この処理を実現するために、ネットワーク制御部１２０は、セキュリティポリシー保存部１２１と、ログ保存部１２２とを含む。セキュリティポリシー保存部１２１は、ユーザＩ／Ｆ１１０を通してユーザが設定するセキュリティポリシー情報を保存している。ログ保存部１２２は、通信に関する情報を記録する。このネットワーク制御部１２０は、セキュリティポリシー保存部１２１に保存されているセキュリティポリシー情報にしたがって通信の制御を行う。
【００８０】
図１７は、アプリケーション１００とクライアント装置１１とが通信を行う場合のシーケンス図である。アプリケーション１００がクライアント装置１１と通信を行う場合、クライアント装置１１のホスト名、例えば「hostA」の名前解決要求をネットワーク制御部１２０に送る。ネットワーク制御部１２０は、ＯＳ１３０に名前解決要求を送り、ＯＳ１３０がＤＮＳサーバ１２に問い合わせ、名前解決を行う。ＤＮＳサーバ１２は、ホスト名「hostA」に該当するＩＰアドレスリストをＯＳ１３０に返答し、ＯＳ１３０はそれをネットワーク制御部１２０に渡す。ネットワーク制御部１２０は、ＩＰアドレスリストから１つＩＰアドレスを選択し、これをアプリケーション１００に渡す。アプリケーション１００は、このＩＰアドレスを基に、クライアント装置１１と通信を行う。
【００８１】
具体的な処理を説明する前に、セキュリティポリシー保存部１２１に保存されているセキュリティポリシー情報、ログ保存部１２２に記録されるログ内容、ログ保存部１２２に記録される警告用テーブルについて説明する。図１８〜図２０は、それらの一例である。図１８では、４つのセキュリティポリシーが保存されており、上から順に優先順位が付けられている。例えば、ＩＰアドレス「2001:1:2:3::3」の装置と通信を行う場合は、優先順位１のセキュリティポリシーに適合するため、ＩＰｓｅｃ通信が行われる。ＩＰアドレス「2001:1:2:5::3」の装置と通信を行う場合は、優先順位４のセキュリティポリシーに適合するため、非ＩＰｓｅｃ通信が行われる。
【００８２】
図１９では、３つのログが記録されている。１行目は、時刻「2006/08/10 07:00」において、クライアント装置１１に対し、ＤＮＳサーバ１２から「2001:1:2:3::3」と「2001:1:2:5::3」がこの順でＩＰアドレスリストとして返答され、優先順位１のセキュリティポリシーに適合したＩＰアドレス「2001:1:2:3::3」でＩＰｓｅｃ通信が行われたことを示している。２行目は、時刻「2006/08/10
08:00」において、クライアント装置１１に対し、ＤＮＳサーバ１２から「2001:1:2:5::3」と「2001:1:2:3::3」がこの順でＩＰアドレスリストとして返答され、優先順位１のセキュリティポリシーに適合したＩＰアドレス「2001:1:2:3::3」でＩＰｓｅｃ通信が行われたことを示している。３行目は、時刻「2006/08/10
09:00」において、クライアント装置１１に対し、ＤＮＳサーバ１２から「2001:1:2:5::3」のみがＩＰアドレスリストとして返答され、優先順位４のセキュリティポリシーに適合したＩＰアドレス「2001:1:2:5::3」で非ＩＰｓｅｃ通信が行われたことを示している。３行目のようになった原因としては、ルータに不具合が発生し、クライアント装置１１のＩＰアドレスであった「2001:1:2:3::3」が使用できなくなり、ＤＮＳサーバ１２からこのアドレス情報が削除された場合等を挙げることができる。
【００８３】
図２０に示す警告用テーブルは、ＤＮＳサーバ１２から取得されるＩＰアドレスの変化により、ＩＰｓｅｃ通信を行っていたクライアント装置１１との通信が非ＩＰｓｅｃ通信になった場合や、選択されたＩＰアドレスが適合する最も高い優先順位のセキュリティポリシーの順位が下がった場合に、警告を行うために記録されるものである。図２０では、１行目が、クライアント装置１１との直近の通信において、ＩＰアドレスは「2001:1:2:3::3」であり、優先順位１のセキュリティポリシーに適合し、ＩＰｓｅｃ通信が行われたことを示している。
【００８４】
次に、図２１〜図２３を参照して処理の流れを説明する。処理を開始し（Ｓ２１００）、まず、図１に示すサーバ装置１０のアプリケーション１００がＤＮＳサーバ１２に対して名前解決要求を送信する（Ｓ２１０１）。ＤＮＳサーバ１２は、ＩＰアドレスリストを返答し、ネットワーク制御部１２０がＩＰアドレスリストを取得する（Ｓ２１０２）。取得したＩＰアドレスリストからネットワーク制御部１２０がＩＰアドレスを１つ選択する（Ｓ２１０３）。選択されたＩＰアドレスを使用してアプリケーション１００が通信を行い（Ｓ２１０４）、これによりＩＰアドレスを選択する処理を終了する（Ｓ２１０５）。
【００８５】
別の方法としては、上記と同じように処理を開始し（Ｓ２２００）、まず、サーバ装置１０のアプリケーション１００がＤＮＳサーバ１２に対して名前解決要求を送信する（Ｓ２２０１）。ＤＮＳサーバ１２は、ＩＰアドレスリストを返答し、ネットワーク制御部１２０がＩＰアドレスリストを取得する（Ｓ２２０２）。取得したＩＰアドレスリストからネットワーク制御部１２０がＩＰアドレスを１つ選択する（Ｓ２２０３）。ここで、ログ保存部１２２は、時刻、ホスト名、セキュリティポリシー情報、ＩＰｓｅｃ通信か非ＩＰｓｅｃ通信かといった通信状態、選択したＩＰアドレス、ＤＮＳサーバ１２から取得したＩＰアドレスリスト等をログとして記録する（Ｓ２２０４）。その後、選択されたＩＰアドレスを使用してアプリケーション１００が通信を行い（Ｓ２２０５）、これによりＩＰアドレスを選択する処理を終了する（Ｓ２２０６）。
【００８６】
さらに別の方法としては、上記と同じように処理を開始し（Ｓ２３００）、まず、サーバ装置１０のアプリケーション１００がＤＮＳサーバ１２に対して名前解決要求を送信する（Ｓ２３０１）。ＤＮＳサーバ１２は、ＩＰアドレスリストを返答し、サーバ装置１０がＩＰアドレスリストを取得する（Ｓ２３０２）。取得したＩＰアドレスリストからネットワーク制御部１２０がＩＰアドレスを１つ選択する（Ｓ２３０３）。ここで、選択したＩＰアドレスリストから警告条件に合致するか判断する（Ｓ２３０４）。合致すると判断した場合、ユーザＩ／Ｆ１１０に警告表示を行う（Ｓ２３０５）。警告としてはその他、ログに警告情報を記録したり、電子メール等で通知することができる。最後に、選択されたＩＰアドレスを使用してアプリケーション１００が通信を行い（Ｓ２３０６）、これによりＩＰアドレスを選択する処理を終了する（Ｓ２３０７）。
【００８７】
図２４は、ＩＰアドレスリストからＩＰアドレスを１つ選択する処理を示した図である。この処理を開始し（Ｓ２４００）、まず、ＩＰアドレスＡを未設定かつセキュリティポリシーの順位Ｂを未設定に初期化する（Ｓ２４０１）。次に、ＤＮＳサーバ１２からｍ個のＩＰアドレスＡ１〜Ａｍを取得する（Ｓ２４０２）。取得したＩＰアドレスからＡ１から順に１つのアドレスＡｘ（ｘ＝１〜ｍ）を取り出し（Ｓ２４０３）、そのＩＰアドレスＡｘが適合するセキュリティポリシー（ＳＰ）の順位ｙを求める（Ｓ２４０４）。求め方については後述する。
【００８８】
ＩＰアドレスＡが未設定またはｙ＜Ｂであるかを判断し（Ｓ２４０５）、そうである場合、ＡをＡｘに、Ｂをｙに設定する（Ｓ２４０６）。そして、Ｂが１であるか判断し（Ｓ２４０７）、Ｂが１でない場合、ＡｘがＡｍであるかを判断する（Ｓ２４０８）。この処理では、Ａ１から順にＡｍまでＳＰの順位ｙを求めるため、最後のアドレスか否かをＳ２４０８で判断する。Ａｍでない場合、次のアドレスを取り出し（Ｓ２４０９）、Ｓ２４０４へ戻り、その取り出されたアドレスのＳＰ順位が求められる。Ｓ２４０７でＢが１である場合、ＳＰの順位が１であるため、Ａに設定されているＩＰアドレスを選択し（Ｓ２４１０）、処理を終了する（Ｓ２４１１）。
【００８９】
図２５を参照して、上記のセキュリティポリシーの順位ｙを求める方法について説明する。処理を開始し（Ｓ２５００）、まず、セキュリティポリシー保存部に保存されているｎ個のセキュリティポリシー情報を読み出す（Ｓ２５０１）。次に、セキュリティポリシー情報を優先順位が１〜ｎの順に１つ取り出し（Ｓ２５０２）、ＩＰアドレスＡｘがｚ番目のセキュリティポリシー情報のＩＰアドレスに適合するかを判断する（Ｓ２５０３）。適合している場合、ｙにｚを設定する（Ｓ２５０４）。適合していない場合、ＳＰｚがＳＰｎであるか判断し（Ｓ２５０５）、ＳＰｎでない場合、次の順位のセキュリティポリシー情報を取り出し（Ｓ２５０６）、Ｓ２５０３へ戻り、そのセキュリティポリシー情報のＩＰアドレスに適合するかを判断する。適合しないままＳＰｎまでの判断が終了した場合、ｙにｎ＋１を設定する（Ｓ２５０７）。このようにしてｙにｚまたはｎ＋１が設定された後、設定されているｙを返して処理を終了する（Ｓ２５０８）。
【００９０】
次に、図２６および図２７を参照して、警告条件を判断する処理について詳細に説明する。図２６は、その１つの実施形態であり、図２７は、別の実施形態である。まず、図２６を参照して説明すると、処理を開始し（Ｓ２６００）、警告用テーブルの各行を参照し、通信先のホスト名に一致するものを検索する（Ｓ２６０１）。ここでの通信先はクライアント装置１１である。Ｓ２６０１の検索により、該当する行が見つかったか判断する（Ｓ２６０２）。該当するものが見あたらない場合、そのホスト名に関する情報を警告用テーブルに追加する（Ｓ２６０３）。ホスト名に関する情報は、図２０に示したホスト名、ＩＰアドレス、ＳＰ、ＩＰｓｅｃあるいは非ＩＰｓｅｃといった通信状態を含むものである。追加した後、警告条件に合致しないと判定する（Ｓ２６０４）。
【００９１】
Ｓ２６０２で該当するものが見つかった場合、そのホスト名に対応する警告用テーブルに記録されている通信状態を確認し、その通信状態がＩＰｓｅｃかを判断する（Ｓ２６０５）。ＩＰｓｅｃでない場合、警告用テーブルの内容、すなわち通信状態の情報を更新し（Ｓ２６０６）、Ｓ２６０４へ進み、警告条件に合致しないと判定する。ＩＰｓｅｃである場合、選択されたＩＰアドレスによる通信の通信状態を確認し、その通信状態が非ＩＰｓｅｃかを判断する（Ｓ２６０７）。その通信状態がＩＰｓｅｃである場合、Ｓ２６０６へ進み、警告用テーブルの内容、すなわち通信状態の情報を更新し、Ｓ２６０４へ進み、警告条件に合致しないと判定する。これに対し、非ＩＰｓｅｃである場合は、警告用テーブルの内容、すなわち通信状態の情報を更新し（Ｓ２６０８）、警告条件に合致すると判定する（Ｓ２６０９）。警告条件に合致する場合、ユーザＩ／Ｆに警告表示を行う。
【００９２】
図２７について説明すると、処理を開始し（Ｓ２７００）、まず、選択されたＩＰアドレスが適合するセキュリティポリシーの順位ｙを、図２５に示したフローチャートにしたがって求める（Ｓ２７０１）。次に、警告用テーブルから通信先のホスト名に一致するものを検索する（Ｓ２７０２）。Ｓ２７０２の検索により、該当する行が見つかったか判断する（Ｓ２７０３）。該当するものが見あたらない場合、そのホスト名に関する情報を警告用テーブルに追加し（Ｓ２７０４）、警告条件に合致しないと判定する（Ｓ２７０５）。
【００９３】
Ｓ２７０３で該当するものが見つかった場合、そのホスト名に対応する警告用テーブルに記録されているセキュリティポリシーの順位ｘとｙとを比較し、ＳＰ順位がｘ＜ｙであるか判断する（Ｓ２７０６）。ｘ＜ｙでないならば、警告用テーブルの内容を更新し（Ｓ２７０７）、Ｓ２７０５へ進み、警告条件に合致しないと判定する。これに対し、ｘ＜ｙであるならば、警告用テーブルの内容を更新し（Ｓ２７０８）、警告条件に合致すると判定する（Ｓ２７０９）。
【００９４】
これまでサーバ装置全体のアクセス制御の例を、図面をもって説明してきたが、Ｗｅｂページで提供される機能によっては、サーバ装置全体の制御と異なるアクセス管理方法で機能を提供したい場合がある。例えば、サーバ装置全体としては、セキュアな通信は必要ないが、Ｗｅｂページ内のリンク先からは、セキュアな通信が必要である場合がある。このような場合には、図２８に示すように、ＷＰＦセキュリティ設定テーブル３２をもち、そのＷＰＦセキュリティ設定テーブル３２に従って、ＵＲＬ作成システム２０でＷｅｂページのリンクアドレスを作成することができる。
【００９５】
そのときの処理シーケンスは、図２９に示すようになる。ｌｉｂａｃａｃｉａ２７からＷＰＦ２８へのＷｅｂページ作成依頼までの処理は、図９に示される処理と同様である。ＷＰＦ２８は、ＷＰＦセキュリティ設定テーブル３２を参照し、セキュリティ設定を確認する。図９においてｌｉｂａｃａｃｉａ２７がセキュリティ設定テーブル２１を参照し、セキュリティ設定を確認するのと同様である。
【００９６】
ＷＰＦ２８は、ＵＲＬ作成システム２０に対して、ＩＰアドレスの変更の必要があるか否かを確認させる。ＵＲＬ作成システム２０は、ＷＰＦセキュリティ設定テーブル３２を参照し、設定を確認することにより、ＩＰアドレスの変更の必要性を判定する。この確認の結果、アクセスを禁止したい場合、ＵＲＬ作成システム２０は、ＷＰＦ２８に対し、「404 Not Found エラー」を返す。これを受け取ったＷＰＦ２８は、ｌｉｂａｃａｃｉａ２７、ｌｉｂｇｗｗｗ２６、ｌｉｂｈｔｔｐ２５、ｈｔｔｐｄ２４を経由し、クライアント装置１１に「404
Not Foundエラー」を返す。このように、上述したＷｅｂページ全体のアクセス制御の場合と同様の処理となり、異なる点は、参照するセキュリティ設定テーブルが、ＷＰＦセキュリティ設定テーブル３２であるという点のみである。
【００９７】
これまで本発明を上述した実施の形態をもって説明してきたが、本発明は上述した実施の形態に限定されるものではなく、他の実施の形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【図面の簡単な説明】
【００９８】
【図１】本発明の情報処理装置の一実施形態としてサーバ装置を含むネットワーク機器構成を例示した図。
【図２】自動的にセキュアなアドレスへ切り替える機能を実現するサーバ装置の第１実施形態を示したブロック図。
【図３】セキュリティ設定テーブルを例示した図。
【図４】セキュリティアドレス設定テーブルを例示した図。
【図５】機器アドレステーブルを例示した図。
【図６】従来のＳＳＬ変換処理のシーケンスを例示した図。
【図７】リクエストＵＲＬを例示した図。
【図８】ｈｔｔｐリクエストヘッダを例示した図。
【図９】第１実施形態の変換処理シーケンスを示した図。
【図１０】ＵＲＬ作成システムによる処理を示したフローチャート図。
【図１１】検索対象テーブルを例示した図。
【図１２】アドレスバージョンの変更の必要があるか否かを確認する処理を示したフローチャート図。
【図１３】ＩＰｓｅｃの必要性を判定する処理を示したフローチャート図。
【図１４】検索結果テーブルを例示した図。
【図１５】変更すべきアドレスを取得する処理を示したフローチャート図。
【図１６】ソフトウェアモジュール構成を例示した図。
【図１７】アプリケーションとクライアント装置とが通信を行う場合のシーケンス図。
【図１８】セキュリティポリシー情報を例示した図。
【図１９】ログ保存部に記録されるログ内容を例示した図。
【図２０】ログ保存部に記録される警告用テーブルを例示した図。
【図２１】ＤＮＳサーバから複数のＩＰアドレスを取得した場合に、その１つを選択する処理の第１実施形態を示したフローチャート図。
【図２２】ＤＮＳサーバから複数のＩＰアドレスを取得した場合に、その１つを選択する処理の第２実施形態を示したフローチャート図。
【図２３】ＤＮＳサーバから複数のＩＰアドレスを取得した場合に、その１つを選択する処理の第３実施形態を示したフローチャート図。
【図２４】ＩＰアドレスリストからＩＰアドレスを１つ選択する処理を示した図。
【図２５】セキュリティポリシーの順位を求める方法を示したフローチャート図。
【図２６】警告条件を判定する処理の第１実施形態を示したフローチャート図。
【図２７】警告条件を判定する処理の第２実施形態を示したフローチャート図。
【図２８】自動的にセキュアなアドレスへ切り替える機能を実現するサーバ装置の第２実施形態を示したブロック図。
【図２９】図２８に示す第２実施形態のサーバ装置における変換処理シーケンスを示した図。
【符号の説明】
【００９９】
１０…サーバ装置、１１、６０…クライアント装置、１２…ＤＮＳサーバ、１３、１４…ルータ、１５…ネットワーク、２０、６６…ＵＲＬ作成システム、２１、６７…セキュリティ設定テーブル、２２…セキュリティアドレス設定テーブル、２３…機器アドレステーブル、２４、６１…ｈｔｔｐｄ、２５、６２…ｌｉｂｈｔｔｐ、２６、６３…ｌｉｂｇｗｗｗ、２７、６４…ｌｉｂａｃａｃｉａ、２８、６５…ＷＰＦ、２９…アドレスバージョン変換システム、３０…セキュア設定要求取得システム、３１…セキュアアドレス取得システム、３２…ＷＰＦセキュリティ設定テーブル、１００…アプリケーション、１１０…ユーザＩ／Ｆ、１２０…ネットワーク制御部、１２１…セキュリティポリシー保存部、１２２…ログ保存部、１３０…ＯＳ、１３１…ネットワークプロトコル、１３２…ネットワーク通信ドライバ
【図１】
2008312016.tif 000003
【図２】
2008312016.tif 000004
【図３】
2008312016.tif 000005
【図４】
2008312016.tif 000006
【図５】
2008312016.tif 000007
【図６】
2008312016.tif 000008
【図７】
2008312016.tif 000009
【図８】
2008312016.tif 000010
【図９】
2008312016.tif 000011
【図１０】
2008312016.tif 000012
【図１１】
2008312016.tif 000013
【図１２】
2008312016.tif 000014
【図１３】
2008312016.tif 000015
【図１４】
2008312016.tif 000016
【図１５】
2008312016.tif 000017
【図１６】
2008312016.tif 000018
【図１７】
2008312016.tif 000019
【図１８】
2008312016.tif 000020
【図１９】
2008312016.tif 000021
【図２０】
2008312016.tif 000022
【図２１】
2008312016.tif 000023
【図２２】
2008312016.tif 000024
【図２３】
2008312016.tif 000025
【図２４】
2008312016.tif 000026
【図２５】
2008312016.tif 000027
【図２６】
2008312016.tif 000028
【図２７】
2008312016.tif 000029
【図２８】
2008312016.tif 000030
【図２９】
2008312016.tif 000031