(57)【要約】      （修正有）【課題】ネットワーク上で複数のサービス同士を連携させる際に、サービス業者が異なる場合であっても、十分なセキュリティの確保を可能とする装置、方法、プログラム及び記録媒体を提供する。【解決手段】システム１において、サービス提供装置３により提供されるサービスに対してリソースへのアクセスを提供する装置６は、サービスを実行する実行ロジックのインスタンス３１０を登録する登録部６２と、リソースに対応付けられたユーザアカウントを有するユーザによる、インスタンスからリソースへのアクセス権限の設定指示を受ける指示入力部６４と、設定指示に応じてインスタンスにリソースへのアクセス権限を設定する設定部６５と、を備える。【選択図】図１
2020016989.tif 000002
【特許請求の範囲】
【請求項１】
サービスを実行する実行ロジックのインスタンスを登録する登録部と、
リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力部と、
前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定部と、
を備える、装置。
【請求項２】
前記サービスを利用するアプリケーションを記憶する記憶部
を備える、請求項１に記載の装置。
【請求項３】
前記ユーザアカウントの認証を行う認証部を備え、
前記指示入力部は、前記認証部により正しく認証された前記ユーザアカウントのユーザによる前記設定指示を受ける、
請求項１または２に記載の装置。
【請求項４】
前記インスタンスに設定された前記アクセス権限の範囲内で当該インスタンスに前記リソースへのアクセスを提供するアクセス制御部、
を備える、請求項１から３のいずれか一項に記載の装置。
【請求項５】
前記設定部は、前記アクセス権限をロールとして設定する、
請求項１から４のいずれか一項に記載の装置。
【請求項６】
前記アクセス権限は、前記サービスが保持するデータの読み出し権限、前記サービスが用いるデータの書き込み権限、および、前記サービスの設定の変更権限の少なくとも１つの有無を示す、
請求項１から５のいずれか一項に記載の装置。
【請求項７】
前記アクセス権限は、前記データの読み出し権限、および、前記データの書き込み権限の少なくとも１つについて前記リソースにおけるアドレス範囲を更に示す、
請求項６に記載の装置。
【請求項８】
サービスを実行する実行ロジックのインスタンスを登録する登録段階と、
リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力段階と、
前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定段階と、
を備える、方法。
【請求項９】
コンピュータを、
サービスを実行する実行ロジックのインスタンスを登録する登録部と、
リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力部と、
前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定部
として機能させるプログラム。
【請求項１０】
コンピュータを、
サービスを実行する実行ロジックのインスタンスを登録する登録部と、
リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力部と、
前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定部
として機能させるプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、装置、方法、プログラムおよび記録媒体に関する。
【背景技術】
【０００２】
近年、モノのインターネット（ＩｏＴ）および産業用ＩｏＴ（ＩＩｏＴ）が注目されており、多数のセンサを分散配置して測定・監視等を行うシステムのクラウド化が進められている。例えば、特許文献１は、工業アプリケーションにおけるクラウドコンピューティングの使用に関連するシステムおよび方法を開示する。
特許文献１  特表２０１２−５２３０３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ところで、ネットワーク上で複数のサービスが提供される場合、複数のサービス同士を連携させることが考えられる。しかしながら、単純に複数のサービス同士を連携させると、例えばサービス業者が異なる場合などにセキュリティの確保が不十分となる場合がある。
【課題を解決するための手段】
【０００４】
上記課題を解決するために、本発明の第１の態様においては、装置が提供される。装置は、サービスを実行する実行ロジックのインスタンスを登録する登録部を備えてよい。装置は、リソースに対応付けられたユーザアカウントを有するユーザによる、インスタンスからリソースへのアクセス権限の設定指示を受ける指示入力部を備えてよい。装置は、設定指示に応じてインスタンスにリソースへのアクセス権限を設定する設定部を備えてよい。
【０００５】
装置は、サービスを利用するアプリケーションを記憶する記憶部を備えてよい。
装置は、ユーザアカウントの認証を行う認証部を備えてよい。
【０００６】
指示入力部は、認証部により正しく認証されたユーザアカウントのユーザによる設定指示を受けてよい。
【０００７】
装置は、インスタンスに設定されたアクセス権限の範囲内で当該インスタンスにリソースへのアクセスを提供するアクセス制御部、を備えてよい。
【０００８】
設定部は、アクセス権限をロールとして設定してよい。
アクセス権限は、サービスが保持するデータの読み出し権限、サービスが用いるデータの書き込み権限、および、サービスの設定の変更権限の少なくとも１つの有無を示してよい。
【０００９】
アクセス権限は、データの読み出し権限、および、データの書き込み権限の少なくとも１つについてリソースにおけるアドレス範囲を更に示してよい。
【００１０】
本発明の第２の態様においては、方法が提供される。方法は、サービスを実行する実行ロジックのインスタンスを登録する登録段階を備えてよい。方法は、リソースに対応付けられたユーザアカウントを有するユーザによる、インスタンスからリソースへのアクセス権限の設定指示を受ける指示入力段階を備えてよい。方法は、設定指示に応じてインスタンスにリソースへのアクセス権限を設定する設定段階を備えてよい。
【００１１】
本発明の第３の態様においては、プログラムが提供される。プログラムは、コンピュータを、サービスを実行する実行ロジックのインスタンスを登録する登録部として機能させてよい。プログラムは、コンピュータを、リソースに対応付けられたユーザアカウントを有するユーザによる、インスタンスからリソースへのアクセス権限の設定指示を受ける指示入力部として機能させてよい。プログラムは、コンピュータを、設定指示に応じてインスタンスにリソースへのアクセス権限を設定する設定部として機能させてよい。
【００１２】
本発明の第４の態様においては、プログラムを記録した記録媒体が提供される。プログラムは、コンピュータを、サービスを実行する実行ロジックのインスタンスを登録する登録部として機能させてよい。プログラムは、コンピュータを、リソースに対応付けられたユーザアカウントを有するユーザによる、インスタンスからリソースへのアクセス権限の設定指示を受ける指示入力部として機能させてよい。プログラムは、コンピュータを、設定指示に応じてインスタンスにリソースへのアクセス権限を設定する設定部として機能させてよい。
【００１３】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係るシステム１を示す。
【図２】アプリケーション用データベース６０１を示す。
【図３】ロールデータベース６０３を示す。
【図４】ロール・権限テーブル６０４を示す。
【図５】ロジックデータベース６０５を示す。
【図６】アクセス権限の設定方法を示す。
【図７】サービスの提供方法を示す。
【図８】リソースへのアクセスが提供される態様の一例を示す。
【図９】リソースへのアクセスが提供される態様の他の例を示す。
【図１０】本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ２２００の例を示す。
【発明を実施するための形態】
【００１５】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１６】
［１．システム１］
図１は、本実施形態に係るシステム１を示す。システム１は、ネットワーク１１と、１または複数のクライアント端末２と、１または複数のサービス提供装置３と、ネットワーク１２と、１または複数のネットワークデバイス５と、装置６とを備える。
【００１７】
［１−１．ネットワーク１１］
ネットワーク１１は、クライアント端末２と、サービス提供装置３と、装置６との間を無線または有線により接続する。ネットワーク１１は、インターネット、ワイドエリアネットワーク、またはローカルエリアネットワーク等であってよく、携帯回線網を含んでもよい。
【００１８】
［１−２．クライアント端末２］
クライアント端末２は、サービス提供装置３によるサービス利用者によって使用される。例えばクライアント端末２は、ＰＣ（パーソナルコンピュータ）、タブレット型コンピュータ、スマートフォン、ワークステーション、サーバコンピュータ、または汎用コンピュータ等のコンピュータである。
【００１９】
［１−３．サービス提供装置３］
サービス提供装置３は、サービス業者によって運用され他の機器（一例としてクライアント端末２）に１または複数のサービスを提供する。例えばサービス提供装置３はサーバコンピュータであるが、クラウドコンピュータでもよい。ここで、サービスとは利用者や他の機器（一例としてクライアント端末２）に対してサービス提供装置３が提供する情報処理、機器の制御等であり、例えばデータのグラフ化、解析（一例として平均値、最大値、最小値などの特性値の算出、ＫＰＩ（Ｋｅｙ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｉｎｄｉｃａｔｏｒ）の算出、および、機械学習などの少なくとも１つであってよい。サービス提供装置３は、記憶部３０およびＣＰＵ３１を有する。
【００２０】
［１−３−１．記憶部３０］
記憶部３０は、サービスを提供するための１または複数の実行ロジック３００を有する。実行ロジックとは、サービスの処理内容、手順、方法などを記述したサービス提供プログラム等であってよい。
【００２１】
［１−３−２．ＣＰＵ３１］
ＣＰＵ３１は、実行ロジック３００のインスタンス３１０を内部に生成する。ＣＰＵ３１は、サービスの利用者からの要求を受けてインスタンス３１０を生成してよい。ここで、本実施形態では一例として、インスタンス３１０は、実行ロジック３００をメインメモリ上に展開して処理・実行できる状態にしたものである。各インスタンス３１０は、実行ロジック３００と、当該実行ロジック３００を実行させるユーザアカウントとの組み合わせ毎に異なってよい。ＣＰＵ３１は、１つの実行ロジック３００を並行して実行することで複数のインスタンス３１０を生成してもよいし、複数の実行ロジック３００を並行して実行することで複数のインスタンス３１０を生成してもよい。
【００２２】
［１−４．ネットワーク１２］
ネットワーク１２は、ネットワークデバイス５と、装置６との間を無線または有線により接続する。ネットワーク１２は、インターネット、ワイドエリアネットワーク、またはローカルエリアネットワーク等であってよく、携帯回線網を含んでもよい。本図においてネットワーク１１およびネットワーク１２は、別のネットワークとしているが、これに代えて、ネットワーク１１およびネットワーク１２は同一のネットワークであってもよい。
【００２３】
［１−５．ネットワークデバイス５］
ネットワークデバイス５は、ネットワーク１２に接続可能なフィールド機器若しくはセンサ等、または、このような機器とネットワーク１２との間に設けられるゲートウェイ若しくはハブ等である。ここで、フィールド機器若しくはセンサ等とは、器具、機械または装置であってよく、例えば、設備のプロセスにおける圧力、温度、ｐＨ、速度、流量などの物理量を測定するセンサでもよいし、いずれかの物理量を制御するバルブ、流用制御弁、開閉弁、ポンプ、ファン、モータ等のアクチュエータでもよいし、設備内の状況や対象物を撮影するカメラ、ビデオ等の撮像機器でもよいし、設備内の異音等を収集したり警報音等を発したりするマイク、スピーカ等の音響機器でもよいし、各機器の位置情報を出力する位置検出機器でもよいし、その他の機器でもよい。ネットワークデバイス５は、装置６にプロセス値を送信してもよいし、装置６から制御信号を受信して駆動されてもよい。
【００２４】
［１−６．装置６］
装置６は、サービス提供装置３により提供されるサービスに対して装置６のリソースへのアクセスを提供する。装置６は、例えばクラウドコンピュータであり、記憶部６０と、ＣＰＵ６１と、登録部６２と、認証部６３と、指示入力部６４と、設定部６５と、アクセス制御部６６とを有する。
【００２５】
［１−６−１．記憶部６０］
記憶部６０は、１または複数のアプリケーション６００と、１または複数のアプリケーション用データベース６０１と、認証データベース６０２と、ロールデータベース６０３と、１または複数のロール・権限テーブル６０４と、ロジックデータベース６０５とを有する。
【００２６】
［１−６−１（１）．アプリケーション用データベース６０１］
アプリケーション用データベース６０１は、アプリケーション６００によりデータの読み書きが行われるデータベースである。本実施形態では一例として、アプリケーション用データベース６０１は、アプリケーション６００毎に設けられている。
【００２７】
［１−６−１（２）．アプリケーション６００］
アプリケーション６００は、特定の機能のために実行されるプログラムである。例えば、アプリケーション６００は、実行されることによりセンサとしてのネットワークデバイス５による測定値を取得してアプリケーション用データベース６０１に格納してよく、また、アプリケーション用データベース６０１から測定値を読み出して他の機器に供給してよい。また、アプリケーション６００は、実行されることによりアプリケーション用データベース６０１内のデータに対してデータ解析を実行してよく、また、解析結果を他の機器に供給してよい。本実施形態では、各アプリケーション６００は、実行ロジック３００により実行されるサービスを利用する。
【００２８】
［１−６−１（３）．認証データベース６０２］
認証データベース６０２は、装置６のユーザアカウントに対応付けて、当該ユーザアカウントを認証するためのユーザ認証情報を記憶する。認証データベース６０２は、複数の実行ロジック３００のインスタンス３１０のそれぞれに割り当てられるロジックアカウントに対応付けて、当該実行ロジック３００を認証するためのロジック認証情報を記憶してよい。
【００２９】
［１−６−１（４）．ロールデータベース６０３］
ロールデータベース６０３は、ロール・権限テーブル６０４と協働し、実行ロジック３００のインスタンス３１０の各々について、当該インスタンス３１０に対して装置６により割り当てられたリソースへのアクセス権限を記憶する。本実施形態では一例として、ロールデータベース６０３はアクセス権限をロールとして記憶する。アクセス権限のロールとはアクセス権限のグループであってよい。
【００３０】
ここで、インスタンス３１０に対して装置６により割り当てられたリソースとは、装置６のリソースのうち、少なくとも一部のリソースでよく、例えば、装置６のユーザにより割り当てられたリソースでよい。装置６のリソースとは、装置６の動作において利用される要素や機器であり、装置６に具備されてもよいし、装置６に外部接続されてもよい。例えばリソースは、アプリケーション用データベース６０１、１または複数のネットワークデバイス５、および、アプリケーション６００自体の少なくとも１つでよい。リソースは、サービス提供装置３の少なくとも一部の構成でもよい。
【００３１】
［１−６−１（５）．ロール・権限テーブル６０４］
ロール・権限テーブル６０４は、アクセス権限のロール毎に、当該ロールに設定されたアクセス権限を記憶する。アクセス権限は、リソースからのデータの読み出し権限、リソースへのデータの書き込み権限、および、リソースの設定の変更権限の少なくとも１つの有無を示してよい。本実施形態では一例として、アプリケーション６００毎にロールに設定されるアクセス権限が異なっており、ロール・権限テーブル６０４はアプリケーション６００毎に設けられているが、複数のアプリケーション６００に対して１つのみ設けられてもよい。
【００３２】
［１−６−１（６）．ロジックデータベース６０５］
ロジックデータベース６０５は、当該実行ロジック３００のインスタンス３１０に割り当てられるロジックアカウント毎に、実行ロジック３００の内容を記憶する。
【００３３】
［１−６−２．ＣＰＵ６１］
ＣＰＵ６１は、アプリケーション６００を実行し、そのインスタンスである実行アプリケーション６１０を内部に生成する。実行アプリケーション６１０は、アプリケーション６００と、当該アプリケーション６００を実行させるユーザアカウントとの組み合わせ毎に異なってよい。実行アプリケーション６１０は、実行ロジック３００のインスタンス３１０を呼び出し可能でよい。
【００３４】
［１−６−３．登録部６２］
登録部６２は、実行ロジック３００のインスタンス３１０を登録する。本実施形態では一例として登録部６２は、実行ロジック３００のインスタンス３１０にロジックアカウントを割り当てて、当該ロジックアカウントをロールデータベース６０３およびロジックデータベース６０５に登録する。また、登録部６２は、実行ロジック３００の内容をロジックアカウントに対応付けてロジックデータベース６０５に登録する。
【００３５】
［１−６−４．認証部６３］
認証部６３は、複数の実行ロジック３００のインスタンス３１０に割り当てられたロジックアカウントのそれぞれの認証を行う。また、認証部６３は、装置６のリソースに対応付けられたユーザアカウントの認証を行う。認証部６３は、認証データベース６０２を参照して認証を行ってよい。ここで、リソースに対応付けられたユーザアカウントとは、リソースの所有者、管理者または貢献者（一例として作成者）であるユーザ（リソースの所有ユーザとも称する）のアカウントであってよい。
【００３６】
［１−６−５．指示入力部６４］
指示入力部６４は、インスタンス３１０からリソースへのアクセス権限について、設定指示を受ける。設定指示は、リソースの所有ユーザによって入力されてよい。指示入力部６４は、設定指示を設定部６５に供給してよい。
【００３７】
［１−６−６．設定部６５］
設定部６５は、設定指示に応じてインスタンス３１０にリソースへのアクセス権限を設定する。例えば、設定部６５は、インスタンス３１０のロジックアカウントに対応付けて、ロールデータベース６０３にアクセス権限のロールを記憶させる。これに加えて、設定部６５は、登録したロールのアクセス権限をロール・権限テーブル６０４に記憶させてよい。
【００３８】
［１−６−８．アクセス制御部６６］
アクセス制御部６６は、ロールデータベース６０３およびロール・権限テーブル６０４に記憶されたアクセス権限の範囲内で各インスタンス３１０にリソースへのアクセスを提供する。アクセス制御部６６は、ロールデータベース６０３においてロジックアカウントに対応付けられたロールに設定されたアクセス権限の範囲内でアクセスを提供してよい。アクセス制御部６６は、認証部６３により正しく認証されたロジックアカウントのインスタンス３１０にリソースへのアクセスを提供してよい。
【００３９】
以上のシステム１によれば、複数の実行ロジック３００のインスタンス３１０の各々についてリソース（一例としてアプリケーション用データベース６０１）へのアクセス権限が記憶され、当該アクセス権限の範囲内で各インスタンス３１０にリソースへのアクセスが提供されるので、装置６のリソースのセキュリティを確保しつつサービスを連携させることができる。また、各インスタンス３１０は実行ロジック３００と、実行ロジック３００を実行させるユーザアカウントとの組み合わせ毎に異なるので、ユーザアカウント毎に異なるアクセス権限を設定することで、セキュリティをいっそう高めることができる。
【００４０】
また、アクセス権限は、リソースからのデータの読み出し権限、リソースへのデータの書き込み権限、および、リソースの設定の変更権限の少なくとも１つの有無を示すので、適切なアクセス権限を設定することでサービスのセキュリティを確実に確保することができる。また、記憶部６０にはアクセス権限がロールとして記憶され、当該ロールに対応するアクセス権限の範囲内でインスタンス３１０にアクセスが提供されるので、インスタンス３１０に対して個別にアクセス権限を設定する場合と比較して、設定を容易化することができる。
【００４１】
また、ロジックアカウントのそれぞれの認証が行われ、正しく認証されたロジックアカウントのインスタンス３１０にリソースへのアクセスが提供されるので、リソースのセキュリティをいっそう高めることができる。
【００４２】
また、記憶部６０には実行ロジック３００により実行されるサービスを利用するアプリケーション６００が記憶されるので、当該アプリケーション６００と１または複数のサービスとの連携が実現される。
【００４３】
また、サービスの実行ロジック３００のインスタンス３１０が登録されて、リソースの所有ユーザによる設定指示に応じて当該インスタンス３１０から当該リソースへのアクセス権限が設定されるので、リソースの所有ユーザによる任意のセキュリティレベルで、リソースのセキュリティを確保しつつサービスを連携させることができる。また、正しく認証されたユーザアカウントのユーザによる設定指示に応じてアクセス権限が設定されるので、リソースのセキュリティを確実に確保することができる。
【００４４】
［２．アプリケーション用データベース６０１の具体例］
図２は、アプリケーション用データベース６０１を示す。アプリケーション用データベース６０１は、対応するアプリケーション６００によりデータの読み書きが行われる。本図では一例としてアプリケーション用データベース６０１は、「センサ０１」等のネットワークデバイス５から取得される温度及び加速度の測定値の時系列データと、各時系列データについてのエラー等のアラームデータとを格納する。アプリケーション用データベース６０１は、センサ毎に設置位置、つまり測定位置を更に記憶してもよい。
【００４５】
［３．ロールデータベース６０３の具体例］
図３は、ロールデータベース６０３を示す。ロールデータベース６０３は、インスタンス３１０の各々についてアクセス権限のロールを記憶する。例えば、ロールデータベース６０３は、装置６のユーザアカウント毎、および、インスタンス３１０のロジックアカウント毎に、アクセス権限のロールと、アクセス権限の対象範囲とを対応付けて記憶する。対象範囲は実行ロジック３００のインスタンス３１０に対して割り当てられた装置６のリソースを示してよい。例えば、対象範囲はデータの読み出し権限、および、データの書き込み権限の少なくとも１つについての装置６のリソースのアドレス範囲を含む。このアドレス範囲は、例えば、最新データの記憶領域、最新データよりも既定の個数だけ古いデータの記憶領域、または、既定のタイムウィンドウ内のデータの記憶領域などを示してよい。これにより、装置６のセキュリティがより確実に確保される。
【００４６】
本図では一例として、ロールデータベース６０３は、ユーザアカウント「Ｕ００００Ａ」，「Ｕ００００Ｂ」およびロジックアカウント「ＬＣ００５Ｃ」と、アクセス権限のロール「Ｏｗｎｅｒ」（所有者），「Ｕｓｅｒ」（ユーザ），「Ｒｅａｄｅｒ」（リーダ）とに対応付けて、アクセス権限の対象範囲として、リソースのＩＤ「Ａｐｐ用ＤＢ０１」のアドレス範囲を記憶している。ここで、「Ｏｗｎｅｒ」は装置６、アプリケーション６００、および、そのリソースの少なくとも１つの所有者に設定されるロールでよい。「Ｕｓｅｒ」はアプリケーション６００、および、そのリソースのメンテナンスを行うエンジニアなどに設定されるロールでよい。「Ｒｅａｄｅｒ」はアプリケーション６００の利用者に設定されるロールでよい。なお、ロールの種類はこれに限らず、アプリケーション６００およびそのリソースの少なくとも一方の管理者に設定される「Ａｄｍｉｎｉｓｔｒａｔｏｒ」（管理者）、アプリケーション６００およびそのリソースの少なくとも一方の貢献者（一例としてプロバイダ、作成者）に設定される「Ｃｏｎｔｒｉｂｕｔｅｒ」（貢献者）などであってもよい。
【００４７】
なお、装置６のリソースを直接的に使用せずに実行ロジック３００のインスタンス３１０を介して間接的に装置６のリソースにアクセスするユーザアカウントについては、アクセス権限の対象範囲が記憶される代わりにインスタンス３１０のロジックアカウントが対応付けられてよい。本図では一例として、ロールデータベース３０１は、ロジックアカウント「ＬＣ００５Ｃ」のインスタンスを生成したサービス利用者ユーザアカウント「Ｕ００００Ｃ」に対応付けて、ロジックアカウント「ＬＣ００５Ｃ」を記憶している。
【００４８】
［４．ロール・権限テーブル６０４の具体例］
図４は、ロール・権限テーブル６０４を示す。ロール・権限テーブル６０４は、アクセス権限のロール毎に、当該ロールに設定されたアクセス権限の内容と、対象範囲とを記憶する。
【００４９】
本図では一例として、ロール・権限テーブル６０４は、ロール「Ｏｗｎｅｒ」のアクセス権限の内容として「読み出し」、「書き込み」および「設定変更」等を記憶し、ロール「Ｒｅａｄｅｒ」のアクセス権限として「読み出し」を記憶し、ロール「Ｕｓｅｒ」のアクセス権限として「アラーム読み出し」を記憶しており、各ロールの対象範囲として、リソースのＩＤ「Ａｐｐ用ＤＢ０１」のアドレス範囲を記憶している。ここで、「読み出し」はリソースからデータを読み出す権限があることを示し、「書き込み」はリソースにデータを書き込む権限があることを示し、「設定変更」はリソースの設定を変更する権限があることを示し、「アラーム読み出し」はリソースからエラーなどのアラームデータを読み出す権限があることを示す。
【００５０】
［５．ロジックデータベース６０５の具体例］
図５は、ロジックデータベース６０５を示す。ロジックデータベース６０５は、実行ロジック３００のインスタンス３１０に割り当てられるロジックアカウント毎に実行ロジック３００の内容を記憶する。実行ロジックの内容は、処理内容、入力データの内容、および、出力データの内容の少なくとも１つ（一例としてデータの種類、個数など）であってよい。ロジックデータベース６０５は、ロジックアカウント毎に、実行ロジック３００のＩＤ、実行ロジック３００により実行されるサービスの利用者が装置６に対して有するユーザアカウント、サービス利用者がサービス提供装置３に対して有するユーザ認証情報（一例としてログインＩＤおよびパスワード）、実行ロジック３００により実行されるサービスを利用するアプリケーション６００のリソースなどを更に記憶してよい。本図では一例として、ロジックデータベース６０５は、ロジックアカウント「ＬＣ００５Ｃ」に対応付けて、実行ロジックＩＤ「ＬＣ００５」、ユーザアカウント「Ｕ００００Ｃ」、ユーザ認証情報、実行ロジックの内容、および、アプリケーションのリソースのＩＤ「Ａｐｐ用ＤＢ０１」などを記憶している。
【００５１】
［６．アクセス権限の設定］
図６は、アクセス権限の設定方法を示す。システム１は、ステップＳ１１〜Ｓ１９の処理を行うことにより１または複数の実行ロジック３００の各インスタンス３１０に対し、装置６のリソースへのアクセス権限を設定する。
【００５２】
ステップＳ１１においてサービス提供装置３のＣＰＵ３１は、クライアント端末２を介したサービス利用者の操作に応じ、装置６におけるアプリケーション６００（連携対象のアプリケーション６００とも称する）と連携させる少なくとも１つの実行ロジック３００のインスタンス３１０を生成し、インスタンス３１０のリストを装置６に供給する。連携対象のアプリケーション６００は、装置６における１部のアプリケーション６００がサービス利用者によって選択されてもよいし、装置６の全てのアプリケーション６００が自動的に選択されてもよい。複数のインスタンス３１０が生成される場合には連携対象のアプリケーション６００として同一のアプリケーション６００が選択されてもよいし、別々のアプリケーション６００が選択されてもよい。
【００５３】
ＣＰＵ３１は、リストをネットワーク上に公開して装置６に当該リストを取得するよう要求してもよいし、リストを装置６に送信してもよい。インスタンス３１０のリストには、インスタンス３１０毎に実行ロジック３００のＩＤおよび内容と、サービス利用者が装置６に対して有するユーザアカウントと、サービス利用者がサービス提供装置３に対して有するユーザ認証情報とが含まれてよい。サービス利用者が装置６に対して有するユーザアカウントは、リソースの所有ユーザのユーザアカウントと同じでもよいし、異なってもよい。リストに含まれる実行ロジック３００の内容は、実行ロジック３００のプログラムであってもよい。なお、サービス提供装置３に記憶された複数の実行ロジック３００のうち、一部のみがアプリケーション６００との連携対象としてサービス利用者に選択された場合には、リストには、選択された実行ロジック３００のインスタンス３１０の情報のみが含まれてよい。
【００５４】
ステップＳ１３において装置６の登録部６２は、供給されたリストに含まれるインスタンス３１０にロジックアカウントを割り当てて、ロジックアカウントおよび実行ロジック３００の内容をロジックデータベース６０５に記憶させることで、インスタンス３１０を登録する。本実施形態では一例として、登録部６２は、ロジックデータベース６０５にロジックアカウントと、実行ロジック３００のＩＤと、実行ロジック３００のサービス利用者が装置６に対して有するユーザアカウントと、サービス利用者がサービス提供装置３に対して有するユーザ認証情報と、実行ロジック３００の内容と、連携対象のアプリケーション６００のリソースとを対応付けて記憶させる。また、登録部６２は、ロジックアカウントをロールデータベース６０３に登録する。
【００５５】
また、登録部６２は、装置６がインスタンス３１０を認証するためのロジック認証情報（一例として装置６へのログインＩＤおよびパスワード）を生成し、ロジックアカウントと対応付けて認証データベース６０２に登録する。また、登録部６２は、ロジックアカウントおよびロジック認証情報をステップＳ１１でのリストの送信元の各サービス提供装置３に送信する。
【００５６】
ステップＳ１４においてサービス提供装置３は、送信されたロジックアカウントとロジック認証情報とを対応付けて記憶部３０に記憶させる。
【００５７】
ステップＳ１５において装置６の認証部６３は、リソースの所有ユーザについてユーザアカウントの認証を行う。例えば、認証部６３は、所有ユーザにユーザ認証情報（一例として装置６へのログインＩＤおよびパスワード）を入力させ、認証データベース６０２に記憶されたユーザ認証情報と一致するか否かの認証を行う。認証部６３は、正しく認証されたことに応じてそのログインＩＤに対応するユーザアカウントへのログインを行わせる。以後、ステップＳ１９までの処理はログイン中に行われる。本実施形態では一例として、リソースの所有ユーザは一人であることとして説明するが、複数人であってもよい。リソースの所有ユーザが複数人である場合には、ステップＳ１５以降の処理は所有ユーザごとに行われてよい。なお、リソースの所有ユーザによる入力は、装置６に直接行われてもよいし、クライアント端末２などの他の機器を介して装置６に行われてもよい。
【００５８】
ステップＳ１７において、装置６の指示入力部６４は、登録されたインスタンス３１０から装置６のリソースへのアクセス権限の設定指示をリソースの所有ユーザから受ける。本実施形態では一例として、指示入力部６４は、アクセス権限のロール、および、アクセス権限の対象範囲の設定指示を受ける。複数のインスタンス３１０が登録された場合には、指示入力部６４は、インスタンス３１０毎に設定指示を受けてよい。
【００５９】
ステップＳ１９において、装置６の設定部６５は、設定指示に応じて各インスタンス３１０にリソースへのアクセス権限を設定する。例えば、設定部６５は、ロールデータベース６０３に登録されたインスタンス３１０のロジックアカウントに対応付けてロールと、アクセス権限の対象範囲とを記憶させる。また、設定部６５は、ロール・権限テーブル６０４にロールのアクセス権限を記憶させる。本実施形態では一例として、ロール・権限テーブル６０４には、ロールと、アクセス権限の内容とが予め対応付けて記憶されており、設定部６５は、設定指示に応じてロールのアクセス権限の対象範囲を記憶させる。これにより、各インスタンス３１０について、当該インスタンス３１０に対して割り当てられたリソースへのアクセス権限が記憶される。なお、ロール・権限テーブル６０４におけるアクセス権限の対象範囲は、ロールデータベース６０３に対象範囲を設定する場合のマスタとして用いられてよく、設定可能な最も広い対象範囲を示してよい。この場合、設定部６５は、設定指示に応じ、ロール・権限テーブル３０３に記憶されたアクセス権限の対象範囲の少なくとも一部を、インスタンス３１０についてのアクセス権限の対象範囲としてロールデータベース３０１に記憶させてよい。
【００６０】
なお、設定部６５は、インスタンス３１０毎に別々のアクセス権限を設定してよい。設定部６５は、ロジックデータベース６０５に登録された実行ロジック３００の内容、および、アプリケーション６００のリソースの少なくとも一方に応じてアクセス権限を設定してもよい。例えば、設定部６５は、リソースから少なくとも一部のデータを抽出して蓄積する実行ロジック３００（一例として特定のデータのストレージを行う実行ロジック３００）や、リソースからデータを読み出して装置６とは異なる機器に出力する実行ロジック３００（一例としてデータのグラフ化，解析を行う実行ロジック３００）のロジックアカウントに対し、ロールを「Ｒｅａｄｅｒ」としてよい。また、設定部６５は、アクセス権限の対象範囲を、リソースに含まれるアプリケーション用データベース６０１としてよい。
【００６１】
また、本図では一例として実行ロジック３００のインスタンス３１０にリソースへのアクセス権限を設定する方法について説明したが、サービス利用者に対してアクセス権限が設定されてもよい。この場合には、正しく認証されたリソースの所有ユーザによるアクセス権限の設定指示に応じて、設定部６５がサービス利用者のユーザアカウントに対応付けてアクセス権限を設定してよい。
【００６２】
［７．サービスの提供］
図７は、サービスの提供方法を示す。システム１は、ステップＳ３１〜Ｓ４５の処理を行うことにより装置６のリソースにアクセスして実行ロジック３００によるサービスを提供する。なお、本図では一例として、システム１が２つのサービス提供装置３（サービス提供装置３Ａ，３Ｂとも称する）で生成される別々のインスタンス３１０によるサービスを連携させて提供するが、インスタンス３１０の数は１つでもよいし３つ以上でもよい。一例として、サービス提供装置３Ａで生成されるインスタンス３１０（インスタンス３１０Ａとも称する）は、データの解析サービスを提供してよい。また、サービス提供装置３Ｂで生成されるインスタンス３１０（インスタンス３１０Ｂとも称する）は、特定のネットワークデバイス５から一部のデータを抽出して蓄積するストレージサービスを提供してよい。
【００６３】
ステップＳ３１において装置６の認証部６３は、上述のステップＳ１５と同様にして、サービス利用者についてユーザアカウントの認証を行い、ユーザアカウントへのログインを行わせる。以後、ステップＳ４５までの処理は装置６のユーザアカウントへのログイン中に行われる。なお、サービス利用者による入力は、装置６に直接行われてもよいし、クライアント端末２などの他の機器を介して装置６に行われてもよい。
【００６４】
ステップＳ３３においてＣＰＵ６１は、サービス利用者の操作に応じて連携対象のアプリケーション６００を実行し、実行アプリケーション６１０を内部に生成する。
【００６５】
ステップＳ３５においてＣＰＵ６１は、サービス利用者の操作に応じて１または複数のサービス提供装置３（本実施形態では一例として２つのサービス提供装置３Ａ，３Ｂ）によるサービスにログインする。また、実行アプリケーション６１０は、サービス利用者の操作に応じて１または複数の実行ロジック３００のインスタンス３１０（本実施形態では一例として２つのインスタンス３１０Ａ，３１０Ｂ）を呼び出す。
【００６６】
ＣＰＵ６１は、サービス利用者が各サービス提供装置３に対して有するユーザ認証情報をロジックデータベース６０５から読み出してログインを行ってよく、以後、ステップＳ４５までの処理は各サービス提供装置３のユーザアカウントへのログイン中に行われる。なお、ユーザ認証情報がロジックデータベース６０５に格納されていない場合には、ＣＰＵ６１は、サービス利用者にユーザ認証情報を入力させてサービス提供装置３に認証を行わせ、正しく認証されたことに応じてユーザアカウントへのログインを行わせてよい。
【００６７】
ステップＳ３７において、ログインされた各サービス提供装置３のＣＰＵ３１は、呼び出しを受けた各実行ロジック３００を実行してインスタンス３１０を内部に生成する。本実施形態では一例として、サービス提供装置３Ａがインスタンス３１０Ａを生成し、サービス提供装置３Ｂがインスタンス３１０Ｂを生成する。
【００６８】
ステップＳ３９において各サービス提供装置３の各インスタンス３１０（本実施形態では一例としてインスタンス３１０Ａ，３１０Ｂ）は、自身に割り当てられたロジックアカウントに対応付けて記憶部３０に記憶されたロジック認証情報（一例として装置６へのログインＩＤおよびパスワード）を装置６に送信する。
【００６９】
ステップＳ４１において装置６の認証部６３は、送信された各ロジックアカウントの認証を行う。例えば、認証部６３は、送信されたロジック認証情報と、認証データベース６０２に記憶されたロジック認証情報とが一致するか否かの認証を行い、正しく認証されたことに応じてロジックアカウントへのログインを行わせる。以後、ステップＳ４５までの処理は装置６へのログイン中に行われる。
【００７０】
ステップＳ４３において、認証されたサービス提供装置３の各インスタンス３１０は、装置６のリソースにアクセスしつつサービスを実行する。インスタンス３１０は、リソースにアクセスする場合には、自身のロジックアカウントを含むアクセス要求をリソースに送信し、アクセス制御部６６によってアクセスが許可されることに応じてアクセスを行ってよい。
【００７１】
ステップＳ４５においてアクセス制御部６６は、各インスタンス３１０に対し、そのアクセス権限の範囲内でリソースへのアクセスを提供する。アクセス制御部６６は、インスタンス３１０からのアクセス要求がある毎にロールデータベース６０３を参照して、当該アクセス要求に含まれるロジックアカウントに対応するロールと、そのアクセス権限の対象範囲を特定し、ロール・権限テーブル６０４を参照して、ロールに対応するアクセス権限の内容を特定し、要求されるアクセスがアクセス権限の範囲内であるかを判断してよい。アクセス権限の対象範囲は装置６に外部接続されたリソース（一例としてサービス提供装置３Ｂ）を含んでもよい。アクセス制御部６６は、インスタンス３１０によるアクセスがアクセス権限の範囲内であることを条件として、当該インスタンス３１０にアクセスを提供してよい。これにより、ロールに対応するアクセス権限の範囲内でアクセスが提供される。なお、アクセス制御部６６は、アクセスがある毎に当該アクセスがアクセス権限の範囲内であるかを判断する代わりに、予めアクセス権限の範囲内でリソースをアクセス可能にしてもよい。
【００７２】
以上の動作によれば、装置６のリソースのセキュリティを確保しつつサービスを連携させることができる。例えば、データ解析サービスを提供するインスタンス３１０Ａがインスタンス３１０Ｂによるストレージデータを読み出すべくサービス提供装置３Ｂにアクセスすると、アクセス制御部６６によって当該アクセスがアクセス権限の範囲内であると判断されてアクセスが提供される。これにより、インスタンス３１０Ａによるデータ解析サービスと、インスタンス３１０Ｂによるデータストレージサービスとが連携される。
【００７３】
［７−１．具体例（１）］
図８は、リソースへのアクセスが提供される態様の一例を示す。本図では一例として、リソースは、温度および加速度の測定値を取得するセンサとしてのネットワークデバイス５、および、測定値を格納するアプリケーション用データベース６０１を有する。
【００７４】
このリソースに対し、ユーザアカウント「Ｕ００００Ａ」のユーザはロール「Ｏｗｎｅｒ」のアクセス権限を有しており、アプリケーション用データベース６０１からのデータの読み出し、ネットワークデバイス５の設定変更が可能となっている。また、ユーザアカウント「Ｕ００００Ｂ」のユーザはロール「Ｕｓｅｒ」のアクセス権限を有しており、アプリケーション用データベース６０１からのアラームデータの読み出しが可能となっている。また、ロジックアカウント「ＬＣ００５Ｃ」のインスタンス３１０はロール「Ｒｅａｄｅｒ」のアクセス権限を有しており、アプリケーション用データベース６０１からのデータの読み出しが可能となっている。
【００７５】
［７−２．具体例（２）］
図９は、リソースへのアクセスが提供される態様の他の例を示す。本図では一例として、リソースは、データ解析を行うＩＤ「Ａｐｐ０１」のアプリケーション６００自体と、解析対象のデータ、および、解析結果のデータを格納するアプリケーション用データベース６０１とを有する。
【００７６】
このリソースに対し、ユーザアカウント「Ｕ００００Ａ」のユーザはロール「Ｏｗｎｅｒ」のアクセス権限を有しており、アプリケーション用データベース６０１のデータの読み出し、書き込み、および、「Ａｐｐ０２」のアプリケーション６００の設定変更が可能となっている。また、ロジックアカウント「ＬＣ０００５Ｃ」のインスタンスはロール「Ｃｏｎｔｒｉｂｕｔｅｒ」のアクセス権限を有しており、アプリケーション用データベース６０１のデータの読み出しおよび書き込みが可能となっている。また、ロジックアカウント「ＬＣ００５Ｃ」のインスタンス３１０はロール「Ｒｅａｄｅｒ」のアクセス権限を有しており、アプリケーション用データベース６０１からのデータの読み出しが可能となっている。
【００７７】
［８．変形例］
なお、上記の実施形態では、ロール・権限テーブル６０４にはアクセス権限の対象範囲が記憶されることとして説明したが、アクセス権限の有効期間（一例として１か月）または有効アクセス回数（一例として１０回）などが記憶されてもよい。
【００７８】
また、装置６はＣＰＵ６１、登録部６２、認証部６３、指示入力部６４、設定部６５およびアプリケーション６００を有することとして説明したが、これらの少なくとも１つを有しなくてもよい。例えばこれらの構成は、装置６に接続される外部機器に具備されてもよい。
【００７９】
また、サービス提供装置３の記憶部３０は実行ロジック３００を記憶することとして説明したが、これに加えて、サービス提供装置３のリソースへのアクセス権限を記憶してもよい。例えば、記憶部３０は、サービス提供装置３のリソースにアクセスするインスタンス毎に、アクセス権限を記憶してよい。記憶部３０は、装置６の記憶部６０と同様の態様でアクセス権限を記憶してよく、一例としてロールデータベース６０３およびロール・権限テーブル６０４の同様のロールデータベースおよびロール・権限テーブルを記憶してよい。
【００８０】
また、アプリケーション６００は実行ロジック３００により実行されるサービスを利用することとして説明したが、アプリケーション６００自体がサービスを提供する実行ロジックであってもよい。この場合には、アプリケーション６００による提供サービスを実行ロジック３００のインスタンス３１０によって利用するサービス提供装置３は、当該サービス提供装置３のリソースにアクセスするインスタンス（一例として実行アプリケーション６１０）毎にアクセス権限を記憶してよい。
【００８１】
また、記憶部６０はロールデータベース６０３によってロジックアカウント毎にアクセス権限のロールを記憶し、ロール・権限テーブル６０４によってロール毎にアクセス権限を記憶することとして説明したが、ロールを介さずにロジックアカウント毎にアクセス権限を記憶してもよい。
【００８２】
また、ロールデータベース６０３およびロール・権限テーブル６０４にアクセス権限の対象範囲が記憶されることとして説明したが、何れか一方のみが記憶してもよい。
【００８３】
また、本発明の様々な実施形態は、フローチャートおよびブロック図を参照して記載されてよく、ここにおいてブロックは、（１）操作が実行されるプロセスの段階または（２）操作を実行する役割を持つ装置のセクションを表わしてよい。特定の段階およびセクションが、専用回路、コンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、およびコンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサの少なくとも１つによって実装されてよい。専用回路は、デジタルおよびアナログの少なくとも一方のハードウェア回路を含んでよく、集積回路（ＩＣ）およびディスクリート回路の少なくとも一方を含んでよい。プログラマブル回路は、論理ＡＮＤ、論理ＯＲ、論理ＸＯＲ、論理ＮＡＮＤ、論理ＮＯＲ、および他の論理操作、フリップフロップ、レジスタ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プログラマブルロジックアレイ（ＰＬＡ）等のようなメモリ要素等を含む、再構成可能なハードウェア回路を含んでよい。
【００８４】
コンピュータ可読媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読媒体は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読媒体のより具体的な例としては、フロッピー（登録商標）ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、リードオンリメモリ（ＲＯＭ）、消去可能プログラマブルリードオンリメモリ（ＥＰＲＯＭまたはフラッシュメモリ）、電気的消去可能プログラマブルリードオンリメモリ（ＥＥＰＲＯＭ）、静的ランダムアクセスメモリ（ＳＲＡＭ）、コンパクトディスクリードオンリメモリ（ＣＤ-ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、ブルーレイ（ＲＴＭ）ディスク、メモリスティック、集積回路カード等が含まれてよい。
【００８５】
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ（ＩＳＡ）命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはＳｍａｌｌｔａｌｋ、ＪＡＶＡ（登録商標）、Ｃ＋＋等のようなオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語または同様のプログラミング言語のような従来の手続型プログラミング言語を含む、１または複数のプログラミング言語の任意の組み合わせで記述されたコードまたはオブジェクトコードのいずれかを含んでよい。
【００８６】
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサまたはプログラマブル回路に対し、ローカルにまたはローカルエリアネットワーク（ＬＡＮ）、インターネット等のようなワイドエリアネットワーク（ＷＡＮ）を介して提供され、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく、コンピュータ可読命令を実行してよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【００８７】
図１０は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ２２００の例を示す。コンピュータ２２００にインストールされたプログラムは、コンピュータ２２００に、本発明の実施形態に係る装置に関連付けられる操作または当該装置の１または複数のセクションとして機能させることができ、または当該操作または当該１または複数のセクションを実行させることができ、これに加えて、またはこれに代えて、コンピュータ２２００に、本発明の実施形態に係るプロセスまたは当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ２２００に、本明細書に記載のフローチャートおよびブロック図のブロックのうちのいくつかまたはすべてに関連付けられた特定の操作を実行させるべく、ＣＰＵ２２１２によって実行されてよい。
【００８８】
本実施形態によるコンピュータ２２００は、ＣＰＵ２２１２、ＲＡＭ２２１４、グラフィックコントローラ２２１６、およびディスプレイデバイス２２１８を含み、それらはホストコントローラ２２１０によって相互に接続されている。コンピュータ２２００はまた、通信インタフェース２２２２、ハードディスクドライブ２２２４、ＤＶＤ−ＲＯＭドライブ２２２６、およびＩＣカードドライブのような入出力ユニットを含み、それらは入出力コントローラ２２２０を介してホストコントローラ２２１０に接続されている。コンピュータはまた、ＲＯＭ２２３０およびキーボード２２４２のようなレガシの入出力ユニットを含み、それらは入出力チップ２２４０を介して入出力コントローラ２２２０に接続されている。
【００８９】
ＣＰＵ２２１２は、ＲＯＭ２２３０およびＲＡＭ２２１４内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ２２１６は、ＲＡＭ２２１４内に提供されるフレームバッファ等またはそれ自体の中にＣＰＵ２２１２によって生成されたイメージデータを取得し、イメージデータがディスプレイデバイス２２１８上に表示されるようにする。
【００９０】
通信インタフェース２２２２は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ２２２４は、コンピュータ２２００内のＣＰＵ２２１２によって使用されるプログラムおよびデータを格納する。ＤＶＤ−ＲＯＭドライブ２２２６は、プログラムまたはデータをＤＶＤ−ＲＯＭ２２０１から読み取り、ハードディスクドライブ２２２４にＲＡＭ２２１４を介してプログラムまたはデータを提供する。ＩＣカードドライブは、プログラムおよびデータをＩＣカードから読み取り、これに加えて、またはこれに代えてプログラムおよびデータをＩＣカードに書き込む。
【００９１】
ＲＯＭ２２３０はその中に、アクティブ化時にコンピュータ２２００によって実行されるブートプログラム等、およびコンピュータ２２００のハードウェアに依存するプログラムの少なくとも１つを格納する。入出力チップ２２４０はまた、様々な入出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ２２２０に接続してよい。
【００９２】
プログラムが、ＤＶＤ−ＲＯＭ２２０１またはＩＣカードのようなコンピュータ可読媒体によって提供される。プログラムは、コンピュータ可読媒体から読み取られ、コンピュータ可読媒体の例でもあるハードディスクドライブ２２２４、ＲＡＭ２２１４、またはＲＯＭ２２３０にインストールされ、ＣＰＵ２２１２によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ２２００に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置または方法が、コンピュータ２２００の使用に従い情報の操作または処理を実現することによって構成されてよい。
【００９３】
例えば、通信がコンピュータ２２００および外部デバイス間で実行される場合、ＣＰＵ２２１２は、ＲＡＭ２２１４にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース２２２２に対し、通信処理を命令してよい。通信インタフェース２２２２は、ＣＰＵ２２１２の制御下、ＲＡＭ２２１４、ハードディスクドライブ２２２４、ＤＶＤ−ＲＯＭ２２０１、またはＩＣカードのような記録媒体内に提供される送信バッファ処理領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、またはネットワークから受信された受信データを記録媒体上に提供される受信バッファ処理領域等に書き込む。
【００９４】
また、ＣＰＵ２２１２は、ハードディスクドライブ２２２４、ＤＶＤ−ＲＯＭドライブ２２２６（ＤＶＤ−ＲＯＭ２２０１）、ＩＣカード等のような外部記録媒体に格納されたファイルまたはデータベースの全部または必要な部分がＲＡＭ２２１４に読み取られるようにし、ＲＡＭ２２１４上のデータに対し様々なタイプの処理を実行してよい。ＣＰＵ２２１２は次に、処理されたデータを外部記録媒体にライトバックする。
【００９５】
様々なタイプのプログラム、データ、テーブル、およびデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。ＣＰＵ２２１２は、ＲＡＭ２２１４から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプの操作、情報処理、条件判断、条件分岐、無条件分岐、情報の検索，置換等を含む、様々なタイプの処理を実行してよく、結果をＲＡＭ２２１４に対しライトバックする。また、ＣＰＵ２２１２は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第２の属性の属性値に関連付けられた第１の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、ＣＰＵ２２１２は、第１の属性の属性値が指定される、条件に一致するエントリを当該複数のエントリの中から検索し、当該エントリ内に格納された第２の属性の属性値を読み取り、それにより予め定められた条件を満たす第１の属性に関連付けられた第２の属性の属性値を取得してよい。
【００９６】
上で説明したプログラムまたはソフトウェアモジュールは、コンピュータ２２００上またはコンピュータ２２００近傍のコンピュータ可読媒体に格納されてよい。また、専用通信ネットワークまたはインターネットに接続されたサーバーシステム内に提供されるハードディスクまたはＲＡＭのような記録媒体が、コンピュータ可読媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ２２００に提供する。
【００９７】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００９８】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【００９９】
１  システム、２  クライアント端末、３  サービス提供装置、５  ネットワークデバイス、６  装置、１１  ネットワーク、１２  ネットワーク、３０  記憶部、３１  ＣＰＵ、６０  記憶部、６１  ＣＰＵ、６２  登録部、６３  認証部、６４  指示入力部、６５  設定部、６６  アクセス制御部、３００  実行ロジック、３１０  インスタンス、６００  アプリケーション、６０１  アプリケーション用データベース、６０２  認証データベース、６０３  ロールデータベース、６０４  ロール・権限テーブル、６０５  ロジックデータベース、６１０  実行アプリケーション、２２００  コンピュータ、２２０１  ＤＶＤ−ＲＯＭ、２２１０  ホストコントローラ、２２１２  ＣＰＵ、２２１４  ＲＡＭ、２２１６  グラフィックコントローラ、２２１８  ディスプレイデバイス、２２２０  入出力コントローラ、２２２２  通信インタフェース、２２２４  ハードディスクドライブ、２２２６  ＤＶＤ−ＲＯＭドライブ、２２３０  ＲＯＭ、２２４０  入出力チップ、２２４２  キーボード
【図１】
2020016989.tif 000003
【図２】
2020016989.tif 000004
【図３】
2020016989.tif 000005
【図４】
2020016989.tif 000006
【図５】
2020016989.tif 000007
【図６】
2020016989.tif 000008
【図７】
2020016989.tif 000009
【図８】
2020016989.tif 000010
【図９】
2020016989.tif 000011
【図１０】
2020016989.tif 000012
【手続補正書】
【提出日】令和1年10月24日(2019.10.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
外部機器においてサービスを実行する実行ロジックのインスタンスに割り当てられたロジックアカウントを登録する登録部と、
リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力部と、
前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定部と、
を備え、
前記リソースは、当該装置のリソースである、装置。
【請求項２】
前記設定部は、第１の外部機器において第１のサービスを実行する第１のインスタンスに対し、第２の外部機器において第２のインスタンスにより実行される第２のサービスへのアクセス権限をさらに設定する、請求項１に記載の装置。
【請求項３】
サービスを実行する実行ロジックのインスタンスに割り当てられたロジックアカウントを登録する登録部と、
リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力部と、
前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定部と、
を備え、
前記設定部は、第１の外部機器において第１のサービスを実行する第１のインスタンスに対し、第２の外部機器において第２のインスタンスにより実行される第２のサービスへのアクセス権限を設定する、装置。
【請求項４】
前記サービスを利用するアプリケーションを記憶する記憶部
を備える、請求項１から３のいずれか一項に記載の装置。
【請求項５】
前記ユーザアカウントの認証を行う認証部を備え、
前記指示入力部は、前記認証部により正しく認証された前記ユーザアカウントのユーザによる前記設定指示を受ける、
請求項１から４のいずれか一項に記載の装置。
【請求項６】
前記インスタンスに設定された前記アクセス権限の範囲内で当該インスタンスに前記リソースへのアクセスを提供するアクセス制御部、
を備える、請求項１から５のいずれか一項に記載の装置。
【請求項７】
前記設定部は、前記アクセス権限をロールとして設定する、
請求項１から６のいずれか一項に記載の装置。
【請求項８】
前記アクセス権限は、前記サービスが保持するデータの読み出し権限、前記サービスが用いるデータの書き込み権限、および、前記サービスの設定の変更権限の少なくとも１つの有無を示す、
請求項１から７のいずれか一項に記載の装置。
【請求項９】
前記アクセス権限は、前記データの読み出し権限、および、前記データの書き込み権限の少なくとも１つについて前記リソースにおけるアドレス範囲を更に示す、
請求項８に記載の装置。
【請求項１０】
コンピュータにより、外部機器においてサービスを実行する実行ロジックのインスタンスに割り当てられたロジックアカウントを登録する登録段階と、
コンピュータにより、リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力段階と、
コンピュータにより、前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定段階と、
を備え、
前記リソースは、当該コンピュータのリソースである、方法。
【請求項１１】
コンピュータにより、サービスを実行する実行ロジックのインスタンスに割り当てられたロジックアカウントを登録する登録段階と、
コンピュータにより、リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力段階と、
コンピュータにより、前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定段階と、
を備え、
前記設定段階では、第１の外部機器において第１のサービスを実行する第１のインスタンスに対し、第２の外部機器において第２のインスタンスにより実行される第２のサービスへのアクセス権限を設定する、方法。
【請求項１２】
コンピュータを、
外部機器においてサービスを実行する実行ロジックのインスタンスに割り当てられたロジックアカウントを登録する登録部と、
リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力部と、
前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定部
として機能させ、
前記リソースは、当該コンピュータのリソースであるプログラム。
【請求項１３】
コンピュータを、
サービスを実行する実行ロジックのインスタンスに割り当てられたロジックアカウントを登録する登録部と、
リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力部と、
前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定部
として機能させ、
前記設定部は、第１の外部機器において第１のサービスを実行する第１のインスタンスに対し、第２の外部機器において第２のインスタンスにより実行される第２のサービスへのアクセス権限を設定するプログラム。
【請求項１４】
コンピュータを、
外部機器においてサービスを実行する実行ロジックのインスタンスに割り当てられたロジックアカウントを登録する登録部と、
リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力部と、
前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定部
として機能させ、
前記リソースは、当該コンピュータのリソースであるプログラムを記録した記録媒体。
【請求項１５】
コンピュータを、
サービスを実行する実行ロジックのインスタンスに割り当てられたロジックアカウントを登録する登録部と、
リソースに対応付けられたユーザアカウントを有するユーザによる、前記インスタンスから前記リソースへのアクセス権限の設定指示を受ける指示入力部と、
前記設定指示に応じて前記インスタンスに前記リソースへのアクセス権限を設定する設定部
として機能させ、
前記設定部は、第１の外部機器において第１のサービスを実行する第１のインスタンスに対し、第２の外部機器において第２のインスタンスにより実行される第２のサービスへのアクセス権限を設定するプログラムを記録した記録媒体。