(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-10-26
(45)【発行日】2022-11-04
(54)【発明の名称】企業間データ連携システム、情報処理装置およびプログラム
(51)【国際特許分類】
G06Q 50/10 20120101AFI20221027BHJP
【FI】
G06Q50/10
(21)【出願番号】P 2022158795
(22)【出願日】2022-09-30
【審査請求日】2022-09-30
【早期審査対象出願】
(73)【特許権者】
【識別番号】514306205
【氏名又は名称】アスタリスト株式会社
(74)【代理人】
【識別番号】100126402
【氏名又は名称】内島 裕
(72)【発明者】
【氏名】池上 大介
【審査官】関 博文
(56)【参考文献】
【文献】特開2017-199089(JP,A)
【文献】小倉 孝夫,他社クラウドを含めた安全なデータ・サービス連携方式の提案,電子情報通信学会技術研究報告 Vol.111 No.146,日本,社団法人電子情報通信学会,2011年07月14日,第111巻,第146号,p.69-74
【文献】法人向けSaaSの比較サイト SaaSLOG ActRecipe,[online],2021年04月23日,インターネット:<URL:https://kigyolog.com/tool.php?id=1411#1-2>,[検索日:2022年10月7日]
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
データ連携サーバと連携元ユーザの第一のユーザ端末と第一のSaaS側サーバとがネットワークを介して接続され、かつ、前記データ連携サーバと連携先ユーザの第二のユーザ端末と第二のSaaS側サーバとが前記ネットワークを介して接続された企業間データ連携システムであって、
前記第一のユーザ端末のレシピ登録部は、企業間データ連携の目的に合わせた機能をパッケージ化したレシピに関する情報であって、少なくとも前記連携元ユーザの利用するSaaS種別、前記連携元ユーザのフォルダID、前記連携元ユーザのSaaSの認証情報、前記連携元ユーザの電子メールアドレスおよび前記連携先ユーザの電子メールアドレスを含む前記レシピに関する情報の設定登録を前記データ連携サーバに対して実施し、
前記データ連携サーバのレシピ管理部は、所定の記憶部に前記連携元ユーザの前記レシピに関する情報を格納し、
前記データ連携サーバの電子メール送受信部は、前記第二のユーザ端末に対して電子メールを送信して前記連携元ユーザからの所定の前記SaaSが提供するサービスのデータ連携の依頼を通知し、
前記第二のユーザ端末の前記レシピ登録部は、前記レシピに関する情報であって、少なくとも前記連携先ユーザの利用する前記SaaS種別、前記連携先ユーザの前記フォルダIDおよび前記連携先ユーザの前記SaaSの認証情報を含む前記レシピに関する情報の設定登録を前記データ連携サーバに対して実施し、
前記データ連携サーバの前記レシピ管理部は、前記所定の記憶部に前記連携先ユーザの前記レシピに関する情報を格納し、
前記データ連携サーバの前記電子メール送受信部は、前記第一のユーザ端末に対して前記電子メールを送信して前記連携先ユーザの前記レシピに関する情報の設定登録完了を通知し、
前記第一のユーザ端末のレシピ実行指示部は、前記データ連携サーバに対して前記レシピの実行を開始する指示を発行し、
前記データ連携サーバのレシピ実行部は、前記レシピの実行を開始する指示または前記所定の記憶部に前記レシピに関する情報として前記第一のユーザ端末からの前記設定登録により格納された自動実行タイミング情報に基づいて前記レシピを実行し、前記連携元ユーザの前記SaaSの認証情報を使用して前記第一のSaaS側サーバにAPI接続し、前記連携元ユーザの前記フォルダから所定のデータを取得し、前記連携先ユーザの前記SaaSの認証情報を使用して前記第二のSaaS側サーバに前記API接続し、前記連携先ユーザのフォルダに前記所定のデータを保存し、
前記第一のユーザ端末のSaaS種別変更部は、前記レシピに関する情報のうち前記連携元ユーザの前記SaaS種別を変更する場合に、前記データ連携サーバに対して変更後の前記SaaS種別を通知し、
前記第二のユーザ端末の前記SaaS種別変更部は、前記レシピに関する情報のうち前記連携元ユーザの前記SaaS種別を変更する場合に、前記データ連携サーバに対して変更後の前記SaaS種別を通知し、
前記データ連携サーバの前記レシピ管理部は、前記第一のユーザ端末または前記第二のユーザ端末から受信した前記変更後の前記SaaS種別を前記所定の記憶部に格納し、
前記第一のユーザ端末のフォルダ変更部は、前記レシピに関する情報のうち、前記連携元ユーザの前記フォルダIDを変更する場合に、前記データ連携サーバに対して変更後の前記フォルダIDを通知し、
前記第二のユーザ端末の前記フォルダ変更部は、前記レシピに関する情報のうち、前記連携元ユーザの前記フォルダIDを変更する場合に、前記データ連携サーバに対して変更後の前記フォルダIDを通知し、
前記データ連携サーバの前記レシピ管理部は、前記第一のユーザ端末または前記第二のユーザ端末から受信した前記変更後の前記フォルダIDを前記所定の記憶部に格納する
企業間データ連携システム。
【請求項2】
連携元ユーザの第一のユーザ端末と第一のSaaS側サーバとにネットワークを介して接続され、かつ、連携先ユーザの第二のユーザ端末と第二のSaaS側サーバとに前記ネットワークを介して接続された情報処理装置であって、
前記第一のユーザ端末のレシピ登録部からの、企業間データ連携の目的に合わせた機能をパッケージ化したレシピに関する情報であって、少なくとも前記連携元ユーザの利用するSaaS種別、前記連携元ユーザのフォルダID、前記連携元ユーザのSaaSの認証情報、前記連携元ユーザの電子メールアドレスおよび前記連携先ユーザの電子メールアドレスを含む前記レシピに関する情報の設定登録を受け付け、所定の記憶部に前記連携元ユーザの前記レシピに関する情報を格納するレシピ管理部と、
前記第二のユーザ端末に対して電子メールを送信して前記連携元ユーザからの所定の前記SaaSが提供するサービスのデータ連携の依頼を通知する電子メール送受信部と、を備え、
前記レシピ管理部は、前記第二のユーザ端末の前記レシピ登録部からの、前記レシピに関する情報であって、少なくとも前記連携先ユーザの利用する前記SaaS種別、前記連携先ユーザの前記フォルダIDおよび前記連携先ユーザの前記SaaSの認証情報を含む前記レシピに関する情報の設定登録を受け付け、前記所定の記憶部に前記連携先ユーザの前記レシピに関する情報を格納し、
前記電子メール送受信部は、前記第一のユーザ端末に対して前記電子メールを送信して前記連携先ユーザの前記レシピに関する情報の設定登録完了を通知し、
前記第一のユーザ端末のレシピ実行指示部からの前記レシピの実行を開始する指示または前記所定の記憶部に前記レシピに関する情報として前記第一のユーザ端末からの前記設定登録により格納された自動実行タイミング情報に基づいて前記レシピを実行し、前記連携元ユーザの前記SaaSの認証情報を使用して前記第一のSaaS側サーバにAPI接続し、前記連携元ユーザの前記フォルダから所定のデータを取得し、前記連携先ユーザの前記SaaSの認証情報を使用して前記第二のSaaS側サーバに前記API接続し、前記連携先ユーザのフォルダに前記所定のデータを保存するレシピ実行部をさらに備え、
前記レシピ管理部は、前記第一のユーザ端末または前記第二のユーザ端末から受信した変更後の前記SaaS種別を前記所定の記憶部に格納し、
前記レシピ管理部は、前記第一のユーザ端末または前記第二のユーザ端末から受信した変更後の前記フォルダIDを前記所定の記憶部に格納する
情報処理装置。
【請求項3】
連携元ユーザの第一のユーザ端末と第一のSaaS側サーバとにネットワークを介して接続され、かつ、連携先ユーザの第二のユーザ端末と第二のSaaS側サーバとに前記ネットワークを介して接続された情報処理装置に、
レシピ管理部により、前記第一のユーザ端末のレシピ登録部からの、企業間データ連携の目的に合わせた機能をパッケージ化したレシピに関する情報であって、少なくとも前記連携元ユーザの利用するSaaS種別、前記連携元ユーザのフォルダID、前記連携元ユーザのSaaSの認証情報、前記連携元ユーザの電子メールアドレスおよび前記連携先ユーザの電子メールアドレスを含む前記レシピに関する情報の設定登録を受け付け、所定の記憶部に前記連携元ユーザの前記レシピに関する情報を格納する処理と、
電子メール送受信部により、前記第二のユーザ端末に対して電子メールを送信して前記連携元ユーザからの所定の前記SaaSが提供するサービスのデータ連携の依頼を通知する処理と、
前記レシピ管理部により、前記第二のユーザ端末の前記レシピ登録部からの、前記レシピに関する情報であって、少なくとも前記連携先ユーザの利用する前記SaaS種別、前記連携先ユーザの前記フォルダIDおよび前記連携先ユーザの前記SaaSの認証情報を含む前記レシピに関する情報の設定登録を受け付け、前記所定の記憶部に前記連携先ユーザの前記レシピに関する情報を格納する処理と、
前記電子メール送受信部により、前記第一のユーザ端末に対して前記電子メールを送信して前記連携先ユーザの前記レシピに関する情報の設定登録完了を通知する処理と、
レシピ実行部により、前記第一のユーザ端末のレシピ実行指示部からの前記レシピの実行を開始する指示または前記所定の記憶部に前記レシピに関する情報として前記第一のユーザ端末からの前記設定登録により格納された自動実行タイミング情報に基づいて前記レシピを実行し、前記連携元ユーザの前記SaaSの認証情報を使用して前記第一のSaaS側サーバにAPI接続し、前記連携元ユーザの前記フォルダから所定のデータを取得し、前記連携先ユーザの前記SaaSの認証情報を使用して前記第二のSaaS側サーバに前記API接続し、前記連携先ユーザのフォルダに前記所定のデータを保存するする処理と、
前記レシピ管理部により、前記第一のユーザ端末または前記第二のユーザ端末から受信した変更後の前記SaaS種別を前記所定の記憶部に格納する処理と、
前記レシピ管理部により、前記第一のユーザ端末または前記第二のユーザ端末から受信した変更後の前記フォルダIDを前記所定の記憶部に格納するする処理と
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、企業間データを連携させる技術に関する。
【背景技術】
【0002】
最初に、本発明のプログラムを実行する本発明の情報処理装置が設置される(構築される、又は所有される)企業により提供される企業間データ連携サービスを以下、「本サービス」という。また、本サービスの提供側と被提供側を包括して本発明の企業間データ連携システムが構築される。
また、本発明は、試行錯誤により製品開発されてリリースされる製品レベルのものであり、単なるアイデア段階にとどまるものではない。
【0003】
近時、用途に応じたクラウドサービス利用の急激な進展により、一の企業のデータはあらゆるサービス内に点在し、そのデータ統合は日々複雑化している。
そこで、クラウド上でSaaS、PaaS、IaaS等のクラウドサービス(以下、「SaaS」と総称する。)間のデータ連携をニーズに合わせて拡張・縮小可能とすることで、業務の自動化・効率化による業務プロセスの最適化と内部統制(IT統制)の強化をトータルコストを削減しつつ実現することができるプラットフォームサービスが提供されている。このようにすれば、データ連携に際して、従来一般的であったEDIのようにデータ入力画面を持たせることや閉域ネットワークを利用することは不要となる。
【0004】
ところで、従来は自社グループ内の子会社同士や親子会社同士の企業間データのやりとり・連携・共有が実施されていた。
すなわち、他社間で各企業が自社利用目的で使用するSaaSを連携することは、一般的に実施されていなかった。
なぜなら、SaaSの利用には自社の認証情報(例えば、Tokenなど)が必要で、そのような重要な機密情報を他社に渡すことはセキュリティ面から有り得ないからである。なお、トークン認証ではTokenと呼ばれる認証情報を含むものを、ブラウザとサーバでやりとりを行うことでユーザの情報を特定している。
【0005】
そこで、他社間(例えば、A社およびB社)でフォルダ共有(クラウドドストレージ共有・データ共有)する場合には、例えば、電子メールを都度作成・送信してデータを相手側に送り、そのうえで電話でのコミュニケーションを図ることなどがなされていたが、データの持ち主であるA社が倒産・合併等で消滅した場合に備えて、B社は同じデータをコピーしてバックアップとして自社で保管しておく必要があった。このデータの二重入力は手作業であり煩雑で、改ざんリスク(内部統制・IT統制上問題)もあった。
【0006】
ここで、関連技術として、ユーザ側での開発負担無くSaaS間の連携を効率的に図る技術が提案されている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0007】
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかし、上記の特許文献1に開示されている技術では、企業間データをSaaS間で連携させる際に、自社の認証情報を他社に渡すことなくセキュリティが確保された状態で、企業間データ連携を図ることは困難であった。
また、上記の特許文献1に開示されている技術では、企業間データをSaaS間で連携させる際に、データ漏洩やデータ改ざんのリスクを低減して内部統制(IT統制)に資する仕組みを提供することは困難であるという問題点があった。
【0009】
本発明の目的は、企業間データをSaaS間で連携させる際に、二重入力の手作業が不要であり、自社のSaaSの認証情報を他社に渡すことなくセキュリティが確保された、かつ、データ漏洩やデータ改ざんのリスクを低減して内部統制(IT統制)に資する技術を提供することにある。
【課題を解決するための手段】
【0010】
本発明の企業間データ連携システムは、
データ連携サーバと連携元ユーザの第一のユーザ端末と第一のSaaS側サーバとがネットワークを介して接続され、かつ、前記データ連携サーバと連携先ユーザの第二のユーザ端末と第二のSaaS側サーバとが前記ネットワークを介して接続された企業間データ連携システムであって、
前記第一のユーザ端末のレシピ登録部は、企業間データ連携の目的に合わせた機能をパッケージ化したレシピに関する情報であって、少なくとも前記連携元ユーザの利用するSaaS種別、前記連携元ユーザのフォルダID、前記連携元ユーザのSaaSの認証情報、前記連携元ユーザの電子メールアドレスおよび前記連携先ユーザの電子メールアドレスを含む前記レシピに関する情報の設定登録を前記データ連携サーバに対して実施し、
前記データ連携サーバのレシピ管理部は、所定の記憶部に前記連携元ユーザの前記レシピに関する情報を格納し、
前記データ連携サーバの電子メール送受信部は、前記第二のユーザ端末に対して電子メールを送信して前記連携元ユーザからの所定の前記SaaSが提供するサービスのデータ連携の依頼を通知し、
前記第二のユーザ端末の前記レシピ登録部は、前記レシピに関する情報であって、少なくとも前記連携先ユーザの利用する前記SaaS種別、前記連携先ユーザの前記フォルダIDおよび前記連携先ユーザの前記SaaSの認証情報を含む前記レシピに関する情報の設定登録を前記データ連携サーバに対して実施し、
前記データ連携サーバの前記レシピ管理部は、前記所定の記憶部に前記連携先ユーザの前記レシピに関する情報を格納し、
前記データ連携サーバの前記電子メール送受信部は、前記第一のユーザ端末に対して前記電子メールを送信して前記連携先ユーザの前記レシピに関する情報の設定登録完了を通知し、
前記第一のユーザ端末のレシピ実行指示部は、前記データ連携サーバに対して前記レシピの実行を開始する指示を発行し、
前記データ連携サーバのレシピ実行部は、前記レシピの実行を開始する指示または前記所定の記憶部に前記レシピに関する情報として前記第一のユーザ端末からの前記設定登録により格納された自動実行タイミング情報に基づいて前記レシピを実行し、前記連携元ユーザの前記SaaSの認証情報を使用して前記第一のSaaS側サーバにAPI接続し、前記連携元ユーザの前記フォルダから所定のデータを取得し、前記連携先ユーザの前記SaaSの認証情報を使用して前記第二のSaaS側サーバに前記API接続し、前記連携先ユーザのフォルダに前記所定のデータを保存し、
前記第一のユーザ端末のSaaS種別変更部は、前記レシピに関する情報のうち前記連携元ユーザの前記SaaS種別を変更する場合に、前記データ連携サーバに対して変更後の前記SaaS種別を通知し、
前記第二のユーザ端末の前記SaaS種別変更部は、前記レシピに関する情報のうち前記連携元ユーザの前記SaaS種別を変更する場合に、前記データ連携サーバに対して変更後の前記SaaS種別を通知し、
前記データ連携サーバの前記レシピ管理部は、前記第一のユーザ端末または前記第二のユーザ端末から受信した前記変更後の前記SaaS種別を前記所定の記憶部に格納し、
前記第一のユーザ端末のフォルダ変更部は、前記レシピに関する情報のうち、前記連携元ユーザの前記フォルダIDを変更する場合に、前記データ連携サーバに対して変更後の前記フォルダIDを通知し、
前記第二のユーザ端末の前記フォルダ変更部は、前記レシピに関する情報のうち、前記連携元ユーザの前記フォルダIDを変更する場合に、前記データ連携サーバに対して変更後の前記フォルダIDを通知し、
前記データ連携サーバの前記レシピ管理部は、前記第一のユーザ端末または前記第二のユーザ端末から受信した前記変更後の前記フォルダIDを前記所定の記憶部に格納する。
【0011】
本発明の情報処理装置は、
連携元ユーザの第一のユーザ端末と第一のSaaS側サーバとにネットワークを介して接続され、かつ、連携先ユーザの第二のユーザ端末と第二のSaaS側サーバとに前記ネットワークを介して接続された情報処理装置であって、
前記第一のユーザ端末のレシピ登録部からの、企業間データ連携の目的に合わせた機能をパッケージ化したレシピに関する情報であって、少なくとも前記連携元ユーザの利用するSaaS種別、前記連携元ユーザのフォルダID、前記連携元ユーザのSaaSの認証情報、前記連携元ユーザの電子メールアドレスおよび前記連携先ユーザの電子メールアドレスを含む前記レシピに関する情報の設定登録を受け付け、所定の記憶部に前記連携元ユーザの前記レシピに関する情報を格納するレシピ管理部と、
前記第二のユーザ端末に対して電子メールを送信して前記連携元ユーザからの所定の前記SaaSが提供するサービスのデータ連携の依頼を通知する電子メール送受信部と、を備え、
前記レシピ管理部は、前記第二のユーザ端末の前記レシピ登録部からの、前記レシピに関する情報であって、少なくとも前記連携先ユーザの利用する前記SaaS種別、前記連携先ユーザの前記フォルダIDおよび前記連携先ユーザの前記SaaSの認証情報を含む前記レシピに関する情報の設定登録を受け付け、前記所定の記憶部に前記連携先ユーザの前記レシピに関する情報を格納し、
前記電子メール送受信部は、前記第一のユーザ端末に対して前記電子メールを送信して前記連携先ユーザの前記レシピに関する情報の設定登録完了を通知し、
前記第一のユーザ端末のレシピ実行指示部からの前記レシピの実行を開始する指示または前記所定の記憶部に前記レシピに関する情報として前記第一のユーザ端末からの前記設定登録により格納された自動実行タイミング情報に基づいて前記レシピを実行し、前記連携元ユーザの前記SaaSの認証情報を使用して前記第一のSaaS側サーバにAPI接続し、前記連携元ユーザの前記フォルダから所定のデータを取得し、前記連携先ユーザの前記SaaSの認証情報を使用して前記第二のSaaS側サーバに前記API接続し、前記連携先ユーザのフォルダに前記所定のデータを保存するレシピ実行部をさらに備え、
前記レシピ管理部は、前記第一のユーザ端末または前記第二のユーザ端末から受信した変更後の前記SaaS種別を前記所定の記憶部に格納し、
前記レシピ管理部は、前記第一のユーザ端末または前記第二のユーザ端末から受信した変更後の前記フォルダIDを前記所定の記憶部に格納する。
【0012】
本発明のプログラムは、
連携元ユーザの第一のユーザ端末と第一のSaaS側サーバとにネットワークを介して接続され、かつ、連携先ユーザの第二のユーザ端末と第二のSaaS側サーバとに前記ネットワークを介して接続された情報処理装置に、
レシピ管理部により、前記第一のユーザ端末のレシピ登録部からの、企業間データ連携の目的に合わせた機能をパッケージ化したレシピに関する情報であって、少なくとも前記連携元ユーザの利用するSaaS種別、前記連携元ユーザのフォルダID、前記連携元ユーザのSaaSの認証情報、前記連携元ユーザの電子メールアドレスおよび前記連携先ユーザの電子メールアドレスを含む前記レシピに関する情報の設定登録を受け付け、所定の記憶部に前記連携元ユーザの前記レシピに関する情報を格納する処理と、
電子メール送受信部により、前記第二のユーザ端末に対して電子メールを送信して前記連携元ユーザからの所定の前記SaaSが提供するサービスのデータ連携の依頼を通知する処理と、
前記レシピ管理部により、前記第二のユーザ端末の前記レシピ登録部からの、前記レシピに関する情報であって、少なくとも前記連携先ユーザの利用する前記SaaS種別、前記連携先ユーザの前記フォルダIDおよび前記連携先ユーザの前記SaaSの認証情報を含む前記レシピに関する情報の設定登録を受け付け、前記所定の記憶部に前記連携先ユーザの前記レシピに関する情報を格納する処理と、
前記電子メール送受信部により、前記第一のユーザ端末に対して前記電子メールを送信して前記連携先ユーザの前記レシピに関する情報の設定登録完了を通知する処理と、
レシピ実行部により、前記第一のユーザ端末のレシピ実行指示部からの前記レシピの実行を開始する指示または前記所定の記憶部に前記レシピに関する情報として前記第一のユーザ端末からの前記設定登録により格納された自動実行タイミング情報に基づいて前記レシピを実行し、前記連携元ユーザの前記SaaSの認証情報を使用して前記第一のSaaS側サーバにAPI接続し、前記連携元ユーザの前記フォルダから所定のデータを取得し、前記連携先ユーザの前記SaaSの認証情報を使用して前記第二のSaaS側サーバに前記API接続し、前記連携先ユーザのフォルダに前記所定のデータを保存するする処理と、
前記レシピ管理部により、前記第一のユーザ端末または前記第二のユーザ端末から受信した変更後の前記SaaS種別を前記所定の記憶部に格納する処理と、
前記レシピ管理部により、前記第一のユーザ端末または前記第二のユーザ端末から受信した変更後の前記フォルダIDを前記所定の記憶部に格納するする処理と
を実行させる。
【発明の効果】
【0013】
本発明によれば、企業間データをSaaS間で連携させる際に、二重入力の手作業が不要であり、自社のSaaSの認証情報を他社に渡すことなくセキュリティが確保された、かつ、データ漏洩やデータ改ざんのリスクを低減して内部統制(IT統制)に資する技術を提供することができる。
【図面の簡単な説明】
【0014】
【
図1】本発明の実施の形態に係る企業間データ連携システムの構成を示す図である。
【
図2】本発明の実施の形態に係る企業間データ連携システムを構成するデータ連携サーバおよび各ユーザ端末の機能ブロック図である。
【
図3】本発明の実施の形態に係る企業間データ連携システムの各DBの各テーブル構造の一例を示す図である。
【
図4】本発明の実施の形態に係る企業間データ連携システムの処理の流れを説明する図である。
【
図5】本発明の実施の形態に係る企業間データ連携システムの処理動作を示すシーケンス図である。
【
図6】本発明の実施の形態に係る企業間データ連携システムのA社側のユーザ端末における表示画面の一例を示す図である。
【
図7】本発明の実施の形態に係る企業間データ連携システムのB社側のユーザ端末における表示画面の一例を示す図である。
【
図8】本発明の実施の形態に係る企業間データ連携システムの第一の実施例を示す図である。
【
図9】本発明の実施の形態に係る企業間データ連携システムの第二の実施例を示す図である。
【
図10】本発明の実施の形態に係る企業間データ連携システムの第三の実施例を示す図である。
【
図11】本発明の実施の形態に係る企業間データ連携システムの第四の実施例を示す図である。
【発明を実施するための形態】
【0015】
本発明は、一の企業が自社利用目的で使用するSaaS、PaaS、IaaS等のクラウドサービス(以下、「SaaS」と総称する。)と、他の企業が自社利用目的で使用するSaaSとを、これらのSaaSが提供しているWeb APIの機能を活用してインターネット経由(Web上)で企業間(特に他社間)のデータの受け渡しを代行して相互に連携し、企業間の商取引を効率化するものである。したがって、Web APIが提供されているSaaSであれば、どのような組み合わせでもデータ連携を実現できることとなる。
【0016】
以下、本発明の第一の実施の形態を図面を参照しつつ説明する。
本実施の形態における企業間データ連携システムの構成を
図1を参照して説明する。なお、本サービス(企業間データ連携サービス)における企業間データ連携の連携元ユーザ(委託者)がA社であり、また、連携先ユーザ(受託者)がB社であることを前提とする。
【0017】
図1に示すように、企業間データ連携システム10は、本サービスの提供企業側等に設置される情報処理装置としてのデータ連携サーバ100と、企業間でデータ連携する一の企業としてのA社側に設置されるユーザ端末200aと、A社側で利用するSaaSのSaaS側サーバ300aと、企業間でデータ連携する他の企業としてのB社側に設置されるユーザ端末200bと、B社側で利用するSaaSのサーバ300bとから構成されている。
少なくともデータ連携サーバ100と、ユーザ端末200aと、SaaS側サーバ300aとは、それぞれインターネット等の所定のネットワークにより接続されている。また、少なくともデータ連携サーバ100と、ユーザ端末200bと、SaaS側サーバ300bとは、それぞれインターネット等の所定のネットワークにより接続されている。
ここではデータ連携サーバ100やSaaS側サーバ300a・SaaS側サーバ300bを、1台の情報処理装置として示したが、その有する機能が、複数の情報処理装置によって実現される構成であってもよい。
A社利用のSaaSとB社利用のSaaSが同一の場合は、SaaS側サーバ300aとSaaS側サーバ300bとは同一の情報処理装置であってもよい。
【0018】
データ連携サーバ100は、CPU(Central Processing Unite)により制御される、ROM(Read Only Memory)・RAM(Random Access Memory)等の記憶手段を備え、公知の入出力手段を備える情報処理装置である。例えば、ワークステーション、高機能のパーソナル・コンピュータ等である。クラウドサーバであってもよい。本サービスの提供企業により運営されることであってよい。
【0019】
ユーザ端末200aおよびユーザ端末200bは、CPU(Central Processing Unite)により制御される、ROM(Read Only Memory)・RAM(Random Access Memory)等の記憶手段を備え、公知の入出力手段を備える情報処理装置である。例えば、スマートフォン、タブレット端末、小型パーソナル・コンピュータ、携帯端末等である。本サービスのユーザが操作する情報処理装置である。
【0020】
SaaS側サーバ300aおよびSaaS側サーバ300bは、CPU(Central Processing Unite)により制御される、ROM(Read Only Memory)・RAM(Random Access Memory)等の記憶手段を備え、公知の入出力手段を備える情報処理装置である。例えば、ワークステーション、高機能のパーソナル・コンピュータ等である。クラウドサーバであってもよい。各SaaSの提供企業により運営されることであってよい。
SaaS側サーバ300aはそのSaaSのWeb APIを提供している。また、SaaS側サーバ300bはそのSaaSのWeb APIを提供している。
ここで、Web APIとはWeb上で実現されるAPI(Application Programming Interface:アプリケーション・プログラミング・インターフェース)である。Web APIではないAPIの多くは、ユーザ側が用いるプログラミング言語と同一のプログラミング言語を用いて提供されるが、Web APIは、プログラミング言語が異なっていても通信が可能なHTTP/HTTPSベースのため、異なるプログラミング言語で開発されたアプリケーション間(SaaS間)でも利用できるメリットがある。また、Web APIは、公知のプロトコルであるHTTP/HTTPSを使用するため透明性が高く、セキュアな通信手段が確立されている点もメリットである。
【0021】
企業間データ連携システム10を構成する、各装置は主として情報処理装置であり、これらの詳細な構成は公知の種々の技術が適用されてよく、上記した以外の説明はここでは省略する。
【0022】
図2に、本実施の形態に係る企業間データ連携システム10を構成する、データ連携サーバ100と、ユーザ端末200aと、ユーザ端末200bの機能ブロックを示す。
【0023】
図2を参照すると、データ連携サーバ100は、アカウント管理部101と、レシピ管理部102と、レシピ実行部103と、電子メール作成部104と、電子メール送受信部105と、ユーザ端末画面管理部106と、表示部107と、記憶部108を備えている。各部は、公知の入出力I/FやCPU等により、またHDD等により実現されてよい。
【0024】
アカウント管理部101は、本サービスにおけるアカウント登録(ユーザ登録)の際にユーザ端末200aやユーザ端末200bから受信したユーザID(電子メールアドレスとパスワードなど)をユーザ管理DB210のユーザマスタテーブルに格納する機能と、ユーザIDに基づいてユーザ管理DB210のユーザマスタテーブル等を検索してユーザ認証を実行する機能を有している。
【0025】
レシピ管理部102は、レシピ情報を管理する機能を有している。ここで、本サービスにおける企業間データ連携の目的に合わせた機能をパッケージ化した連携プログラムを「レシピ(企業間連携レシピ)」といい、そのレシピに関する設定情報として、例えば、企業間データ連携の目的がストレージ共有の場合、連携元ユーザ(A社・委託者)のSaaS種別(SaaS名)、連携元ユーザ(A社・委託者)のフォルダID(フォルダの存在場所を示すURL等でもよい。)等、連携元ユーザ(A社・委託者)の当該SaaSの認証情報、連携元ユーザ(A社・委託者)の電子メールアドレス、連携先ユーザ(B社・受託者)の電子メールアドレス、電子メール記載情報、レシピの自動実行タイミング情報、連携先ユーザ(B社・受託者)のSaaS種別、連携先ユーザ(B社・受託者)のフォルダID等、連携先ユーザ(B社・受託者)の当該SaaSの認証情報などである。
したがって、レシピ管理部102は、ユーザ端末200aから受信した本サービスにおける特定のレシピに関するレシピ情報として、連携元ユーザ(A社・委託者)のSaaS種別、連携元ユーザ(A社・委託者)のフォルダID等、連携元ユーザ(A社・委託者)の当該SaaSの認証情報、連携元ユーザ(A社・委託者)の電子メールアドレス、連携先ユーザ(B社・受託者)の電子メールアドレス、レシピの自動実行タイミング情報などをレシピ管理DB112の各テーブル等に格納して管理する機能を有している。また、ユーザ端末200bから受信した本サービスにおける特定のレシピに関するレシピ情報として、連携先ユーザ(B社・受託者)のSaaS種別、連携先ユーザ(B社・受託者)のフォルダID等、連携先ユーザ(B社・受託者)の当該SaaSの認証情報などをレシピ管理DB112の各テーブル等に格納して管理する機能を有している。また、ユーザ端末200aやユーザ端末200bから受信したSaaS種別やフォルダIDの変更情報をレシピ管理DB112のSaaS種別テーブルやフォルダIDテーブルに格納して管理する機能を有している。
【0026】
レシピ実行部103は、レシピを実行する機能を有している。レシピ実行部103は、ユーザ端末200aのレシピ実行指示部210からの指示(いわば手動)に基づきでレシピを実行したり、また、レシピ管理DB112のレシピ自動実行テーブル等に格納しているレシピの自動実行タイミング情報に基づき所定のタイミング(スケジュール)でいわば自動的にレシピを実行する。なお、レシピ実行指示部209からの指示を出せるのは、データ連携サーバ100のユーザ端末画面管理部106により表示部207にレシピ実行指示ボタン等が表示される連携元ユーザ(A社・委託者)側のユーザ端末200aのみであり、連携先ユーザ(B社・受託者)側のユーザ端末200bからはそのような指示は出せない。
例えば、企業間データ連携の目的がストレージ共有の場合、レシピ実行部103は、まず、連携元ユーザ(A社・委託者)のSaaSの認証情報を使用してA社が利用するSaaSにAPI接続し、連携元ユーザ(A社・委託者)のフォルダからファイルを取得し、次に、連携先ユーザ(B社・受託者)のSaaSの認証情報を使用してB社が利用するSaaSにAPI接続し、連携先ユーザ(B社・受託者)のフォルダに当該ファイルを保存する。また、レシピ実行部103は、レシピ実行が成功した場合にはユーザ端末200a(連携元ユーザ(A社・委託者))およびユーザ端末200b(連携先ユーザ(B社・受託者))に成功した旨を電子メールで通知し、一方、レシピ実行が失敗した場合にはユーザ端末200a連携元ユーザ(A社・委託者)にのみ成功した旨を電子メールで通知する。
【0027】
電子メール作成部104は、レシピ管理DB112の電子メール記載情報テーブルに格納している電子メール記載情報と、連携元ユーザ(A社・委託者)の電子メールアドレステーブルおよび連携先ユーザ(B社・受託者)の電子メールアドレステーブルに格納している各電子メールアドレスに基づいて電子メールを作成する機能を有している。
電子メール記載情報とは、例えば、企業間データ連携目的がストレージ共有の場合、「連携元A社と連携先B社のストレージ共有の件」などのテキストデータ等であり、連携元ユーザ(A社・委託者)側のユーザ端末200aからレシピ情報の一部として登録されているものである。
【0028】
電子メール送受信部105は、所定の情報処理装置に対して電子メールを送信したり、所定の情報処理装置から電子メールを受信する機能を有している。
【0029】
ユーザ端末画面管理部106は、連携元ユーザ(A社・委託者)側のユーザ端末200aの表示部207にレシピ実行指示ボタン等を表示させる機能を有している。
【0030】
表示部107は、ディスプレイ等の表示機構に、種々の画面等を表示する機能を有している。
【0031】
記憶部108は、ユーザ管理DB111、レシピ管理DB112等を格納する機能を有している。
ユーザ管理DB111、レシピ管理DB112等は、所定のユーザIDやレシピID等に連携元ユーザや連携先ユーザの各種のデータが紐付けられて記憶されている所定のテーブルを有するデータベースであり、そのテーブル構造の一例を
図3に示す。例えば、ユーザマスタテーブル、SaaS種別テーブル、フォルダIDテーブル、SaaSの認証情報テーブル、電子メールアドレステーブル、電子メール記載情報テーブル、レシピ自動実行テーブルなどがある。
【0032】
図2を参照すると、ユーザ端末200aは、アカウント登録部201と、レシピ登録部202(電子メール記載情報はユーザ端末200aのみ)と、電子メール送受信部203と、SaaS種別変更部204と、フォルダ変更部205と、SaaS利用部206と、表示部207と、記憶部208と、レシピ実行指示部209を備えている。各部は、公知の入出力I/FやCPU等により、またHDD等により実現されてよい。
【0033】
アカウント登録部201は、本サービスにおけるアカウント登録(ユーザ登録)をデータ連携サーバ100に対して実施する機能と、ユーザIDに基づいてデータ連携サーバ100に対してユーザ認証を依頼する機能を有している。
【0034】
レシピ登録部202は、レシピの各種情報の設定登録をデータ連携サーバ100に対して実施する機能を有している。なお、レシピ情報のうち電子メール記載情報は、例えば、企業間データ連携目的がクラウドストレージ共有の場合、「連携元A社と連携先B社のクラウドストレージ共有の件」などのテキストデータ等であり、連携元ユーザ(A社・委託者)側のユーザ端末200aからのみ登録される(連携先ユーザ(B社・受託者)側のユーザ端末200bからは登録されない。
【0035】
電子メール送受信部203は、所定の情報処理装置に対して電子メールを送信したり、所定の情報処理装置から電子メールを受信する機能を有している。
【0036】
SaaS種別変更部204は、特定のレシピに関して、A社側で利用するSaaS種別を変更(SaaS側サーバ300aも変更後のSaaSを提供するものに置き換わる。)する場合に、データ連携サーバ100に対して、変更後のSaaS種別を通知し、データ連携サーバ100がレシピ管理DB112のSaaS種別テーブルに格納している情報を変更できるようにする機能を有している。なお、当該SaaS種別変更によりレシピ管理DB112のSaaS種別テーブルに格納している情報を上書きして変更しても、その特定のレシピ自体はそのまま使用・運用できる。また、後述するように、SaaS種別変更はB社側で利用するSaaS種別の変更についてはユーザ端末200bから同様に変更を反映することができる。
【0037】
フォルダ変更部205は、特定のレシピに関して、A社側で利用するフォルダID等を変更する場合に、データ連携サーバ100に対して、変更後のフォルダID等を通知し、データ連携サーバ100がレシピ管理DB112のフォルダIDテーブルに格納している情報を変更できるようにする機能を有している。なお、当該フォルダ変更によりレシピ管理DB112のフォルダIDテーブルに格納している情報を上書きして変更しても、その特定のレシピ自体はそのまま使用・運用できる。また、後述するように、フォルダ変更はB社側で利用するフォルダの変更についてはユーザ端末200bから同様に変更を反映することができる。
【0038】
SaaS利用部206は、ユーザ端末200aがA社側で利用するSaaSのSaaS側サーバ300aから提供を受けるSaaSを利用する機能を有している。
【0039】
表示部207は、ディスプレイ等の表示機構に、種々の画面等を表示する機能を有している。
【0040】
記憶部208は、各種のデータを格納する機能を有している。
【0041】
レシピ実行指示部209は、データ連携サーバ100に対して、レシピの実行を開始する指示を発行する機能を有している。データ連携サーバ100のユーザ端末画面管理部106により表示部207に表示されるレシピ実行指示ボタン等をユーザ端末200aのユーザが押下げ操作することでレシピ実行を指示する。なお、レシピ実行指示部210を備えるのは連携元ユーザ(A社・委託者)側のユーザ端末200aのみであり、連携先ユーザ(B社・受託者)側のユーザ端末200bには存在しない。
【0042】
以下、ユーザ端末200bの機能を説明するが、上記のユーザ端末200aと実質的に同一の機能は同一の符号を付して説明する。
図2を参照すると、ユーザ端末200bは、アカウント登録部201と、レシピ登録部202と、電子メール送受信部203と、SaaS種別変更部204と、フォルダ変更部205と、SaaS利用部206と、表示部207と、記憶部208を備えている。各部は、公知の入出力I/FやCPU等により、またHDD等により実現されてよい。
【0043】
アカウント登録部201は、本サービスにおけるアカウント登録(ユーザ登録)をデータ連携サーバ100に対して実施する機能と、ユーザIDに基づいてデータ連携サーバ100に対してユーザ認証を依頼する機能を有している。
【0044】
レシピ登録部202は、レシピの各種情報の設定登録をデータ連携サーバ100に対して実施する機能を有している。
【0045】
電子メール送受信部203は、所定の情報処理装置に対して電子メールを送信したり、所定の情報処理装置から電子メールを受信する機能を有している。
【0046】
SaaS種別変更部204は、特定のレシピに関して、B社側で利用するSaaS種別を変更(SaaS側サーバ300bも変更後のSaaSを提供するものに置き換わる。)する場合に、データ連携サーバ100に対して、変更後のSaaS種別を通知し、データ連携サーバ100がレシピ管理DB112のSaaS種別テーブルに格納している情報を変更できるようにする機能を有している。なお、当該SaaS種別変更によりレシピ管理DB112のSaaS種別テーブルに格納している情報を上書きして変更しても、その特定のレシピ自体はそのまま使用・運用できる。
【0047】
フォルダ変更部205は、特定のレシピに関して、B社側で利用するフォルダID等を変更する場合に、データ連携サーバ100に対して、変更後のフォルダID等を通知し、データ連携サーバ100がレシピ管理DB112のフォルダIDテーブルに格納している情報を変更できるようにする機能を有している。なお、当該フォルダ変更によりレシピ管理DB112のフォルダIDテーブルに格納している情報を上書きして変更しても、その特定のレシピ自体はそのまま使用・運用できる。
【0048】
SaaS利用部206は、ユーザ端末200bがB社側で利用するSaaSのSaaS側サーバ300bから提供を受けるSaaSを利用する機能を有している。
【0049】
表示部207は、ディスプレイ等の表示機構に、種々の画面等を表示する機能を有している。
【0050】
記憶部208は、各種のデータを格納する機能を有している。
【0051】
次に、本実施の形態に係る企業間データ連携システム10の処理の流れについて、
図4の説明図および
図5のシーケンス図を参照して詳細に説明する。なお、
図6および
図7に示す各画面の一例も適宜参照する。
以下のデータの送受信は
図1に示す、インターネットや所定のネットワークを介して実施される。
なお、SaaSのWeb API等は公知の仕組みであり、既知の種々の技術が適用されてよく、ここでは必要最少限の説明に留め、その詳細な説明は省略する。
【0052】
図4および
図5を参照すると、まず、ユーザ端末200aのアカウント登録部201は、本サービスのアカウント登録(ユーザ登録)をデータ連携サーバ100に登録する(ステップS1)。ブラウザ操作に応じたオンラインサインアップが可能である。なお、本ステップS1は必須ではない。
これを受けて、データ連携サーバ100のアカウント管理部101は、ユーザ端末200aから受信したユーザID(ユーザ名とパスワードなど)を記憶部108のユーザ管理DB111のユーザマスタテーブルに格納する。
なお、2回目以降の本サービスへのログイン時には、ユーザ端末200aのアカウント登録部201は、ユーザIDに基づいてデータ連携サーバ100に対してユーザ認証を依頼し、データ連携サーバ100のアカウント管理部101は、ユーザ管理DB111のユーザマスタテーブルを検索してユーザ認証を実行する。
一般的なアカウント登録、ログイン時のユーザ認証の処理であるので詳細な説明は省略する。
【0053】
次に、ユーザ端末200aのレシピ登録部202は、レシピの各種情報の設定登録をデータ連携サーバ100に対して実施し、データ連携サーバ100の所定のDBにレシピ情報を登録する(ステップS2)。すなわち、企業間データ連携の目的に合わせた機能をパッケージ化した「レシピ(企業間連携レシピ)」に関するレシピ情報をブラウザ操作に応じて設定登録する(
図6も参照)。
例えば、企業間データ連携目的がクラウドストレージ共有の場合、レシピ情報として以下を登録する。
・連携元ユーザ(A社・委託者)のSaaS種別
・連携元ユーザ(A社・委託者)のフォルダID等
・連携元ユーザ(A社・委託者)のSaaSの認証情報(例えば、OAuth2.0認証など。)
・連携元ユーザ(A社・委託者)の電子メールアドレス
・連携先ユーザ(B社・受託者)の電子メールアドレス
・電子メール記載情報(例えば、企業間データ連携目的がクラウドストレージ共有の場合、「連携元A社と連携先B社のクラウドストレージ共有の件」など。任意の登録情報である。)
・自動実行タイミング情報(例えば、レシピを1分毎に自動実行するなど。任意の登録情報である。)
これを受けて、データ連携サーバ100のレシピ管理部102は、記憶部108のレシピ管理DB112のSaaS種別テーブル、フォルダIDテーブル、SaaSの認証情報テーブル、電子メールアドレステーブル、電子メール記載情報テーブル、レシピ自動実行テーブル等にそれぞれのデータを格納し、レシピ情報を管理する。
【0054】
次に、データ連携サーバ100の電子メール送受信部105は、ユーザ端末200b(B社側)に電子メールを送信(送付)して連携先ユーザ(B社・受託者)に本サービスのアカウント作成を促し(ステップS3)、ユーザ端末200bの電子メール送受信部203は当該電子メールを受信する。なお、既に連携先ユーザ(B社・受託者)が本サービスのアカウントを保持している場合は本ステップS3および次のステップS4をスキップする。なお、本ステップS3および次のステップS4はそもそも必須ではない。
【0055】
次に、ユーザ端末200bのアカウント登録部201は、本サービスのアカウント登録(ユーザ登録)をデータ連携サーバ100に登録する(ステップS4)。ブラウザ操作に応じたオンラインサインアップが可能である。
これを受けて、データ連携サーバ100のアカウント管理部101は、ユーザ端末200bから受信したユーザID(ユーザ名とパスワードなど)を記憶部108のユーザ管理DB111のユーザマスタテーブルに格納する。
【0056】
次に、データ連携サーバ100の電子メール送受信部105は、ユーザ端末200b(B社側)に対して電子メールを送信して連携元ユーザ(A社・委託者)が、例えば、クラウドストレージ共有の依頼(希望している旨)を通知する(ステップS5)。クラウドストレージ共有に限らずあらゆるSaaSが提供するサービス(例えば、大量データ共有、請求書PDFの送受信等である。)のデータ連携が対象となり得る。
ここで、データ連携サーバ100の電子メール作成部104は、レシピ管理DB112の電子メール記載情報テーブルに格納しているメッセージ情報(任意なので存在すれば。)と、電子メールアドレステーブルに格納している連携元ユーザと連携先ユーザの各電子メールアドレスに基づいて電子メールを作成する。
メッセージ情報とは、例えば、企業間データ連携目的がストレージ共有の場合、「連携元A社と連携先B社のストレージ共有の件」などのテキストデータ等であり、連携元ユーザ(A社・委託者)側のユーザ端末200aからレシピ情報の一部として登録されているものである。なお、連携元ユーザ(A社・委託者)が選択したアイコン等からメッセージ種別を判別して自動でメッセージ情報が作成されることであってもよい。
【0057】
次に、連携先B社がクラウドストレージ共有に同意する場合、ユーザ端末200bのレシピ登録部202は、レシピの各種情報の設定登録をデータ連携サーバ100に対して実施し、データ連携サーバ100の所定のDBにレシピ情報を登録する(ステップS6)。すなわち、企業間データ連携の目的に合わせた機能をパッケージ化した「レシピ(企業間連携レシピ)」に関するレシピ情報をブラウザ操作に応じて設定登録する(
図7も参照)。上記のステップS5において送付された電子メールのリンク先から上記のステップS2で登録されたレシピ情報の対となるレシピ情報の登録画面が開けることであってもよい。この際に、連携先ユーザ(B社・受託者)は連携元ユーザ(A社・委託者)のレシピ情報を見ることはできなく(非表示)、したがって、基本的には連携元ユーザ(A社・委託者)のSaaS種別も見ることはできないが、オプションとして、「連携先ユーザ(B社・受託者)にSaaS種別を開示」などのチェックボックス等を設けてチェックがある場合にはユーザ端末200bの表示部207に読取専用で連携元ユーザ(A社・委託者)のSaaS種別を表示することであってもよい。
例えば、企業間データ連携目的がクラウドストレージ共有の場合、レシピ情報として以下を登録する。
・連携先ユーザ(B社・受託者)のSaaS種別
・連携先ユーザ(B社・受託者)のフォルダID等
・連携先ユーザ(B社・受託者)のSaaSの認証情報
これを受けて、データ連携サーバ100のレシピ管理部102は、記憶部108のレシピ管理DB112のSaaS種別テーブル、フォルダIDテーブル、SaaSの認証情報テーブル等にそれぞれのデータを格納し、レシピ情報を管理する。
【0058】
次に、データ連携サーバ100電子メール送受信部105は、ユーザ端末200a(A社側)に対して電子メールを送信して、連携元ユーザ(A社・委託者)に対して、連携先ユーザ(B社・受託者)によるレシピ情報の設定登録が完了した旨を通知する(ステップS7)。
【0059】
次に、連携元ユーザ(A社・委託者)がレシピの実行を希望する任意のタイミングにおいて、データ連携サーバ100のユーザ端末画面管理部106によりユーザ端末200aの表示部207に表示されるレシピ実行指示ボタン等をブラウザ操作により押下げ操作することでレシピ実行を指示する。このレシピ実行指示ボタン等の押下げ操作等に応じて、ユーザ端末200aレシピ実行指示部209は、データ連携サーバ100に対して、レシピの実行を開始する指示を発行する(ステップS8)。なお、レシピ実行指示部210を備えるのは連携元ユーザ(A社・委託者)側のユーザ端末200aのみであり、連携先ユーザ(B社・受託者)側のユーザ端末200bには存在しなくユーザ端末200bの表示部207にはレシピ実行指示ボタン等は表示されない。
また、連携元ユーザ(A社・委託者)が手動でレシピを実行する際に、連携元ユーザ(A社・委託者)は連携先ユーザ(B社・受託者)のレシピ情報を見ることはできなく(非表示)、したがって、基本的には連携先ユーザ(B社・受託者)のSaaS種別も見ることはできないが、オプションとして、「連携元ユーザ(A社・委託者))にSaaS種別を開示」などのチェックボックス等を設けてチェックがある場合にはユーザ端末200aの表示部207に読取専用で連携先ユーザ(B社・受託者)のSaaS種別を表示することであってもよい。
本ステップS8は、データ連携サーバ100の記憶部108のレシピ管理DB112のレシピ自動実行テーブルに格納された自動実行タイミング情報(例えば、レシピを1分毎に自動実行するなど。)に基づいて、自動でレシピの実行を開始する処理に置き換えることであってもよい。
【0060】
次に、データ連携サーバ100のレシピ実行部103は、レシピを実行する(ステップS9)。例えば、企業間データ連携の目的がストレージ共有の場合、レシピ実行部103は、まず、連携元ユーザ(A社・委託者)のSaaSの認証情報を使用してA社が利用するSaaSのSaaS側サーバ300aにAPI接続し、連携元ユーザ(A社・委託者)のフォルダからファイル(データ)を取得し、次に、連携先ユーザ(B社・受託者)のSaaSの認証情報を使用してB社が利用するSaaSのSaaS側サーバ300bにAPI接続し、連携先ユーザ(B社・受託者)のフォルダに当該ファイル(データ)を保存する。なお、ユーザ端末200aのSaaS利用部206は、SaaS側サーバ300aから提供を受けるSaaSを利用し、また、ユーザ端末200bのSaaS利用部206は、SaaSのSaaS側サーバ300bから提供を受けるSaaSを利用している。
データ連携サーバ100のレシピ実行部103は、ユーザ端末200aのレシピ実行指示部210からの指示(いわば手動)に基づきでレシピを実行したり、また、レシピ管理DB112のレシピ自動実行テーブル等に格納しているレシピの自動実行タイミング情報に基づき所定のタイミング(スケジュール)でいわば自動的にレシピを実行する。
データ連携サーバ100のレシピ実行部103は、論理的に分かれている連携元ユーザ(A社・委託者)のSaaSの認証情報および連携先ユーザ(B社・受託者)のSaaSの認証情報(セキュリティ対策)をA社、B社に相互に見せないことでセキュリティ面の安全性を担保することができる。データ連携サーバ100がそれぞれの認証情報を取得・保持して、それぞれのSaaSにアクセスして処理を実行する、いわば代行・仲介の役割であり、仲介の際にデータ連携サーバ100は別途そのデータを保管しないという点にも価値がある、すなわちデータの漏洩リスクが無く、データ消滅のリスクも無い(一般的な仲介会社はデータに価値がありデータを別途保管・保持したがる動機がある。)。
【0061】
次に、データ連携サーバ100の電子メール送受信部105は、上記のステップS9におけるレシピ実行が成功した場合にはユーザ端末200a(連携元ユーザ(A社・委託者))およびユーザ端末200b(連携先ユーザ(B社・受託者))に成功した旨を電子メールで通知し、一方、上記のステップS9におけるレシピ実行が失敗した場合にはユーザ端末200a(連携元ユーザ(A社・委託者))にのみ成功した旨を電子メールで通知する(ステップS10)。なお、本ステップS10は必須ではない。
これを受けて、ユーザ端末200aの電子メール送受信部203やユーザ端末200bの電子メール送受信部203は電子メールを受信する。
【0062】
さらに、ユーザ端末200aのSaaS種別変更部204は、任意のタイミングで、特定のレシピに関して、連携元ユーザ(A社・委託者)側で利用するSaaS種別を変更(SaaS側サーバ300aも変更後のSaaSを提供するものに置き換わる。)する場合に、データ連携サーバ100に対して、変更後のSaaS種別を通知し、データ連携サーバ100がレシピ管理DB112のSaaS種別テーブルに格納している情報を変更することであってもよい。なお、当該SaaS種別変更によりレシピ管理DB112のSaaS種別テーブルに格納している情報を上書きして変更しても、その特定のレシピ自体はそのまま使用・運用(同一のレシピ実行指示ボタン等の押下げ操作でレシピ実行)できる。また、ユーザ端末200bのSaaS種別変更部204により、SaaS種別変更は連携先ユーザ(B社・受託者)側で利用するSaaS種別の変更についてはユーザ端末200bから同様に変更を反映することができる。
これを受けて、データ連携サーバ100のレシピ管理部102は、ユーザ端末200aやユーザ端末200bから受信したSaaS種別の変更情報をレシピ管理DB112のSaaS種別テーブルに格納して管理する。
SaaS種別の変更は、例えば、プルダウンからSaaS種別を選択することで設定変更可能であってもよい。新レシピを一から設定することは不要であり、いわば既存のレシピを置換可能といえる。また、SaaS種別の変更は、委託者・受託者の双方側から相互に独立して手軽に設定変更可であり、利便性が向上するし、関係先会社が多数の場合には特にメリットが大きくなる。
【0063】
さらに、ユーザ端末200aのフォルダ変更部205は、任意のタイミングで、特定のレシピに関して、連携元ユーザ(A社・委託者)側で利用するフォルダID等を変更する場合に、データ連携サーバ100に対して、変更後のフォルダID等を通知し、データ連携サーバ100がレシピ管理DB112のフォルダIDテーブルに格納している情報を変更することであってもよい。なお、当該フォルダ変更によりレシピ管理DB112のフォルダIDテーブルに格納している情報を上書きして変更しても、その特定のレシピ自体はそのまま使用・運用(同一のレシピ実行指示ボタン等の押下げ操作でレシピ実行)できる。また、ユーザ端末200bのフォルダ変更部205により、フォルダ変更は連携先ユーザ(B社・受託者)側で利用するフォルダの変更についてはユーザ端末200bから同様に変更を反映することができる。
これを受けて、データ連携サーバ100のレシピ管理部102は、ユーザ端末200aやユーザ端末200bから受信したフォルダIDの変更情報をレシピ管理DB112のフォルダIDテーブルに格納して管理する。
フォルダID等の変更は、例えば、プルダウンやフォルダ一覧画面から所定のフォルダを選択することで設定変更可能であってもよい。新レシピを一から設定することは不要であり、いわば既存のレシピを置換可能といえる。また、フォルダID等の変更は、委託者・受託者の双方側から相互に独立して手軽に設定変更可であり、利便性が向上するし、取引先・年月別等に異なるフォルダで管理するケースも想定され、関係先会社が多数の場合には特にメリットが大きくなる。さらに所定のSaaSで提供されているような機能(保存先フォルダ変更してもファルダIDへの紐づけを変更すればそのまま利用可能)を利用することは不要となる。
【0064】
上記のように連携元ユーザ(A社・委託者)からレシピ情報の設定登録を開始し、連携先ユーザ(B社・受託者)が対応し、また、レシピ実行は連携元ユーザ(A社・委託者)からのみ(一方のみ、A社側のユーザ端末200aの画面にのみ自動化設定、手動ボタンが表示される。)可能となっている(レシピは連携元ユーザ(A社・委託者)の所有物のイメージとなる。)。これにより、処理フローが簡潔になり、データ連携サーバ100での管理も容易となり処理負担も軽減される。さらに、一般的なクラウドストレージ共有の設定と比べると、「誰に、何を、どのような目的で連携しているか」を可視化できるため、セキュリティや内部統制(IT統制)の観点から非常にプラスとなる。例えば、社員が勝手に他社の方にフォルダ共有をしていると会社としては気付くことができないリスクがあるが、本サービスではそれが可視化される。そして、レシピ実行の度にA社側だけでなくB社側にも自動的に電子メール等で通知されるため、個別の電子メールの作成・送信や電話でのコミュニケーションが不要になり両社の業務フローが最適化される。
【0065】
次に、本実施の形態に係る企業間データ連携システム10の実施例1乃至3を説明する。
【0066】
[実施例1]
図8に示すように、企業間クラウドストレージ連携である。
従来のクラウドストレージSaaSを使った外部とのデータ(例えば、請求書PDF)共有は、送信者が自社で利用するSaaSにファイルを保存し、その共有相手として受信者を設定した上で電子メール等で通知を行っていた。しかしながら、この方法では受信者の環境にはデータが保存されないため、実運用上は共有された送信者のデータを自社環境にコピー・バックアップするオペレーションが発生していた。本サービスでは委託者であるA社と受託者であるB社の両社のSaaS間を連携することにより、両社のオペレーションを最小化することができる。
【0067】
[実施例2]
図9に示すように、企業間クラウドストレージ連携である。
B社(例えば、大手企業で取引先が多数)がA1、A2、A3という複数の取引企業からの請求書を取りまとめる場合、個別にメール・郵送・請求書発行SaaS等でやりとりされたのでは管理が煩雑になってしまう。そこで、各取引先に本サービスの利用を促し、請求書PDFの受領をクラウドストレージSaaSの特定のフォルダに集約することが可能となる。
【0068】
[実施例3]
図10に示すように、異なるサービス間の連携である。
A社とB社の2社間でセキュアに大量のデータを共有したい場合、従来であれば「SFTPサーバ」へは「SFTPクライアント」によって接続する必要があったが、本サービスにより2社で全く別のアプリケーションを使用していてもデータの共有を行うことができる。例えば、A社が会社のポリシーによって特定のクラウドストレージSaaSからのアクセスを禁止している場合や、会社のポリシーによってSFTPサーバおよびクライアントの利用が禁止されている場合に、データ連携サーバ100がSFTPクライアントとして振る舞うことで自社で使用しているクラウドサービスを活用したデータの授受が可能となる。なお、SFTP(SSH File Transfer Protocol)とは、FTPによって転送されるファイルを「SSH(Secure Shell)」によって暗号化するファイル転送プロトコルである。
さらにSaaS種別の変更登録を行うことで、実施例3から実施例1等の利用態様へ遷移させることも可能である。
【0069】
次に、本発明の第二の実施の形態を図面を参照しつつ説明する。
上記の第一の実施の形態では、フォルダID等の変更は、委託者・受託者の双方側から相互に独立して設定変更可であったが、本実施の形態では、フォルダID等の変更は委託者側のみ可である点が異なる。
【0070】
次に、本実施の形態に係る企業間データ連携システム10の実施例4を説明する。
[実施例4]
図11に示すように、請求書発行SaaSと受取請求書SaaS連携との連携である。例えば、A社が請求書発行SaaSから発行した請求書PDFを、B社が使用するAI-OCR機能を持つ受取請求書SaaSに連携することにより、異なるシステムを利用していても請求書の発行から受領までをシームレスに連携することが可能となる。請求書の送受信に係るオペレーションコストの削減や、処理の抜け漏れを防ぐ効果がある。受取請求書SaaSは、請求書PDFを全部直接取り込む取込口のフォルダがあり、そこにPDFファイルを保存する処理イメージとなる。フォルダID等の変更はA社・委託者側のみが可能である。受取請求書SaaSは、請求書の回収から仕訳・振込・保管など、経理が課題としていた業務フローを一気通貫で解決できるクラウドサービスであり、請求書の読取だけでなく、届いた請求書の処理の後続作業として想定される仕訳、会計システムへの登録、振込データ作成、データ保管といった作業も完結させることができる。
なお、上記の実施例1乃至3も一部変更(一部省略)により本実施の形態として適用可能であることはもちろんである。
【0071】
次に、本発明の第三の実施の形態を図面を参照しつつ説明する。
上記の第一の実施の形態および第二の実施の形態では、フォルダID等の変更は、委託者・受託者の双方側から相互に独立して設定変更可であったが、本実施の形態では、フォルダID等の変更の機能・処理は無い点が異なる。
なお、上記の実施例1乃至4も一部変更(一部省略)により本実施の形態として適用可能であることはもちろんである。
【0072】
次に、本発明の第四の実施の形態を図面を参照しつつ説明する。
上記の第一の実施の形態および第二の実施の形態では、フォルダID等の変更可であったが、本実施の形態では、フォルダID等の変更の機能・処理は無い点が異なる。
また、上記の第一乃至第三の実施の形態では、SaaS種別の変更可であったが、本実施の形態では、SaaS種別の変更の機能・処理は無い点が異なる。
なお、上記の実施例1乃至4も一部変更(一部省略)により本実施の形態として適用可能であることはもちろんである。
【0073】
上記の各実施の形態によれば、企業間データをSaaS間で連携させる際に、二重入力の手作業が不要であり、自社のSaaSの認証情報を他社に渡すことなくセキュリティが確保された、かつ、データ漏洩やデータ改ざんのリスクを低減して内部統制(IT統制)に資する技術を実現することができる。
【0074】
その他、一々例示はしないが、本発明は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されてよい。例えば、各装置・システムの機能を実現するためのプログラムを各装置・システム等に読込ませて実行することにより各装置・システム等の機能を実現する処理を行ってもよい。さらに、そのプログラムは、コンピュータ読み取り可能な記録媒体であるCD-ROMまたは光磁気ディスクなどを介して、または伝送媒体であるインターネット、電話回線等を介して伝送波により他のコンピュータシステムに伝送されてもよい。また、一部のシステムが人の動作を介在して実現されてもよい。なお、電子的な通知方法としての電子メールは一つの例に過ぎなく、その他の電子的に各装置に通知が行われる手法で代替されることであってもよい。
また、上述の各処理は、各装置のうち複数のものがそれぞれ組み合わせて実施されてもよく、その際に用いられている公知のデータ等は既知のデータベース等と連携してネットワークから取得したり、それらの取得されたデータが本システムのデータベースに格納されて利用されることであってもよい。すなわち、当業者が技術常識から理解実現可能な細部の記載は適宜省略されている場合もある。
また、上記の効果を奏する限り、上記シーケンス図の各工程は順序が入れ替えられたり、同時並行的に実施されたり、必須ではない処理が省略されることであってもよい。
【符号の説明】
【0075】
10 企業間データ連携システム
100 データ連携サーバ
200a、200b ユーザ端末
300a、300b SaaS側サーバ
【要約】
【課題】企業間データをSaaS間で連携させる際に、二重入力の手作業が不要であり、自社のSaaSの認証情報を他社に渡すことなくセキュリティが確保された、かつ、データ漏洩やデータ改ざんのリスクを低減して内部統制(IT統制)に資する技術を提供すること。
【解決手段】データ連携サーバと連携元ユーザの第一のユーザ端末と第一のSaaS側サーバとがネットワークを介して接続され、かつ、前記データ連携サーバと連携先ユーザの第二のユーザ端末と第二のSaaS側サーバとが前記ネットワークを介して接続された企業間データ連携システムであって、前記第一のユーザ端末のレシピ登録部は、企業間データ連携の目的に合わせた機能をパッケージ化したレシピに関する情報であって、少なくとも前記連携元ユーザの利用するSaaS種別、前記連携元ユーザのフォルダID、前記連携元ユーザのSaaSの認証情報、前記連携元ユーザの電子メールアドレスおよび前記連携先ユーザの電子メールアドレスを含む前記レシピに関する情報の設定登録を前記データ連携サーバに対して実施し、前記データ連携サーバのレシピ管理部は、所定の記憶部に前記連携元ユーザの前記レシピに関する情報を格納し、前記データ連携サーバの電子メール送受信部は、前記第二のユーザ端末に対して電子メールを送信して前記連携元ユーザからの所定の前記SaaSが提供するサービスのデータ連携の依頼を通知し、前記第二のユーザ端末の前記レシピ登録部は、前記レシピに関する情報であって、少なくとも前記連携先ユーザの利用する前記SaaS種別、前記連携先ユーザの前記フォルダIDおよび前記連携先ユーザの前記SaaSの認証情報を含む前記レシピに関する情報の設定登録を前記データ連携サーバに対して実施し、前記データ連携サーバの前記レシピ管理部は、前記所定の記憶部に前記連携先ユーザの前記レシピに関する情報を格納し、前記データ連携サーバの前記電子メール送受信部は、前記第一のユーザ端末に対して前記電子メールを送信して前記連携先ユーザの前記レシピに関する情報の設定登録完了を通知し、前記第一のユーザ端末のレシピ実行指示部は、前記データ連携サーバに対して前記レシピの実行を開始する指示を発行し、前記データ連携サーバのレシピ実行部は、前記レシピの実行を開始する指示または前記所定の記憶部に前記レシピに関する情報として前記第一のユーザ端末からの前記設定登録により格納された自動実行タイミング情報に基づいて前記レシピを実行し、前記連携元ユーザの前記SaaSの認証情報を使用して前記第一のSaaS側サーバにAPI接続し、前記連携元ユーザの前記フォルダから所定のデータを取得し、前記連携先ユーザの前記SaaSの認証情報を使用して前記第二のSaaS側サーバに前記API接続し、前記連携先ユーザのフォルダに前記所定のデータを保存し、前記第一のユーザ端末のSaaS種別変更部は、前記レシピに関する情報のうち前記連携元ユーザの前記SaaS種別を変更する場合に、前記データ連携サーバに対して変更後の前記SaaS種別を通知し、前記第二のユーザ端末の前記SaaS種別変更部は、前記レシピに関する情報のうち前記連携元ユーザの前記SaaS種別を変更する場合に、前記データ連携サーバに対して変更後の前記SaaS種別を通知し、前記データ連携サーバの前記レシピ管理部は、前記第一のユーザ端末または前記第二のユーザ端末から受信した前記変更後の前記SaaS種別を前記所定の記憶部に格納し、前記第一のユーザ端末のフォルダ変更部は、前記レシピに関する情報のうち、前記連携元ユーザの前記フォルダIDを変更する場合に、前記データ連携サーバに対して変更後の前記フォルダIDを通知し、前記第二のユーザ端末の前記フォルダ変更部は、前記レシピに関する情報のうち、前記連携元ユーザの前記フォルダIDを変更する場合に、前記データ連携サーバに対して変更後の前記フォルダIDを通知し、前記データ連携サーバの前記レシピ管理部は、前記第一のユーザ端末または前記第二のユーザ端末から受信した前記変更後の前記フォルダIDを前記所定の記憶部に格納する企業間データ連携システム。
【選択図】
図1