説明

2つのネットワークアクセス可能ソフトウェアアプリケーションの間でシングルサインオンを有効にするための方法、システム及びコンピュータ読取可能な媒体

【課題】プロセッサ及びコンピュータ読取可能な媒体を有するサーバ装置により2つのネットワークアクセス可能ソフトウェアアプリケーションの間のシングルサインオンを発行する方法等を提供する。
【解決手段】方法は、第1のソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すステップと、第1のソフトウェアアプリケーションアダプタと第1のソフトウェアアプリケーションとの間のハンドシェイクを開始するステップと、第1のソフトウェアアプリケーションから第1のソフトウェアアプリケーションアダプタへ認証情報を送信するステップと、第2のソフトウェアアプリケーションにより認証情報を認証するステップと、第2のソフトウェアアプリケーションから第1のソフトウェアアプリケーションへ第1のソフトウェアアプリケーションアダプタを介して有効セッションIDを返すステップとを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書記憶サービスと顧客関係管理サービスとの間でシングルサインオンを有効にするシステム及び方法に関する。
【背景技術】
【0002】
通常、例えばDocumentMall(登録商標)等の文書記憶サービスとともに、例えばsalesforce.com(登録商標)等の顧客関係管理サービスを用いる場合に、それらのサービス間の認証は困難であった。
【発明の概要】
【発明が解決しようとする課題】
【0003】
従って、本発明は、とりわけ、プロセッサ及びコンピュータ読取可能な媒体を有するサーバ装置により2つのネットワークアクセス可能ソフトウェアアプリケーションの間のシングルサインオンを発行するための方法を提供する。
【0004】
また、本発明は、2つのアクセス可能ソフトウェアアプリケーションの間のシングルサインオンを有するシステムを提供する。
【課題を解決するための手段】
【0005】
本発明の実施形態に従うシングルサインオン発行方法は、第1のソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すステップと、第1のソフトウェアアプリケーションアダプタと前記第1のソフトウェアアプリケーションとの間のハンドシェイクを開始するステップと、前記第1のソフトウェアアプリケーションから前記第1のソフトウェアアプリケーションアダプタへ認証情報を送信するステップと、第2のソフトウェアアプリケーションにより前記認証情報を認証するステップと、前記第2のソフトウェアアプリケーションから前記第1のソフトウェアアプリケーションへ前記第1のソフトウェアアプリケーションアダプタを介して有効セッションIDを返すステップとを有する。
【0006】
本発明の他の実施形態に従うシステムは、第1のネットワークアクセス可能ソフトウェアアプリケーション、プロセッサ及びコンピュータ読取可能な媒体とを有する第1のサーバ装置を有する。この第1のサーバ装置は、前記第1のネットワークアクセス可能ソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すインターフェース初期化ユニットと、第1のソフトウェアアプリケーションアダプタと前記第1のネットワークアクセス可能ソフトウェアアプリケーションとの間のハンドシェイクを制御するハンドシェイクユニットと、前記第1のネットワークアクセス可能ソフトウェアアプリケーションから前記第1のソフトウェアアプリケーションアダプタへ認証情報を送信する認証ユニットと、前記第1のソフトウェアアプリケーションアダプタから有効セッションIDを受信するセッション受信ユニットとを有する。また、当該システムには、前記第1のソフトウェアアプリケーションアダプタ、プロセッサ及びコンピュータ読取可能な媒体を有するアダプタサーバ装置が含まれる。このアダプタサーバ装置は、前記第1のネットワークアクセス可能ソフトウェアアプリケーションから新たなプログラムインターフェースについての要求を受信する新プログラムインターフェース要求受信ユニットと、前記第1のネットワークアクセス可能ソフトウェアアプリケーションからの前記新たなプログラムインターフェースについての前記要求の受信に応答して前記第1のネットワークアクセス可能ソフトウェアアプリケーションとのハンドシェイクを実行するハンドシェイクユニットと、前記第1のネットワークアクセス可能ソフトウェアアプリケーションから認証情報を受信し、該認証情報を第2のネットワークアクセス可能ソフトウェアアプリケーションへ転送し、該第2のネットワークアクセス可能ソフトウェアアプリケーションから前記有効セッションIDを受信し、該有効セッションIDを前記第1のネットワークアクセス可能ソフトウェアアプリケーションへ前記新たなプログラムインターフェースについての前記要求に対する応答として転送する認証ユニットとを有する。
【0007】
また、当該システムには、前記第2のネットワークアクセス可能ソフトウェアアプリケーション、プロセッサ及びコンピュータ読取可能な媒体を有する第2のサーバ装置が含まれる。この第2のサーバ装置は、前記第1のソフトウェアアプリケーションアダプタから受信した前記認証情報によりユーザを認証する認証ユニットと、前記認証ユニットが受信した前記認証情報に基づいてユーザを認証する場合に有効セッションIDを生成し、該有効セッションIDを前記第1のソフトウェアアプリケーションアダプタへ送信する有効セッションIDユニットとを有する。
【0008】
本発明に係る前述の概要及び以下の詳細な記載は、本発明の例であって限定ではないと解されるべきである。
【発明の効果】
【0009】
本発明の実施形態によれば、2つのネットワークアクセス可能ソフトウェアアプリケーションの間でシングルサインオンを有効にすることが可能となる。
【図面の簡単な説明】
【0010】
【図1】例となる文書記憶サービスと例となる顧客関係管理サービスとの間のデータマッピングを示すブロック図である。
【図2】ネットワークアクセス可能ソフトウェアアプリケーションを有する複数のサービスの編成を示すブロック図である。
【図3】2つのネットワークアクセス可能ソフトウェアアプリケーションの間の認証及びハンドシェイク過程を示すブロック図である。
【図4】本発明の一実施形態に従う方法を示すフロー図である。
【図5】本発明の一実施形態に従う処理手続を示すフロー図である。
【図6】ネットワークアクセス可能ソフトウェアアプリケーションの間で使用される有効セッションIDを生成する過程を示すブロック図である。
【図7】2つのネットワークアクセス可能ソフトウェアアプリケーションとユーザインターフェースとの間の相互作用を示すブロック図である。
【図8】2つのネットワークアクセス可能ソフトウェアアプリケーションから情報にアクセスするユーザインターフェースの例を示す。
【図9】本発明の実施形態に従う装置のハードウェア構成である。
【図10】本発明の実施形態が実施されるコンピュータシステムを表す。
【図11】本発明の実施形態に従う2つのネットワークアクセス可能サーバ及びアダプタの夫々の構成を表すブロック図である。
【発明を実施するための形態】
【0011】
本発明の他の目的、特徴及び利点は、添付の図面とともに読まれる場合に、以下の詳細な記載からより明らかになるであろう。
【0012】
以下、図面を参照して説明する。図面中、同じ参照符号は、複数の図を通して同一の又は対応する部分を表す。図1を参照すると、例となる顧客関係管理サービス及び例となる文書記憶サービスのデータモデル間のデータ関係を特定するデータマッピングが表されている。
【0013】
図1は、salesforce等の顧客関係管理サービスのユーザが、例えば、DocumentMall(登録商標)等の文書記憶サービス上のデータにアクセスすることを可能にするシングルサインオンの実行を表す。図1に示されるように、1度のアカウント作成処理の間、アカウント(Account)は、salesforce(SFDC)にあるオーガニゼーション(Organization)に対応するよう、DocumentMall(登録商標)で作成される。更に、salesforceのオーガニゼーションにおける各ユーザごとに、ユーザ(User)はDocumentMall(登録商標)で作成される。本発明の一実施形態で、saleseforceでのユーザのユーザ名は、DocumentMall(登録商標)でのユーザ名に対応する。
【0014】
図2は、salesforce.com(登録商標)ネットワークアクセス可能ソフトウェアアプリケーション10を含むsalesforce.com(登録商標)サーバ1をインストールされているシステムの構成を表す。システムは、更に、例えば、アダプタ20と、アダプタ20が動作するサーバ2とを有する。システムは、更に、DocumentMall(登録商標)サーバ3と、それにインストールされているDocumentMall(登録商標)ネットワークアクセス可能ソフトウェアアプリケーション30とを有する。図1から明らかなように、salesforce.com(登録商標)サーバ1は、最初に、アダプタ20及びアダプタサーバ2を介してDocumentMall(登録商標)サーバ3にアクセスする。salesforce.com(登録商標)ネットワークアクセス可能ソフトウェアアプリケーション10及びDocumentMall(登録商標)ネットワークアクセス可能ソフトウェアアプリケーション30の記載は例であり、他のタイプのネットワークアクセス可能ソフトウェアアプリケーションが記載されるシステムで使用されてもよい。
【0015】
本発明は、文書記憶サービスと顧客関係管理サービスとの間でシングルサインオンを有効にする方法及びシステムに関する。図3及び図4はこの方法の一例を与える。最初に、図3には、salesforce.com(登録商標)(SFDC)アプリケーション10、アダプタ20及びDocumentMall(登録商標)アプリケーション30が表されている。具体的に、図3には、SFDCネットワークアクセス可能ソフトウェアアプリケーション10がDocumentMall(登録商標)アプリケーション30と認証を行って、DocumentMall(登録商標)アプリケーション30の情報をSFDCアプリケーション10からアクセス可能とするフロー処理が表されている。図3及び図4は、この処理のために提供されるステップ21〜26を表す。
【0016】
ステップ21で、SFDCアプリケーション10は、新たなDocumentMall(登録商標)アプリケーション30のセッションを要求するために、新たなアプリケーション・プログラミング・インターフェース(“API”)を呼び出す。この要求には、少なくとも、SFDCセッションID、SFDC URL及びSFDCキーが含まれる。ステップ22は、SFDCアプリケーション10とアダプタ20との間のハンドシェイキングの処理を開始する。具体的に、ステップ22で、SFDC URLがアダプタ20によって呼び出される。これに応答して、ステップ23で、SFDCアプリケーション10は、DocumentMall(登録商標)ユーザ名及びアカウント名をアダプタ20へ送信して、ハンドシェイキング処理を完了する。上述されたように、DocumentMall(登録商標)ユーザ名及びアカウント名は、予め、SFDCオーガニゼーション及びユーザ名に対応するよう作成されている。次いで、アダプタ20は、セッションを認証するために、ステップ24で、受信したユーザ名及びアカウント名をDocumentMall(登録商標)アプリケーション30へ送信する。
【0017】
これに応答して、次いで、ステップ25で、DocumentMall(登録商標)アプリケーション30は、有効なDocumentMall(登録商標)セッションIDをアダプタ20へ返す。次いで、ステップ26で、アダプタ20は、ステップ21で発せられた元の要求に対する応答として、有効DocumentMall(登録商標)セッションIDをSFDCアプリケーション10へ送信する。有効DocumentMall(登録商標)セッションIDをSFDCアプリケーション10へ提供することによって、SFDCアプリケーション10は、この有効セッションIDを用いて、DocumentMall(登録商標)アプリケーション30からの情報にアクセスすることができる。
【0018】
図5は、図3及び図4に表されている処理のタイミングを表すフローチャートを示す。特に、一実施形態において、ステップ21で、SFDCアプリケーション10のサーバは要求を、直接にDocumentMall(登録商標)アプリケーション30ではなく、アダプタ20へ送信する。代替的に、アダプタ20はDocumentMall(登録商標)アプリケーション30の一部であってよく、あるいは、DocumentMall(登録商標)アプリケーション30はアダプタ20の機能性を実行してよい。
【0019】
ステップ21で送信された要求の受信に応答して実行されるステップ22で、アダプタ20はSFDC URLを呼び出す。これはハンドシェイキング処理の第1ステップである。ステップ21での要求の受信に応答して実行されるステップ23で、SFDCアプリケーション10は、DocumentMall(登録商標)ユーザ名及びアカウント名をアダプタ20へ送信し、ハンドシェイキング処理を完了する。
【0020】
ハンドシェイキング処理が完了すると、アダプタ20は、セッションを認証するために、ステップ24で、受信したユーザ名及びアカウント名をDocumentMall(登録商標)アプリケーション30へ送信する。
【0021】
ユーザ名及びアカウント名の受信に応答して、DocumentMall(登録商標)アプリケーション30は、ステップ25で、有効DocumentMall(登録商標)セッションIDをアダプタ20へ送信する。更に、ユーザ名及びアカウント名の受信に応答して、ステップ26で、アダプタ20は、有効DocumentMall(登録商標)セッションIDを、ステップ21で発せられた元の要求に対する応答として、SFDCアプリケーション10へ送信する。
【0022】
図3〜5に示される処理は、プロセッサ及びコンピュータ読取可能な媒体を有する少なくとも1つのサーバ装置により実行され得る。具体的に、この処理は、かかる処理を実行するよう構成される特定の機械である少なくとも1つのサーバ装置と結び付けられている。
【0023】
図6は、DocumentMall(登録商標)アプリケーション30が、図3〜5に関連して上述された、SFDCアプリケーション10へ返されるべきセッションIDを生成する処理を示す。
【0024】
図6に示されるように、セッションID生成処理は、SFDCアプリケーション10がユーザ名及びアカウント名をアダプタ20を介してDocumentMall(登録商標)アプリケーション30へ送信する場合に開始する。この情報の受信に応答して、DocumentMall(登録商標)アプリケーション30は、ブロック31で、ユーザ名ルックアップ処理を実行する。このルックアップ処理は、認証されるユーザのデータベース32にアクセスし、ブロック33で、提供されるユーザ情報が有効なユーザに対応するか否かを決定する。提供される情報が有効なユーザに対応しないと判断される場合は、処理は終了され、あるいは代替的に、新たなユーザ処理が実行され得る。しかし、提供される情報が有効なユーザに対応すると判断される場合は(例えば、“Yes”)、フローはブロック35に進む。ブロック35で、提供されるユーザIDは、生成されるDocumentMall(登録商標)セッションIDと適合される。次いで、DocumentMall(登録商標)セッションIDは、SFDCアプリケーション10へ送信される。
【0025】
有効DocumentMall(登録商標)セッションIDがSFDCアプリケーション10へ返されると、SFDCアプリケーション10は、上述されたように、DocumentMall(登録商標)アプリケーション30からの情報にアクセスすることができる。
【0026】
図7は、ユーザがカスタムSFDCインターフェース60を介してDocumentMall(登録商標)情報にアクセスする処理を表す。ステップ1で、ユーザは、例えばhttpsを介してSFDCアプリケーション10に接続されているカスタムSFDCインターフェース60にアクセスする。図7に示されるように、SFDCインターフェース60は、例えば、https上でSFDCサーバ1によって実行されるSFDCアプリケーション10と接続するウェブブラウザである。このように、ユーザがカスタムSFDCインターフェース60にアクセスすると、ユーザはSFDCアプリケーション10及び対応するデータベース11に接続される。加えて、有効DocumentMall(登録商標)セッションIDがSFDCアプリケーション10によって受信されているとすると、ユーザは、DocumentMall(登録商標)サーバ3に記憶されている文書にアクセスすることができる。具体的に、図7に表されるように、ユーザがカスタムSFDCインターフェース60を介して、DocumentMall(登録商標)データベース31に記憶され又はDocumentMall(登録商標)アプリケーション30によって制御される文書にアクセスする場合に、DocumentMall(登録商標)アプリケーション30はSFDCアプリケーション10に接続する。この接続によって、SFDCアプリケーション10はアクセスを通知され、要求が実際にSFDCインターフェース60から発せられていることを確認することができる。次いで、DocumentMall(登録商標)アプリケーション30は、要求されている情報を取り出し、ステップ4で、その要求されているデータをカスタムSFDCインターフェース60を介してユーザに返す。また、留意すべきは、SFDCアプリケーション10及びDocumentMall(登録商標)アプリケーション30が通信を行うことで、カスタムSFDCインターフェース60は、どの文書がDocumentMall(登録商標)アプリケーション30から入手可能であるのかを知っている。例えば、SFDCアプリケーション10のアカウント又はフォルダに対応する新たな文書がDocumentMall(登録商標)データベース31に加えられる場合に、この情報はSFDCアプリケーション10へ送信され、これにより、アプリケーション10は、カスタムSFDCインターフェース60へ提供される利用可能な文書のリストを更新することができる。この新たな文書情報は、DocumentMall(登録商標)データベース31への文書の入力時に、又はSFDCアプリケーション10が問題のアカウントのフォルダにアクセスする場合に、送信され得る。更に、この情報は、スケジュール通りに又はいずれかの他の時点で更新されてよい。
【0027】
このように、カスタムSFDCインターフェース60は、SFDCサーバ1及びそれで実行されるSFDCアプリケーション10だけではなく、DocumentMall(登録商標)アプリケーション30及びDocumentMall(登録商標)データベース31に記憶されている文書にもアクセスすることができる。従って、SFDCサーバ1及びそれで実行されるSFDCアプリケーション10は、有効DocumentMall(登録商標)セッションIDを用いて、DocumentMall(登録商標)アプリケーション30によって制御される情報にアクセスすることができる。
【0028】
図8は、DocumentMall(登録商標)データベース31に記憶されている文書が表示されるカスタムSFDCインターフェース60の例を表す。例えば、図8には、SFDCサーバ1のデータベース11から取り出される売上高データを表示する領域71が示されている。更に、領域72には、DocumentMall(登録商標)サーバ3のデータベース31に記憶されている文書に関する情報が表示されている。図8に示される例で、例えば“Quote.pdf.txt”、“huge oppotunity contract”、“leasing agreement”、“terms and conditions contract”等の幾つかの文書及び注文文書がDocumentMall(登録商標)サーバ3に記憶されており、SFDCインターフェース60によりアクセス可能である。
【0029】
更に、図8には、SFDCインターフェースのユーザが、カスタムSFDCインターフェース60によりアクセス可能な文書をDocumentMall(登録商標)データベース31に加えることを可能にする文書追加ボタン73が示されている。
【0030】
図9は、SFDCアプリケーション10、アダプタ20及びDocumentMall(登録商標)アプリケーション30の間の相互作用を示すブロック図を表す。図9に示されるように、ユーザがSFDCサーバ1にあるSFDCアプリケーション10にログインする場合に(s90)、ユーザに関連するオポチュニティ(Opportunity)が表示される。ユーザが、DocumentMall(登録商標)文書を含むオポチュニティを選択する場合に(s91)、シングルサインオン(SSO)処理が行われる(s92)。具体的に、図3〜5に表される処理が、有効DocumentMall(登録商標)セッションIDの生成(s93)を含め実行される。加えて、有効DocumentMall(登録商標)セッションIDがSFDCアプリケーション10で受信されると、オポチュニティ/アカウントに関連するファイルのリストを決定する処理が行われる。この処理は、図8に表されるように、利用可能な文書のリストを可能にする。
【0031】
従って、ユーザがDocumentMall(登録商標)サーバ3に記憶されている文書にアクセスしたいと望む場合に、ユーザは、簡単に、図8に表されるウィンドウから文書の1つを選択することができる(s94)。これにより、予め取得されている有効DocumentMall(登録商標)セッションIDが文書をDocumentMall(登録商標)サーバ3からアダプタ20を介して取得するために使用されるところの処理が実行される(s95)。このように、DocumentMall(登録商標)サーバ3にある文書へのユーザアクセスは、また、アダプタ20を手段とする。
【0032】
図10は、本発明の実施形態が実施されるコンピュータシステム1000を表す。コンピュータシステム1000は、情報をやり取りするためのバスB又は他の通信メカニズムと、情報を処理するための、バスBに結合されているプロセッサ/CPU1004とを有する。コンピュータシステム1000は、更に、バスBに結合され、プロセッサ/CPU1004によって実行されるべき命令及び情報を記憶する、例えば、ランダムアクセスメモリ(RAM)若しくは他の動的記憶デバイス(例えば、動的RAM(DRAM)、静的RAM(SRAM)及び同期DRAM(SDRAM))等のメインメモリ/メモリユニット1003を有する。加えて、メモリユニット1003は、CPU1004による情報の実行の間一時的な変数又は他の中間情報を記憶するために使用されてよい。コンピュータシステム1000は、更に、バスBに結合され、CPU1004のための静的な情報を記憶する、読出専用メモリ(ROM)又は他の静的記憶デバイス(例えば、プログラマブルROM(PROM)、消去可能PROM(EPROM)及び電気的消去可能PROM(EEPEOM))を有してよい。
【0033】
コンピュータシステム1000は、更に、バスBに結合され、例えば、大容量記憶装置1002のような、情報を記憶するための1又はそれ以上の記憶デバイスと、駆動装置1006(例えば、フロッピー(登録商標)ディスクドライブ、読出専用コンパクトディスクドライブ、読出/書込コンパクトディスクドライブ、コンパクトディスク・ジュークボックス、テープドライブ、及びリムーバブル磁気光学ドライブ)とを制御するディスクコントローラを有してよい。記憶デバイスは、適切なデバイスインターフェース(例えば、スモールコンピュータシステムインターフェース(SCSI)、集積デバイスエレクトロニクス(IDE)、エンハンスドIDE(E−IDE)、直接メモリアクセス(DMA)、又はウルトラDMA)を用いてコンピュータシステム1000に付加されてよい。
【0034】
コンピュータシステム1000は、更に、特別目的の論理デバイス(例えば、特定用途向け集積回路(ASIC))又は設定可能論理デバイス(例えば、単純プログラマブル論理デバイス(SPLD)、複雑プログラマブル論理デバイス論理デバイス(CPLD)、及びフィールドプログラマブルゲートアレイ(FPGA))を有してよい。
【0035】
コンピュータシステム1000は、更に、バスBへ結合され、コンピュータユーザへ情報を表示するための、例えば陰極線管(CRT)等のディスプレイを制御するディスプレイコントローラを有してよい。コンピュータシステム1000は、コンピュータユーザと対話してプロセッサへ情報を提供する、例えばキーボード及びポインティングデバイス等の入力装置を有する。例えば、ポインティングデバイスは、マウス、トラックボール、又はポインティングスティックであってよく、プロセッサへ指示情報及びコマンド選択を送り且つディスプレイ上でのカーソル移動を制御する。加えて、プリンタは、コンピュータシステム1000に記憶され且つ/あるいはそれによって生成されるデータの印刷リストを提供してよい。
【0036】
コンピュータシステム1000は、例えばメモリユニット1003等のメモリに含まれている1又はそれ以上の命令の1又はそれ以上のシーケンスをCPU1004が実行することに応答して、本発明の処理ステップの一部又は全てを実行する。かかる命令は、例えば大容量記憶装置1002又はリムーバブル媒体1001等の他のコンピュータ読取可能な媒体からメモリユニットに読み出される。マルチプロセッシング配置における1又はそれ以上のプロセッサは、また、メモリユニット1003に含まれる命令のシーケンスを実行するために用いられてよい。代替の実施形態で、ハードワイヤード回路が、ソフトウェア命令の代わりに又はそれとともに使用されてよい。このように、実施形態は、ハードウェア回路又はソフトウェアの如何なる特定の組合せにも限定されない。
【0037】
上述されるように、コンピュータ1000は、本発明の教示に従ってプログラムされる命令を保持し且つデータ構造、テーブル、記録、又はここで記載される他のデータを含む少なくとも1つのコンピュータ読取可能な媒体1001又はメモリを有する。コンピュータ読取可能な媒体の例は、コンパクトディスク、ハードディスク、フロッピー(登録商標)ディスク、テープ、磁気光学ディスク、PROM(EPROM、EEPROM、フラッシュEPROM)、DRAM、SRAM、SDRAM、又は何らかの他の磁気媒体、コンパクトディスク(例えば、CD−ROM)、あるいはコンピュータが読むことができる何らかの他の媒体である。
【0038】
コンピュータ読取可能な媒体のいずれか1つ又は組合せに記憶されている場合に、本発明は、本発明を実施する装置を駆動するとともに、コンピュータシステム1000がヒトと対話することを可能にするソフトウェアを有する。かかるソフトウェアには、デバイスドライバ、オペレーティングシステム、開発ツール、及びアプリケーションソフトウェアがあるが、これらに限定されない。かかるコンピュータ読取可能な媒体は、更に、本発明の実際において実行される処理手続の全て又は一部(処理手続が阻害される場合)を行う本発明のコンピュータプログラムプロダクトを有する。
【0039】
本発明のコンピュータコードデバイスは、何らかの解釈又は実行可能なコードメカニズムであってよく、スクリプト、解釈可能なプログラム、動的リンクライブラリ(DLL)、Java(登録商標)クラス、及び完全実行可能プログラムを含むが、これらに限定されない。更に、本発明の処理手続の部分は、より良い性能、信頼性、及び/又は費用のために分配されてよい。
【0040】
ここで使用される用語「コンピュータ読取可能な媒体」は、実行のためにCPU1004へ命令を与えることに関与する何らかの媒体をいう。コンピュータ読取可能な媒体は、不揮発性媒体及び揮発性媒体を含む多数の形態をとるが、これらに限定されない。例えば、不揮発性媒体には、例えば大容量記憶装置1002又はリムーバブル媒体1001等の光、磁気、及び磁気光学ディスクがある。揮発性媒体には、例えばメモリユニット1003等の動的メモリがある。
【0041】
コンピュータ読取可能な媒体の種々の形態は、実行のためにCPU1004への1又はそれ以上の命令の1又はそれ以上のシーケンスを実行することに関わってよい。例えば、命令は、最初に、リモートコンピュータの磁気ディスクに記憶されている。リモートコンピュータは、遠隔で本発明の全て又は一部を実施するための命令を動的メモリにロードし、モデムにより電話回線を介して命令を送信する。コンピュータシステム1000にあるモデムは、電話回線でデータを受け取って、赤外線送信器を用いてデータを赤外線信号に変換してよい。バスBに結合されている赤外線検出器は、赤外線信号で搬送されるデータを受け取って、バスBにデータを置くことができる。バスBは、メモリユニット1003へデータを運ぶ。メモリユニット1003からCPU1004は命令を取り出して実行する。メモリユニット1003が受け取った命令は、任意に、CPU1004による実行の前又は後で、大容量記憶装置1002に記憶されてよい。
【0042】
コンピュータシステム1000は、更に、バスBに結合されている通信インターフェース1005を有する。通信インターフェース1005は、例えば、ローカルエリアネットワーク(LAN)、又は例えばインターネット等の他の通信ネットワークに接続されるネットワークへの双方向データ通信結合を提供する。例えば、通信インターフェース1005は、如何なるパケットスイッチLANへも取り付けられるようネットワークインターフェースカードであってよい。他の例として、通信インターフェース1005は、非対称型デジタル加入者回線(ADSL)カード、総合デジタル通信網(ISDN)カード又はモデムであってよく、対応するタイプの通信回線へデータ通信接続を提供する。無線リンクがまた実施されてよい。かかる実施のいずれにおいても、通信インターフェース1005は、様々なタイプの情報を表すデジタルデータストリームを搬送する電気信号、電磁信号、又は光信号を送受信する。
【0043】
通常、ネットワークは、1又はそれ以上のネットワークを介して他のデータ装置へのデータ通信を提供する。例えば、ネットワークは、ローカルネットワーク(例えば、LAN)を介して又はサービスプロバイダによって操作される設備を介して他のコンピュータへの接続を提供する。サービスプロバイダは、通信ネットワークを介して通信サービスを提供する。ローカルネットワーク及び通信ネットワークは、例えば、デジタルデータストリームを搬送する電気信号、電磁信号、又は光信号と、関連する物理層(例えば、CAT5ケーブル、同軸ケーブル、光ファイバ等)とを使用する。様々なネットワークを通る信号及びネットワーク上で通信インターフェース1005を介する信号は、コンピュータシステム1000へ及びそれからデジタルデータを搬送し、ベースバンド信号又は搬送波に基づく信号で実施されてよい。ベースバンド信号は、デジタルデータビットのストリームを記述する非変調電気パルスを搬送する。ここで、用語「ビット(bits)」はシンボルを意味すると幅広く解されるべきであり、各シンボルは少なくとも1又はそれ以上の情報を搬送する。デジタルデータは、また、例えば、導電媒質を介して伝播され又は伝播媒質により電磁波として送信される振幅、位相及び/又は周波数偏移キーイング信号等の搬送波を変調するためにも使用されてよい。このように、デジタルデータは、“有線”通信チャネルにより非変調ベースバンドデータとして送信され、且つ/あるいは、搬送波を変調することによってベースバンドとは異なった所定周波数バンド内で送信されてよい。コンピュータシステム1000は、ネットワーク及び通信インターフェース1005により、プログラムコードを含むデータを送受信することができる。更に、ネットワークは、例えば、パーソナルデジタルアシスタント(PDA)、ラップトップコンピュータ又は携帯電話等のモバイル装置への接続を提供してよい。
【0044】
加えて、図11に示されるように、SFDCサーバ10、アダプタ20及びDocumentMall(登録商標)サーバ30の夫々は少なくとも1つのプロセッサを有する。
【0045】
SFDCサーバ10のプロセッサ111は、少なくとも、インターフェース初期化ユニット112、ハンドシェイクユニット113、認証ユニット114及びセッション受信ユニット115を有するよう構成される。
【0046】
インターフェース初期化ユニット112は、第1のネットワークアクセス可能ソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すよう構成される。ハンドシェイクユニット113は、第1のソフトウェアアプリケーションアダプタと第1のネットワークアクセス可能ソフトウェアアプリケーションとの間のハンドシェイクを制御するよう構成される。認証ユニット114は、第1のネットワークアクセス可能ソフトウェアアプリケーションから第1のソフトウェアアプリケーションアダプタへ認証情報を送信するよう構成される。セッション受信ユニット115は、第1のソフトウェアアプリケーションアダプタから有効セッションIDを受信するよう構成される。
【0047】
アダプタサーバ20のプロセッサ121は、少なくとも、新プログラムインターフェース要求受信ユニット122、ハンドシェイクユニット123及び認証ユニット124を有するよう構成される。
【0048】
新プログラムインターフェース要求受信ユニット122は、第1のネットワークアクセス可能ソフトウェアアプリケーションから新たなプログラムインターフェースについての要求を受信するよう構成される。ハンドシェイクユニット123は、第1のネットワークアクセス可能ソフトウェアアプリケーションからの新たなプログラムインターフェースについての要求の受信に応答して、第1のネットワークアクセス可能ソフトウェアアプリケーションとのハンドシェイクを実行するよう構成される。認証ユニット124は、第1のネットワークアクセス可能ソフトウェアアプリケーションから認証情報を受信し、その認証情報を第2のネットワークアクセス可能ソフトウェアアプリケーションへ転送し、第2のネットワークアクセス可能ソフトウェアアプリケーションから有効セッションIDを受信し、その有効セッションIDを、新たなプログラムインターフェースについての要求への応答として第1のネットワークアクセス可能ソフトウェアアプリケーションへ転送するよう構成される。
【0049】
DocumentMall(登録商標)サーバ20のプロセッサ131は、少なくとも、有効セッションIDユニット132及び認証ユニット133を有するよう構成される。
【0050】
認証ユニット133は、第1のソフトウェアアプリケーションアダプタから受信した認証情報によりユーザを認証するよう構成される。有効セッションIDユニット132は、認証ユニット133が受信された認証情報に基づいてユーザを認証する場合に有効セッションIDを生成し、それを第1のソフトウェアアプリケーションアダプタへ送信するよう構成される。
【0051】
本発明は、具体的に開示されている実施形態に限定されず、変形及び改良が、本発明の適用範囲から逸脱することなく行われてよい。
【符号の説明】
【0052】
1 SFDCサーバ
2 サーバ
3 DocumentMall(登録商標)サーバ
10 SFDCアプリケーション
11 SFDCデータベース
20 アダプタ
30 DocumentMall(登録商標)アプリケーション
31 DocumentMall(登録商標)データベース
60 カスタムSFDCインターフェース
111,121,131 プロセッサ
112 インターフェース初期化ユニット
113,123 ハンドシェイクユニット
114,124,133 認証ユニット
115 セッション受信ユニット
122 新プログラムインターフェース要求受信ユニット
132 有効セッションIDユニット
1000 コンピュータシステム
1001 記録媒体
1002 大容量記憶装置
1003 メモリユニット
1004 プロセッサ/CPU
1005 インターフェース装置
1006 駆動装置
B バス

【特許請求の範囲】
【請求項1】
プロセッサ及びコンピュータ読取可能な媒体を有するサーバ装置により2つのネットワークアクセス可能ソフトウェアアプリケーションの間のシングルサインオンを発行する方法であって、
第1のソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すステップと、
第1のソフトウェアアプリケーションアダプタと前記第1のソフトウェアアプリケーションとの間のハンドシェイクを開始するステップと、
前記第1のソフトウェアアプリケーションから前記第1のソフトウェアアプリケーションアダプタへ認証情報を送信するステップと、
第2のソフトウェアアプリケーションにより前記認証情報を認証するステップと、
前記第2のソフトウェアアプリケーションから前記第1のソフトウェアアプリケーションへ前記第1のソフトウェアアプリケーションアダプタを介して有効セッションIDを返すステップと
を有するシングルサインオン発行方法。
【請求項2】
前記新たなプログラムインターフェースを呼び出すステップは、プログラムインターフェースパラメータを送信するステップを更に有し、
前記プログラムインターフェースパラメータは、第1のソフトウェアアプリケーションセッションIDと、第1のソフトウェアアプリケーションURLと、第1のソフトウェアアプリケーションキーとを含む、請求項1記載のシングルサインオン発行方法。
【請求項3】
前記第1のソフトウェアアプリケーションアダプタと前記第1のソフトウェアアプリケーションとの間の前記ハンドシェイクを開始するステップは、前記第1のソフトウェアアプリケーションアダプタが前記第1のソフトウェアアプリケーションに対応するURLを呼び出すステップを含む、請求項1記載のシングルサインオン発行方法。
【請求項4】
前記第1のソフトウェアアプリケーションでのオブジェクト選択に応答して、前記第1のソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すステップを更に有する、請求項1記載のシングルサインオン発行方法。
【請求項5】
前記第2のソフトウェアアプリケーションから前記第1のソフトウェアアプリケーションへ前記第1のソフトウェアアプリケーションアダプタを介して返された前記有効セッションIDにより前記第2のソフトウェアアプリケーション上でオブジェクトにアクセスするステップを更に有する、請求項1記載のシングルサインオン発行方法。
【請求項6】
前記オブジェクトは、前記第2のソフトウェアアプリケーションに記憶されている文書である、請求項5記載のシングルサインオン発行方法。
【請求項7】
前記第1のソフトウェアアプリケーションにおけるオブジェクトが該第1のソフトウェアアプリケーションのセッションで選択される最初のときにのみ、前記第1のソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すステップを更に有する、請求項4記載のシングルサインオン発行方法。
【請求項8】
前記第1のソフトウェアアプリケーションの認証情報に基づいて前記第2のソフトウェアアプリケーションについての認証情報を生成するステップを更に有する、請求項1記載のシングルサインオン発行方法。
【請求項9】
前記第2のソフトウェアアプリケーションの前記認証情報は、アカウント名と、ユーザ名とを含む、請求項8記載のシングルサインオン発行方法。
【請求項10】
2つのアクセス可能ソフトウェアアプリケーションの間のシングルサインオンを有するシステムであって、
当該システムは、第1のネットワークアクセス可能ソフトウェアアプリケーション、プロセッサ及びコンピュータ読取可能な媒体とを有する第1のサーバ装置を有し、
前記第1のサーバ装置は、
前記第1のネットワークアクセス可能ソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すよう構成されるインターフェース初期化ユニットと、
第1のソフトウェアアプリケーションアダプタと前記第1のネットワークアクセス可能ソフトウェアアプリケーションとの間のハンドシェイクを制御するよう構成されるハンドシェイクユニットと、
前記第1のネットワークアクセス可能ソフトウェアアプリケーションから前記第1のソフトウェアアプリケーションアダプタへ認証情報を送信するよう構成される認証ユニットと、
前記第1のソフトウェアアプリケーションアダプタから有効セッションIDを受信するよう構成されるセッション受信ユニットと
を有し、
当該システムは、更に、前記第1のソフトウェアアプリケーションアダプタ、プロセッサ及びコンピュータ読取可能な媒体を有するアダプタサーバ装置を有し、
前記アダプタサーバ装置は、
前記第1のネットワークアクセス可能ソフトウェアアプリケーションから新たなプログラムインターフェースについての要求を受信するよう構成される新プログラムインターフェース要求受信ユニットと、
前記第1のネットワークアクセス可能ソフトウェアアプリケーションからの前記新たなプログラムインターフェースについての前記要求の受信に応答して前記第1のネットワークアクセス可能ソフトウェアアプリケーションとのハンドシェイクを実行するよう構成されるハンドシェイクユニットと、
前記第1のネットワークアクセス可能ソフトウェアアプリケーションから認証情報を受信し、該認証情報を第2のネットワークアクセス可能ソフトウェアアプリケーションへ転送し、該第2のネットワークアクセス可能ソフトウェアアプリケーションから前記有効セッションIDを受信し、該有効セッションIDを前記第1のネットワークアクセス可能ソフトウェアアプリケーションへ前記新たなプログラムインターフェースについての前記要求に対する応答として転送するよう構成される認証ユニットと
を有し、
当該システムは、更に、前記第2のネットワークアクセス可能ソフトウェアアプリケーション、プロセッサ及びコンピュータ読取可能な媒体を有する第2のサーバ装置を有し、
前記第2のサーバ装置は、
前記第1のソフトウェアアプリケーションアダプタから受信した前記認証情報によりユーザを認証するよう構成される認証ユニットと、
前記認証ユニットが受信した前記認証情報に基づいてユーザを認証する場合に有効セッションIDを生成し、該有効セッションIDを前記第1のソフトウェアアプリケーションアダプタへ送信するよう構成される有効セッションIDユニットと
を有する、システム。
【請求項11】
2つのネットワークアクセス可能ソフトウェアアプリケーションの間でシングルサインオンを発行する方法を実行する命令を記憶したコンピュータ読取可能な媒体であって、
前記方法は、
第1のソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すステップと、
第1のソフトウェアアプリケーションアダプタと前記第1のソフトウェアアプリケーションとの間のハンドシェイクを開始するステップと、
前記第1のソフトウェアアプリケーションから前記第1のソフトウェアアプリケーションアダプタへ認証情報を送信するステップと、
第2のソフトウェアアプリケーションにより前記認証情報を認証するステップと、
前記第2のソフトウェアアプリケーションから前記第1のソフトウェアアプリケーションへ前記第1のソフトウェアアプリケーションアダプタを介して有効セッションIDを返すステップと
を有する、コンピュータ読取可能な媒体。
【請求項12】
前記新たなプログラムインターフェースを呼び出すステップは、プログラムインターフェースパラメータを送信するステップを更に有し、
前記プログラムインターフェースパラメータは、第1のソフトウェアアプリケーションセッションIDと、第1のソフトウェアアプリケーションURLと、第1のソフトウェアアプリケーションキーとを含む、請求項11記載のコンピュータ読取可能な媒体。
【請求項13】
前記第1のソフトウェアアプリケーションアダプタと前記第1のソフトウェアアプリケーションとの間の前記ハンドシェイクを開始するステップは、前記第1のソフトウェアアプリケーションアダプタが前記第1のソフトウェアアプリケーションに対応するURLを呼び出すステップを含む、請求項11記載のコンピュータ読取可能な媒体。
【請求項14】
前記方法は、前記第1のソフトウェアアプリケーションでのオブジェクト選択に応答して、前記第1のソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すステップを更に有する、請求項11記載のコンピュータ読取可能な媒体。
【請求項15】
前記方法は、前記第2のソフトウェアアプリケーションから前記第1のソフトウェアアプリケーションへ前記第1のソフトウェアアプリケーションアダプタを介して返された前記有効セッションIDにより前記第2のソフトウェアアプリケーション上でオブジェクトにアクセスするステップを更に有する、請求項11記載のコンピュータ読取可能な媒体。
【請求項16】
前記オブジェクトは、前記第2のソフトウェアアプリケーションに記憶されている文書である、請求項15記載のコンピュータ読取可能な媒体。
【請求項17】
前記方法は、前記第1のソフトウェアアプリケーションにおけるオブジェクトが該第1のソフトウェアアプリケーションのセッションで選択される最初のときにのみ、前記第1のソフトウェアアプリケーションにより新たなプログラムインターフェースを呼び出すステップを更に有する、請求項14記載のコンピュータ読取可能な媒体。
【請求項18】
前記方法は、前記第1のソフトウェアアプリケーションの認証情報に基づいて前記第2のソフトウェアアプリケーションについての認証情報を生成するステップを更に有する、請求項11記載のコンピュータ読取可能な媒体。
【請求項19】
前記第2のソフトウェアアプリケーションの前記認証情報は、アカウント名と、ユーザ名とを含む、請求項18記載のコンピュータ読取可能な媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2011−23001(P2011−23001A)
【公開日】平成23年2月3日(2011.2.3)
【国際特許分類】
【出願番号】特願2010−154034(P2010−154034)
【出願日】平成22年7月6日(2010.7.6)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】