クライアント型SOAによる官公庁電子申請システム
システムイメージ
ここではサイオIdbAによるシステム構成例を解説します。サイオのIdbAはJavaベースであるため、Windows/Macintosh/Linuxといったマルチプラットフォームクライアントに対応しかつJavaという汎用技術を活用しているため、耐用年数もクリアしています。
IdbAは本体ファイルサイズが2MBと軽くなっています。またファイルサイズを大きくとってしまいがちな各種申請書のファイルを、作表コンポーネントと申請書プロファイル群に切り分けて開発するアプリケーションのコンポーネント化により、非常に小さなサイズでのクライアントシステム構築が可能になります。
こういったサイズの縮小により、ナローバンドへの対応が可能となります。また、IdbAのWebスクリーンスクレイピングやSOAPクライアントにより、複数のWebサーバへの接続も容易に実現できます。さらにIdbAのコンポーネント配信技術により、メンテナンスも容易になります(詳しくは本連載を参照ください)。
クライアント側のシステムにフォーカスした場合は図5のようになります。
続いてセキュリティについて触れておきます。当該システムにおいてセキュリティーは当たり前の要件として求められており、万全な仕組みを用意する必要があります。
特にサービス利用者を対象にしたクライアント型SOAのシステムでは、クライアントシステムには重要な個人(申請者)情報が含まれているため、外部からのデータ改ざんや漏洩ができてはいけません。
当該システムのように一般利用者が使用するようなクライアント型SOAソリューションでは、クライアント側のシステムをインターネット経由でメンテナンスします。その場合、このメンテナンスのルートを使用してシステムの不正変更を防御する必要があります。
サイオのIdbAの場合はシステム上で接続先のWebサイトを限定することや、コンポーネントに証明書を添付することにより、不正なコンポーネントの配信を防ぐことができます。さらに、クライアントシステムにより生成されたデータを他のプログラムが閲覧/使用できないように制限できるため、セキュリティの面では万全の環境を用意することが可能です(図6)。