(57)【要約】      （修正有）【課題】装置属性情報に基づきデータへのアクセスを管理する技術を提供する。【解決手段】ネットワークを介して第１の装置から要求を受信するステップ、前記要求を受信するのに応答して、前記第１の装置の位置を決定するステップ、前記第１の装置と異なる第２の装置に対する前記第１の装置の前記位置に基づき、１又は複数の動作が前記第２の装置に関する特定のデータに対して実行されるのを許可するか否かを決定するステップ、前記第２の装置に対する前記第１の装置の前記位置に基づき、前記１又は複数の動作が前記特定のデータに対して実行されるのを許可すると決定するのに応答して、前記１又は複数の動作が前記特定のデータに対して実行されるのを許可するステップ、を有する。【選択図】図１
2013235592.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して、第１の装置により処理されるべき第１の特定のデータに対する第１の要求を受信するステップ、
前記第１の装置の１又は複数の第１の属性に基づき、前記第１の装置に対して１又は複数の動作が前記第１の特定のデータに実行されるのを許可するか否かを決定するステップ、
前記１又は複数の動作が前記第１の特定のデータに実行されるのを許可した後に、
前記第１の装置へ、前記第１の装置の１又は複数の特性に対する要求を送信するステップ、
前記要求に応答して、前記第１の装置から前記１又は複数の特性を受信するステップ、
前記１又は複数の特性に基づき、前記第１の装置と関連付けられた１又は複数の第２の属性を格納するステップ、
前記１又は複数の第２の属性を格納した後に、
前記第１の装置により処理されるべき第２の特定のデータに対する第２の要求を受信するステップ、
前記第１の装置の前記１又は複数の第２の属性に基づき、前記第１の装置に対して、１又は複数の第２の動作が前記第２の特定のデータに実行されるのを許可するか否かを決定するステップ、
前記第１の装置に対して、前記１又は複数の第２の動作が前記第２の特定のデータに実行されるのを許可しないと決定するステップであって、前記第１の装置は前記第２の特定のデータを処理することが可能である、ステップ、
を有し、
前記方法は１又は複数のコンピュータ装置により実行される、方法。
【請求項２】
前記１又は複数の動作は、前記第１の装置へ前記第１の特定のデータを送信するステップ、又は前記第１の特定のデータに反映された電子文書の印刷されたバージョンを有形媒体に印刷させるステップ、のうちの少なくとも１つを有する、請求項１に記載の方法。
【請求項３】
前記第１の装置の前記１又は複数の特性は、前記第１の装置の１又は複数のセキュリティ機能に対応する、請求項１に記載の方法。
【請求項４】
前記第１の要求は、文書名のリストのうちの１つのため又は文書を印刷することであり、
前記第１の装置は刷装置であり、
前記第１の特定のデータは、前記文書名のリストのうちの１つ又は印刷ジョブである、
請求項１に記載の方法。
【請求項５】
前記第１の要求は文書を印刷することであり、
前記方法は、
前記文書と関連付けられている電子印刷データの１又は複数の属性を示す属性データを識別するステップ、
を更に有し、
前記１又は複数の動作が前記第１の特定のデータに実行されることを許可するか否かの決定は、前記電子印刷データと関連付けられた属性データと前記第１の装置の前記１又は複数の第１の属性との比較に更に基づく、請求項４に記載の方法。
【請求項６】
前記第１の装置の前記１又は複数の特性は、前記第１の装置の１又は複数の第２の特性であり、
前記方法は、前記第１の要求を受信するステップの前に、
前記第１の装置へ、前記第１の装置の１又は複数の第１の特性に対する要求を送信するステップであって、前記１又は複数の第１の特性は、前記１又は複数の第２の特性と異なる、ステップ、
前記要求に応答して、前記第１の装置から、前記第１の装置の前記１又は複数の第１の特性を示す特性データを受信するステップ、
前記１又は複数の第２の特性に基づき、前記１又は複数の属性を決定するステップ、
を更に有する請求項１に記載の方法。
【請求項７】
前記１又は複数の第２の属性を格納するステップは、前記第１の装置を認証されていると分類する分類データを格納するステップを有し、
前記第１の装置の前記１又は複数の第２の属性は、前記第１の装置が認証されていると分類されているか否かを示す、
請求項１に記載の方法。
【請求項８】
１又は複数の認証基準が満たされるか否かを決定するために、前記第１の装置へ、前記第１の装置の特性に対する要求を周期的に送信するステップ、
を更に有する請求項１に記載の方法。
【請求項９】
前記第１の要求は、第２の装置から受信され、
前記方法は、前記第２の装置の１又は複数の属性を決定するステップ、を更に有し、
１又は複数の動作が前記第１の特定のデータに実行されるのを許可するか否かを決定するステップは、前記第２の装置の前記１又は複数の属性に更に基づく、
請求項１に記載の方法。
【請求項１０】
前記第１の要求は、第２の装置から受信され、
前記方法は、前記第２の装置の１又は複数の位置を決定するステップ、を更に有し、
１又は複数の動作が前記第１の特定のデータに実行されるのを許可するか否かを決定するステップは、前記第２の装置の前記位置に更に基づく、
請求項１に記載の方法。
【請求項１１】
命令を格納する１又は複数の記憶媒体であって、前記命令は、１又は複数のプロセッサにより実行されると、
ネットワークを介して、第１の装置により処理されるべき第１の特定のデータに対する第１の要求を受信するステップ、
前記第１の装置の１又は複数の第１の属性に基づき、前記第１の装置に対して１又は複数の動作が前記第１の特定のデータに実行されるのを許可するか否かを決定するステップ、
前記１又は複数の動作が前記第１の特定のデータに実行されるのを許可した後に、前記第１の装置へ、前記第１の装置の１又は複数の特性に対する要求を送信するステップ、
前記要求に応答して、前記第１の装置から前記１又は複数の特性を受信するステップ、
前記１又は複数の特性に基づき、前記第１の装置と関連付けられた１又は複数の第２の属性を格納するステップ、
前記１又は複数の第２の属性を格納した後に、
前記第１の装置により処理されるべき第２の特定のデータに対する第２の要求を受信するステップ、
前記第１の装置の前記１又は複数の第２の属性に基づき、前記第１の装置に対して、１又は複数の第２の動作が前記第２の特定のデータに実行されるのを許可するか否かを決定するステップ、
前記第１の装置に対して、前記１又は複数の第２の動作が前記第２の特定のデータに実行されるのを許可しないと決定するステップであって、前記第１の装置は前記第２の特定のデータを処理することが可能である、ステップ、
を生じる、１又は複数の記憶媒体。
【請求項１２】
前記１又は複数の動作は、前記第１の装置へ前記第１の特定のデータを送信するステップ、又は前記特定のデータに反映された電子文書の印刷されたバージョンを有形媒体に印刷させるステップ、のうちの少なくとも１つを有する、請求項１１に記載の１又は複数の記憶媒体。
【請求項１３】
前記第１の装置の前記１又は複数の特性は、前記第１の装置の１又は複数のセキュリティ機能に対応する、請求項１１に記載の１又は複数の記憶媒体。
【請求項１４】
前記第１の要求は、文書名のリストのうちの１つのため又は文書を印刷することであり、
前記第１の装置は刷装置であり、
前記第１の特定のデータは、前記文書名のリストのうちの１つ又は印刷ジョブである、
請求項１１に記載の１又は複数の記憶媒体。
【請求項１５】
前記第１の要求は文書を印刷することであり、
前記命令は、前記１又は複数のプロセッサにより実行されると、
前記文書と関連付けられている電子印刷データの１又は複数の属性を示す属性データを識別するステップ、
を更に生じ、
前記１又は複数の動作が前記第１の特定のデータに実行されることを許可するか否かを決定するステップは、前記電子印刷データと関連付けられた属性データと前記第１の装置の前記１又は複数の第１の属性との比較に更に基づく、請求項１４に記載の方法。
【請求項１６】
前記第１の装置の前記１又は複数の特性は、前記第１の装置の１又は複数の第２の特性であり、
前記命令は、前記１又は複数のプロセッサにより実行されると、前記第１の要求を受信するステップの前に、
前記第１の装置へ、前記第１の装置の１又は複数の第１の特性に対する要求を送信するステップであって、前記１又は複数の第１の特性は、前記１又は複数の第２の特性と異なる、ステップ、
前記要求に応答して、前記第１の装置から、前記第１の装置の前記１又は複数の第１の特性を示す特性データを受信するステップ、
前記１又は複数の第２の特性に基づき、前記１又は複数の属性を決定するステップ、
を更に生じる、請求項１１に記載の１又は複数の記憶媒体。
【請求項１７】
前記１又は複数の第２の属性を格納するステップは、前記第１の装置を認証されていると分類する分類データを格納するステップを有し、
前記第１の装置の前記１又は複数の第２の属性は、前記第１の装置が認証されていると分類されているか否かを示す、
請求項１１に記載の１又は複数の記憶媒体。
【請求項１８】
前記命令は、前記１又は複数のプロセッサにより実行されると、
１又は複数の認証基準が満たされるか否かを決定するために、前記第１の装置へ、前記第１の装置の特性に対する要求を周期的に送信するステップ、
を更に生じる、請求項１１に記載の１又は複数の記憶媒体。
【請求項１９】
前記第１の要求は、第２の装置から受信され、
前記命令は、前記１又は複数のプロセッサにより実行されると、前記第２の装置の１又は複数の属性を決定するステップ、を更に生じ、
１又は複数の動作が前記第１の特定のデータに実行されるのを許可するか否かを決定するステップは、前記第２の装置の前記１又は複数の属性に更に基づく、
請求項１１に記載の１又は複数の記憶媒体。
【請求項２０】
前記第１の要求は、第２の装置から受信され、
前記命令は、前記１又は複数のプロセッサにより実行されると、前記第２の装置の位置を決定するステップ、を更に生じ、
１又は複数の動作が前記第１の特定のデータに実行されるのを許可するか否かを決定するステップは、前記第２の装置の前記位置に更に基づく、
請求項１１に記載の１又は複数の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概してシステムのセキュリティに関し、より詳細には、ソース装置からの要求に基づき１又は複数のターゲット装置によるデータへのアクセスを管理することに関する。
【背景技術】
【０００２】
ネットワーク接続されたモバイル装置及びネットワークアプリケーションは、広く用いられている。モバイル装置を有するＩＴ環境への接続は、セキュリティ関連の問題の検討を含むべきである。ネットワークアプリケーションの一例は、プリントサービスを提供し印刷装置と通信する印刷アプリケーションである。ユーザは、彼／彼女のモバイル装置を用いて印刷装置で文書の印刷を開始したいと望むかも知れない。しかしながら、文書が機密情報又は極秘情報を含む場合に問題が生じ得る。例えば、ユーザは、誤って、ユーザの現在位置から遠く離れた不適切な印刷装置を選択するかも知れない。別の例として、ユーザは、ユーザに最も近い印刷装置を選択するが、ユーザと印刷装置との間の距離により、ユーザは、ユーザが文書の印刷を開始したときから印刷した文書が印刷装置で取り出すことができるときまでに生じ得る遅延を予想できない。
【０００３】
さらに、セキュリティ関連問題を検討するとき、ＩＴアドミニストレータは、（印刷装置のような）目標コンピュータ装置が配置され作動すると、そのような装置は該装置の一生を通じて正当であると見なす。結果として、セキュリティ関連問題が生じたとき、ＩＴアドミニストレータは、目標コンピュータ装置との相互作用を開始したソース装置並びに「クラウド中に」ある中間装置及びサービスに主に注意を向ける傾向がある。
【０００４】
この章に記載されるアプローチは、達成しようとされた可能性のあるアプローチであるが、必ずしも従前に考案され又は達成されたアプローチではない。したがって、特に示さない限り、この章に記載された如何なるアプローチも、それらが本章に含まれたという理由のみにより従来技術と見なされるべきではない。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、装置属性情報に基づきデータへのアクセスを管理する技術を提供する。
【課題を解決するための手段】
【０００６】
ネットワークを介して第１の装置から要求を受信するステップ、前記要求を受信するのに応答して、前記第１の装置の位置を決定するステップ、前記第１の装置と異なる第２の装置に対する前記第１の装置の前記位置に基づき、１又は複数の動作が前記第２の装置に関する特定のデータに対して実行されるのを許可するか否かを決定するステップ、前記第２の装置に対する前記第１の装置の前記位置に基づき、前記１又は複数の動作が前記特定のデータに対して実行されるのを許可すると決定するのに応答して、前記１又は複数の動作が前記特定のデータに対して実行されるのを許可するステップ、を有する技術を提供する。実施形態は、１又は複数のプロセッサにより処理される命令、１又は複数のコンピュータにより実施される方法、又は相応して構成される装置若しくは機器により実施され得る。
【０００７】
また、ネットワークを介して、第１の装置により処理されるべき第１の特定のデータに対する第１の要求を受信するステップ、前記第１の装置の１又は複数の第１の属性に基づき、前記第１の装置に対して１又は複数の動作が前記第１の特定のデータに実行されるのを許可するか否かを決定するステップ、前記１又は複数の動作が前記第１の特定のデータに実行されるのを許可した後に、前記第１の装置へ、前記第１の装置の１又は複数の特性に対する要求を送信するステップ、前記要求に応答して、前記第１の装置から前記１又は複数の特性を受信するステップ、前記１又は複数の特性に基づき、前記第１の装置と関連付けられた１又は複数の第２の属性を格納するステップ、前記１又は複数の第２の属性を格納した後に、前記第１の装置により処理されるべき第２の特定のデータに対する第２の要求を受信するステップ、前記第１の装置の１又は複数の第２の属性に基づき、前記第１の装置に対して、１又は複数の第２の動作が前記第２の特定のデータに実行されるのを許可するか否かを決定するステップ、前記第１の装置に対して、前記１又は複数の第２の動作が前記第２の特定のデータに実行されるのを許可しないと決定するステップ、を有し、前記第１の装置は前記第２の特定のデータを処理することが可能である、技術を提供する。
【図面の簡単な説明】
【０００８】
【図１】一実施形態による、装置位置に基づき１又は複数のネットワーク資源の使用を管理するシステムを示すブロック図である。
【図２】一実施形態による、ユーザの階層及び装置の階層を示すブロック図である。
【図３】一実施形態による、ユーザ情報のテーブルを示すブロック図である。
【図４】一実施形態による、装置情報のテーブルを示すブロック図である。
【図５】一実施形態による、位置情報のテーブルを示すブロック図である。
【図６】一実施形態による、動作、ユーザ、位置、装置属性及び特定ルールの間の関連を示すブロック図である。
【図７】一実施形態による、動作、ユーザ、位置、装置属性及び特定ルールの間の関連を示すブロック図である。
【図８】一実施形態による、印刷動作と関連するスクリーンを示すフロー図である。
【図９】一実施形態による、装置位置及び／又は装置属性に依存するルールを含むログインシーケンスを示すシーケンス図である。
【図１０】一実施形態による、装置位置及び／又は装置属性に依存するルールを含む印刷シーケンスを示すシーケンス図である。
【図１１】一実施形態による、リリースコードを受け付けるスクリーンを示すブロック図である。
【図１２】一実施形態による、装置の位置を決定する処理を示すフロー図である。
【図１３】一実施形態による、ルールを識別する処理を示すフロー図である。
【図１４】一実施形態が実装され得るコンピュータシステムを示すブロック図である。
【発明を実施するための形態】
【０００９】
以下の説明では、説明を目的として、開示の実施形態の完全な理解を提供するために、多くの詳細事項が説明される。しかしながら、開示の実施形態はこれらの詳細事項なしに実施できることが明らかである。他の例では、良く知られた構造及び装置が、開示の実施形態を不必要に不明瞭にしないために、ブロック図で示される。
【００１０】
＜概要＞
一実施形態では、ネットワークサービスは、１又は複数のソース装置に、１又は複数のターゲット装置に関する１又は複数の動作を開始させる。ソース装置（例えば、スマートフォン）の位置は、ネットワークサービスが１又は複数の動作の実行を許可するか否かを決定する際の一因である。例えば、ソース装置とターゲット装置が同一の地理的領域内に存在する場合、１又は複数の動作は実行されても良い。動作の例は、ソース装置に表示されるべき文書名のリストを送信すること、印刷装置に印刷されるべき印刷データを送信すること、又は既に印刷装置に存在している印刷データに基づき印刷装置に文書を印刷させることを含む。
【００１１】
別の実施形態では、ネットワークサービスは、ターゲット装置と繰り返し相互作用して、ターゲット装置の特性が特定の基準を満たすか否かを決定する。満たす場合、ターゲット装置は、ネットワークサービスが受信するデータに関する１又は複数の動作を実行することを許可される。その他の場合、ターゲット装置が該１又は複数の動作を実行可能であったとしても、ターゲット装置は該１又は複数の動作を実行することを許可されない。例えば、印刷の状況では、ターゲット装置は印刷装置であり、特定の基準は特定のセキュリティ特徴を含み、１又は複数の動作は文書を印刷することを含んでも良い。
【００１２】
＜システム概要＞
図１は、一実施形態による、装置位置に基づき１又は複数のネットワーク資源の使用を管理するシステム１００を示すブロック図である。システム１００は、ソース装置１１０、ターゲット装置１２０、ネットワーク１３０、ネットワークサービス１４０を有する。ネットワークサービス１４０は、アプリケーション１５０、１６０、ユーザ装置マネジャ１７０、位置マネジャ１８０、ポリシマネジャ１９０を有する。アプリケーション１５０、１６０、ユーザ装置マネジャ１７０、位置マネジャ１８０、ポリシマネジャ１９０の各々は、ソフトウェア、ハードウェア又はソフトウェアとハードウェアとの組合せにより実装されても良い。別個の要素として示すが、アプリケーション１５０、１６０、ユーザ装置マネジャ１７０、位置マネジャ１８０、ポリシマネジャ１９０は、単一のコンピュータ装置で、又は互いに通信可能に結合される２以上のコンピュータ装置で実施されても良い。
【００１３】
ソース装置１１０は、エンドユーザのコンピュータ装置である。ソース装置１１０の例は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、スマートフォン及びＰＤＡ（personal  digital  assistant）を含み得る。ソース装置１１０は、ネットワークサービス１４０と通信を開始する。ソース装置１１０は、ネットワーク１３０を介してネットワークサービス１４０と通信可能である。例えば、ソース装置１１０は、ＨＴＴＰリクエストを発行するよう構成されるウェブブラウザ（図示しない）を有しても良い。また、ネットワークサービス１４０は、ＨＴＴＰリクエストを処理し応答するよう構成されるウェブサーバ（図示しない）を有しても良い（又はそれと関連付けられても良い）。図１には１つのソース装置１１０のみを示したが、実施形態は、ネットワークサービス１４０と通信する任意の数のユーザ装置を含み得る。
【００１４】
ターゲット装置１２０は、ソース装置１１０により要求されたサービスを提供するコンピュータ装置である。ターゲット装置１２０は、ネットワークサービス１４０と通信するよう構成される。ターゲット装置１２０の例は、印刷データに反映された電子文書の印刷版を有形媒体に印刷させるよう構成される印刷装置を含む。本例では、ターゲット装置１２０は、ネットワークサービス１４０から印刷データを受信しても良い。印刷データは、最初に、ソース装置１１０により又は別の装置（図示しない）によりネットワークサービス１４０にアクセス可能な記憶装置にアップロードされても良い。図１には１つのターゲット装置１２０のみを示したが、実施形態は、ネットワークサービス１４０と通信する任意の数のターゲット装置を含み得る。
【００１５】
ネットワーク１３０は、ソース装置１１０とネットワークサービス１４０との間、並びにターゲット装置１２０とネットワークサービス１４０との間でのデータ交換を提供する任意の媒体又は機構により実施できる。ネットワーク１３０の例は、ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）、イーサネット(登録商標)若しくはインターネットのようなネットワーク、又は１若しくは複数の地上波、衛星若しくは無線リンクを含むが、これらに限定されない。
【００１６】
＜ユーザグループ及び装置グループ＞
図２は、一実施形態による、例示的なユーザ及び装置の階層を示すブロック図である。図２は、ユーザ階層２１０及びグループ階層２３０を示す。ユーザ階層２１０は、２つのユーザグループノード２１４及び２１６と関連付けられたユーザルートノード２１２を有する。ユーザグループノード２１４及び２１６は、ユーザルートノード２１２の「子」ノードと考えられる。２つのユーザグループノード２１４、２１６のみを示したが、実施形態は、より多くのユーザグループノードを有しても良い。本例では、ユーザグループノード２１４は、２つのユーザノード２１８、２２０と関連付けられ、ユーザグループノード２１６は、ユーザノード２２２と関連付けられる。ユーザノード２１８、２２０は、ユーザグループノード２１４の「子」ノードと考えられる。また、ユーザノード２２２は、ユーザグループノード２１６の「子」ノードと考えられる。
【００１７】
ユーザグループノードは、該ユーザグループノードの各子ノードにより共有される属性（例えば、ルール、認可、等）と関連付けられる。このようなアプローチは、セット内の各属性を指定する必要がなく、アドミニストレータが特定のユーザを属性のセットと関連付けられるようにする。ユーザグループは、ルールに基づく管理でも役立つ。例えば、ルールは特定のユーザグループが特定のサービスにアクセスできることを提示し、該ルールは該特定のユーザグループに属する各ユーザを識別する必要がない。代わりに、例えば、ルールマネジャは、ユーザ階層２１０を用いて、どのグループにユーザが属するかを決定し、次に１又は複数のルールが該グループに関連するか否かを決定する。ユーザグループノードの異なる子ユーザノードはユーザグループノードの１又は複数の属性のセットを共通して共有するが、各子ユーザノードは、各他の子ユーザノードと関連付けられた追加属性に対して異なる追加属性と関連付けられても良い。
【００１８】
装置階層２３０は、２つの装置グループノード２３４及び２３６と関連付けられた装置ルートノード２３２を有する。装置グループノード２３４及び２３６は、装置ルートノード２３２の「子」ノードと考えられる。２つの装置グループノード２３４、２３６のみを示したが、実施形態は、より多くの装置グループノードを有しても良い。本例では、装置グループノード２３４は、３つの装置ノード２３８、２４０、２４２と関連付けられ、装置グループノード２３６は、どの装置ノードとも関連付けられない。
【００１９】
装置階層２３０は、装置グループノードが該装置グループノードの各子ノードにより共有される属性（例えば、ルール、認可、等）と関連付けられる点がユーザ階層２１０と似ている。このようなアプローチは、セット内の各属性を指定する必要がなく、アドミニストレータが特定の装置を属性のセットと関連付けられるようにする。装置グループは、ルールに基づく管理でも役立つ。例えば、ルールは特定の装置グループがネットワークサービスから特定の情報を受信できることを提示し、該ルールは該特定の装置グループに属する各装置を識別する必要がない。代わりに、例えば、ルールマネジャは、装置階層２３０を用いて、どのグループに装置が属するかを決定し、次に１又は複数のルールが該グループに関連するか否かを決定する。装置グループノードの異なる子装置ノードは装置グループノードの１又は複数の属性のセットを共通して共有するが、各子装置ノードは、各他の子装置ノードと関連付けられた追加属性に対して異なる追加属性と関連付けられても良い。
【００２０】
＜ユーザ情報＞
図３は、一実施形態による、ユーザ情報のテーブル３００を示すブロック図である。テーブル３００は、３つのフィールド又は列、つまりＩＤフィールド、名称フィールド及びパスワードフィールドを有する。ＩＤフィールド内の識別子は、ユニークなユーザ識別子である。名称フィールド内の名称は、ユーザＩＤと関連付けられたユーザの名称（名、姓、又はフルネームかは問わない）を含む。パスワードフィールド内の各パスワードは、対応するユーザにより又はテーブル３００を管理するネットワークサービスにより制定されても良い。本例では、３人のユーザに関する情報がテーブル３００に含まれるが、より多くのユーザに関する情報が含まれても良い。実施形態は、ユーザ情報が格納される方法に限定されない。例えば、テーブルの代わりに、上述のユーザ情報は、リンク付きリスト、オブジェクトセット、又は多次元配列に格納されても良い。
【００２１】
＜装置情報＞
図４は、一実施形態による、装置情報のテーブル４００を示すブロック図である。テーブル４００内で特定される装置は、ユーザ装置（例えばソース装置１１０）とターゲット装置（例えばターゲット装置１２０）の両方を含み得る。テーブル４００は、４つのフィールド又は列、つまりＩＤフィールド、名称フィールド、位置フィールド、モバイルフィールド、及び認証フィールドを有する。ＩＤフィールド内の識別子は、ユニークな装置識別子である。名称フィールド内の名称は、装置ＩＤと関連付けられた装置の名称を含む。名称フィールド内の各名称は、名称フィールド内の他の名称に対してユニークであっても良く、ユニークでなくても良い。
【００２２】
位置フィールド内の各位置は、対応する装置の地理的位置と関連付けられた位置識別子を有する。代替として、位置フィールドは、緯度及び経度座標のような実際の地理データを有しても良い。対応する装置がモバイル装置（例えば、ラップトップコンピュータ、タブレットコンピュータ、又はスマートフォン）であると考えられる場合、該装置の位置フィールドは「モバイル」と示す。
【００２３】
モバイルフィールドは、装置がラップトップコンピュータ、タブレットコンピュータ又はスマートフォンのようなモバイル装置か否かを示す。装置がモバイル装置であると考えられる場合、対応するモバイルフィールドは「TRUE（真）」を示す。装置がモバイル装置ではないと考えられる場合、例えばデスクトップコンピュータ又は印刷装置のような場合、対応するモバイルフィールドは「FALSE（偽）」を示す。
【００２４】
認証フィールドは、例えばネットワークサービス１４０により装置が認証されているか否かを示す。認証されるために、装置の機能が１又は複数の基準を満たす必要があっても良い。例えば、装置は、認証されるために、特定のハードウェア、ファームウェア及び／又はソフトウェアをインストールしている必要があっても良い。
【００２５】
また、認証されたと見なされるために、異なる種類の装置は異なる機能セットを必要としても良い。例えば、ソース装置（例えば、ソース装置１１０）は、ネットワークサービス１４０により「認証」されるために、特定のセキュリティ機能を有する必要があっても良い。一方で、ターゲット装置（例えば、ターゲット装置１２０）は、ネットワークサービス１４０により認証されるために、特定のファームウェアバージョンをインストールしており、最新ファームウェアアップデートが有効であることを示すユニークな認可コードを格納している必要があっても良い。このように、ソース装置が認証されるために有しなければならないセキュリティ機能は、ターゲット装置１２０と無関係であり、ファームウェアバージョン及び認可コードはソース装置１１０と無関係である。
【００２６】
関連する実施形態では、装置は、多くのセキュリティ又は認証のレベルのうちの１つと関連付けられても良い。例えば、装置１は「レベル１」で認証されても良く、装置２は「レベル３」で認証されても良い、等である。本実施形態では、セキュリティ又は認証の各レベルは、装置の（セキュリティ）機能又は属性の異なるセットと関連付けられる。さらに、各後続のレベルは、先行するレベルの上位集合であっても、そうでなくても良い。
【００２７】
代替として、ユーザ装置（例えばソース装置１１０）とターゲット装置（例えばターゲット装置１２０）の両方に関する情報を格納する単一のテーブルの代わりに、異なるテーブルが用いられても良い。つまり、ユーザ装置のために１つのテーブル、ターゲット装置のために１つのテーブルというようにである。
【００２８】
実施形態は、装置情報が格納される方法に限定されない。例えば、テーブルの代わりに、上述の装置情報は、リンク付きリスト、オブジェクトセット、又は多次元配列に格納されても良い。
【００２９】
＜位置情報＞
図５は、一実施形態による、位置情報のテーブル５００を示すブロック図である。テーブル５００は、２つのフィールド又は列、つまり位置ＩＤフィールド、及び範囲定義フィールドを有する。位置ＩＤフィールド内の各位置識別子は、地理的領域を定める範囲定義と関連付けあれる。幾つかの範囲定義は特定の地理的座標に依存し、一方で、他の範囲定義は、ラベル、演算子、及び／又はブール論理に依存する。例えば、テーブル５００内の２番目及び３番目の範囲定義は、緯度及び経度座標を含む。２番目の範囲定義は説明に役立つ。「US/NY/office０１」と関連付けられた位置は、範囲定義「AROUND(‘４２.９８０５３９５４７５１６４２’,‘-７５.５６３９６４８４３７５’,３０)」と関連付けられる。最初の２つの数字は、特定の地理的位置を指定し、AROUND演算子及びオペランド「３０」は、対応する位置識別子が該特定の地理的位置の周辺３０メートル（又は別の長さの単位）の地理的領域と関連付けられることを示す。
【００３０】
最初の範囲定義（つまり、位置ＩＤ「US/NY」と関連付けられている）は、IN_RANGE(“NEW_YORK_STATE”)である。ラベル「NEW_YORK_STATE」は、特定の地理的境界（図示しない）と関連付けられても良い。演算子「IN_RANGE」は、装置が「NEW_YORK_STATE」と関連付けられた地理的境界の領域内（又はその範囲内）に存在する場合、装置が位置「US/NY」に存在することを示す。
【００３１】
４番目の範囲定義は、ブール演算子（&&）及び前の範囲定義、つまりテーブル５００内の１番目、２番目、３番目の範囲定義への参照を含む。参照は、「LOCATION１」、「LOCATION２」、「LOCATION３」とラベル付けされる。したがって、４番目の範囲定義を読み取る別の方法は、「US/NY/public」と関連付けられた地理的領域が「NEW_YORK_STATE」の範囲内であるが、２番目及び３番目の領域の外側であることである。
【００３２】
４番目の範囲定義は、別の演算子（OUT_RANGE）及び先に定められた範囲への参照をオペランドとして含む。本例における参照は、「LOCATION１」であり、１番目の範囲定義を参照する。
【００３３】
実施形態は、位置情報が格納される方法に限定されない。例えば、テーブルの代わりに、上述の位置情報は、リンク付きリスト、オブジェクトセット、又は多次元配列に格納されても良い。
【００３４】
＜ルールに基づく管理＞
図６、７は、一実施形態による、動作、ユーザ、位置、装置属性及び特定ルールの間の例示的な関連を示すブロック図である。「ルール」は、１又は複数の条件のセットと１又は複数の動作のセットとの間の関連である。ルールの１又は複数の動作のセットは、対応する１又は複数の条件のセット内の全ての条件が満たされた後にのみ実行される。したがって、例えば、テーブル６００では、ルールＩＤ「App１_login_rule_ok」と関連付けられた（１番目の）ルールの動作は、（１）動作「login()」が要求され、該動作が（２）アプリケーション「Application１」によりサポートされ、該動作を要求したユーザが（３）Group１からであり、該ユーザの装置が（４）位置US/NY/office１又はUS/NY/office２に存在すること、が満たされた後にのみ実行される。他のルールは、関連付けられた動作が実行されるために満たされなければならない更に多くの又は少ない条件を有しても良い。
【００３５】
代替として、関連付けられた動作の実行をトリガするために１つの条件（又は条件の狭義の部分集合）のみが満たされなければならない場合、ルールは複数の条件と関連付けられても良い。
【００３６】
図６のテーブル６００は、８個のフィールド又は列、つまりアプリケーションフィールド、動作フィールド、ユーザ／グループフィールド、動作装置位置フィールド、動作装置属性フィールド、関連装置位置フィールド、関連装置属性フィールド、及びルールＩＤフィールドを有する。幾つかの実施形態では、テ―ブル６００は追加フィールドを有する。他の実施形態では、テーブル６００は更に少ないフィールドを有する。例えば、ネットワークサービス１４０が単一のアプリケーションのみを提供する場合、又はルールがネットワークサービス１４０によりホストされる単一のアプリケーションにのみ関連する場合、アプリケーションフィールドは任意である。別の例として、ユーザの装置の位置がどのルールにも関係がなく又は重要でない場合、動作装置位置フィールドは任意である。別の例として、どのルールもユーザの装置が認証されること又は特定の基準を満たすことを要求しない場合、動作装置属性フィールドは任意である。
【００３７】
テーブル６００の動作フィールドは、対応するアプリケーションにより実行され得る動作の名称を含む。例えば、ルールは、Application１によりサポートされる以下の３つの動作、つまりlogin()、listDocument()、及びprint()と関連付けられる。他のルールは、Application２によりサポートされる以下の２つの動作、つまりoperation１()及びoperation２()と関連付けられる。Application１及びApplication２は、どのルールとも関連付けられない他の動作をサポートしても良い。
【００３８】
幾つかのルールは、特定のユーザ又はユーザグループに限定される。ユーザ／グループフィールドは、１又は複数のルールの所与のセットに対し特定のユーザ又はユーザグループを指定する。しかしながら、幾つかのルールでは、特定のユーザ又はグループは無関係である。このようなルールでは、ユーザ／グループフィールドは、包括的な「ANY」を指定する。
【００３９】
動作装置位置フィールドは、地理的領域のラベルを示す。動作装置位置フィールド内のラベルは、テーブル５００の位置ＩＤフィールド内の位置識別子に対応する。代替として、範囲定義フィールド内の範囲定義は、テーブル６００の動作装置位置フィールド内で指定されても良い。このような実施形態では、テーブル５００（又は位置情報を含む別のデータ構造）は必要なくても良い。
【００４０】
一実施形態では、単一のテーブル６００の代わりに、テーブル６００に含まれる情報は、複数のテーブル（又は他の記憶オブジェクト）に区分され又は分割される。例えば、テーブル６００内の情報が与えられると、各アプリケーション（つまり、Application１及びApplication２）に対して１つの、２つのテーブルが生成されても良い。これらのテーブルでは、アプリケーションフィールドは必要ない。別の例として、異なるテーブルが各動作に対して生成される。したがって、テーブル６００内の情報が与えられると、本例では５個のテーブルが生成されても良い。つまり、login()、listDocument()、print()、operation１()及びoperation２()の各々に１つのテーブルである。
【００４１】
図７に示すテーブル７００は、２つのフィールド又は列、つまりルールＩＤフィールド、及びルールフィールドを有する。図７のルールＩＤフィールドは、図６のルールＩＤフィールドに対応する。各ルールは、アプリケーション１５０（又は１６０）が実行すべき１又は複数の動作のセットを示す。例えば、テーブル７００の１番目のルールは、１つの動作又は演算、つまり「Verifyusernameandpassword（ユーザ名及びパスワードを検証する）」を示す。テーブル７００内のルールは、対応する動作が実行されるために満たされなければならない条件を更に指定しても良い。例えば、テーブル７００内の８番目のルールは、ターゲット文書のレベルがlevel１である場合に動作が「Showtheerrormessage（エラーメッセージを表示する）」であること、及びターゲット文書のレベルがlevel１でない場合に動作「Printthedocumenttotheprinter（プリンタへの文書を印刷する）」が実行されることを示す。
【００４２】
一実施形態では、テーブル６００、７００は、テーブル６００がテーブル７００のルールフィールドを含むように結合される。本実施形態では、ルールＩＤフィールドは、不要になり、このような結合されたテーブルでは除外されても良い。
【００４３】
実施形態は、ルール情報が格納される方法に限定されない。例えば、１又は複数のテーブルの代わりに、上述のルール情報は、リンク付きリスト、非関係型オブジェクトセット、又は多次元配列に格納されても良い。
【００４４】
＜印刷スクリーン＞
図８は、一実施形態による、印刷要求と関連する例示的なスクリーン８１０−８４０を示すフロー図である。印刷要求は、複数の動作を有する。印刷要求は、ソース装置１１０のユーザにより開始される。例えば、ソース装置のユーザは、ＵＲＬを入力する又はソース装置１１０のディスプレイに表示され且つネットワークサービス１４０に関連付けられたアイコンを選択するような入力を供給する。入力を受信するのに応答して、ソース装置１１０は、ネットワーク１３０を介してネットワークサービス１４０に要求を送信する。要求は、アプリケーション１５０（又はネットワークサービス１４０により提供される別の処理）により処理されるＨＴＴＰ要求であっても良い。
【００４５】
要求を受信するのに応答して、ネットワークサービス１４０（又は、特にアプリケーション１５０）は、ログインスクリーン８１０をソース装置１１０へ送信する。ログインスクリーン８１０は、２つの入力フィールド、つまりユーザ名入力フィールド８１２及びパスワード入力フィールド８１４を有する。ログインスクリーン８１０は、ログインボタン８１６も有する。ソース装置１１０のユーザは、フィールド８１２及び８１４に、ユーザ名及びパスワードを含む入力を提供し、次にログインボタン８１６を選択する。入力は、例えば音声入力、又は物理的キーボード若しくはグラフィカルキーボードのキーを選択することであっても良い。実施形態は、入力の形式又は種類に限定されない。
【００４６】
ソース装置１１０のユーザがログインボタン８１６を選択したことの指示を受信するのに応答して（この指示は、ユーザ名及びパスワードデータを含む別のＨＴＴＰ要求であっても良い）、ネットワークサービス１４０は、ユーザ名及びパスワードが正しいか否かを、例えばテーブル３００を調べることにより決定する。
【００４７】
テーブル３００がソース装置１１０から受信したユーザ名及びパスワードの両方を含む行を有しない場合（又はネットワークサービス１４０がユーザ名及びパスワードの一方又は両方が無効又は不正であると決定した場合）、ネットワークサービス１４０は、空白の入力フィールド８１２及び８１４を有するログインスクリーン８１０を再送しても良い。追加で又は代替として、ログインスクリーン８１０は、ユーザ名及びパスワードの一方又は両方が不正だったことを示すエラーメッセージを有しても良い。テーブル３００がソース装置１１０から受信したユーザ名及びパスワードの両方を含む行を有する場合（又はネットワークサービス１４０がユーザ名及びパスワードの組合せが有効である又は正しいと決定した場合）、ネットワークサービス１４０は、ソース装置１１０へ文書リストスクリーン８２０を送信しても良い。文書リストスクリーン８２０は、文書名８２２、ログアウトボタン８２４、印刷ボタン８２６を有する。
【００４８】
ソース装置１１０は、文書リストスクリーン８２０を受信し、文書リストスクリーン８２０をソース装置１１０のディスプレイに表示する。ソース装置１１０のユーザは、文書名８２２のリストの中から１つの名称を選択する。（或いは、文書名のうちの１つがデフォルトで選択されるか、又は「予め選択」され、ユーザが文書名を選択する入力を供給することを要求されないようにしても良い。）名称を選択する前又は後に、ユーザは、ログインスクリーン８１０をソース装置１１０に再表示させるログアウトボタン８２４を選択しても良い。代替として、名称（例えば、「A.pdf」）を選択した後、ユーザは印刷ボタン８２６を選択しても良い。印刷ボタン８２６の選択は、ソース装置１１０に別の要求を生成させ、ネットワークサービス１４０へ送信させる。要求は、ネットワークサービス１４０がユーザの選択した文書名（例えば、「A.pdf」）を識別するために用いる文書識別データを有する。
【００４９】
要求を受信するのに応答して、ネットワークサービス１４０は、印刷オプションスクリーン８３０をソース装置１１０へ送信する。印刷オプションスクリーン８３０は、開始ボタン８３２、プリンタリスト８３４、印刷オプションリスト８３６、及び印刷取り消しボタン８３８を有する。プリンタリスト８３４は、１又は複数の印刷装置の名称を含む。１又は複数の印刷装置のうちの１つはターゲット装置１２０であっても良い。印刷オプションリスト８３６は、１又は複数の印刷オプションのリストを有する。本例では、印刷オプションリスト８３６は、生成されるよう要求され得る印刷コピーの数、及び両面印刷が要求されたか否かを示す。他の実施形態では、印刷オプションリスト８３６は、図示しない多数の他の印刷オプションを含んでも良い。
【００５０】
リスト８３６に載っている幾つかの印刷オプションは、デフォルトで選択されても良い（又は「予め選択され」ても良い）。同様に、プリンタリスト８３４に載っている名称のうちの１つがデフォルトで選択されても良い。ユーザが選択されたプリンタ及び印刷オプションに満足すると、ユーザは開始ボタン８３２を選択する。開始ボタン８３２の選択は、ソース装置１１０に別の要求をネットワークサービス１４０へ送信させる。要求は、ネットワークサービス１４０が選択されたプリンタ（例えば、「Device１」）を識別するために用いるプリンタ識別データ、及びネットワークサービス１４０が選択された印刷オプションを識別するために用いるオプション識別データを有する。
【００５１】
要求を受信するのに応答して、ネットワークサービス１４０は、ターゲット装置１２０（つまり、選択されたプリンタに応答する）へ、（ユーザ選択かデフォルトかに拘わらず）選択された印刷オプションと一緒に印刷開始コマンドを送信する。また、ネットワークサービス１４０は、ソース装置１１０へ、印刷動作の状態に関するメッセージを含む印刷ジョブ状態スクリーン８４０を送信する。印刷ジョブ状態スクリーン８４０は、メッセージフィールド８４２、ＯＫボタン８４４を有する。印刷ジョブ状態スクリーン８４０がソース装置１１０のディスプレイに表示されている間、メッセージフィールド８４２は動的に変化しても良い。例えば、最初に、メッセージフィールド８４２は、「印刷開始」を示し、次に後に「印刷完了」又は「プリンタでエラー発生」を示しても良い。
【００５２】
ＯＫボタン８４４の選択は、ソース装置１１０に、メッセージをネットワークサービス１４０へ送信させる。ネットワークサービス１４０は、応答して文書リストスクリーン８２０をソース装置１１０へ送信する。文書リストスクリーン８２０のこのバージョンは、ソース装置１１０により表示された文書リストスクリーン８２０の前のバージョンと異なっても良い。例えば、文書「A.pdf」がユーザにより印刷すべきと選択された場合、文書リストスクリーン８２０の次のバージョンは、「A.pdf」を載せなくても良い。
【００５３】
＜ログインシーケンス＞
図９は、一実施形態による、装置位置及び／又は装置属性に依存するルールを含む例示的なログインシーケンス９００を示すシーケンス図である。ステップ９０２で、ソース装置１１０のユーザは、アプリケーション１５０の選択を示す入力を供給する。ステップ９０４で、応答して、ソース装置１１０は、ネットワーク１３０を介してアプリケーション１５０にオープンアプリケーション要求を送信する。ステップ９０６で、応答して、アプリケーション１５０は、ログインスクリーン（例えば、ログインスクリーン８１０）をソース装置１１０へ送信する。ステップ９０８で、ソース装置１１０はログインスクリーンを表示する。
【００５４】
ステップ９１０で、ソース装置１１０のユーザは、ソース装置１１０に、ユーザ名及びパスワードのような信用情報を含む入力を供給する（例えば、入力する）。ステップ９１２で、応答して、ソース装置１１０は、アプリケーション１５０に信用情報を送信する。ステップ９１４で、アプリケーション１５０は、位置マネジャ１８０へ、ＩＰアドレス、ＭＡＣアドレス又は信用情報の一部のようなソース装置１１０を識別する装置識別データを送信する。ステップ９１６で、応答して、位置マネジャ１８０は、アプリケーション１５０へ、ソース装置１１０の位置を示す位置データを送信する。ネットワークサービス１４０がソース装置１１０を「モバイル」と見なす場合、位置データは「mobile」を示しても良い。
【００５５】
ステップ９１８で、例えば位置マネジャ１８０からの位置データがソース装置はモバイルであると示す場合、アプリケーション１５０は、ソース装置１１０へ、ソース装置１１０の現在位置の要求を送信する。ステップ９２０で、応答して、ソース装置１１０は、アプリケーション１５０へ位置情報を送信する。位置データは、ソース装置１１０の現在位置を示す。位置データは、地理的座標、又は実際の場所若しくは領域の名称（例えば、ディズニーランド又はジョージア）のような特定の他の位置情報であっても良い。実施形態は、ソース装置１１０が自身の位置を決定する方法又は位置データのフォーマットに限定されない。装置が自身の現在位置を決定する方法の例は、ＧＰＳ（Global  Positioning  System）、ａＧＰＳ（ＧＰＳにおけるような衛星にのみ依存するのではなく、ＧＳＭ(登録商標)（Global  System  for  Mobile  Communications）電波塔にも依存する）、ＧＳＭローカライゼーション（ＧＳＭ電波塔に依存する）、及びＷｉＦｉ（通常、都市域で役立つ）を用いて既知の位置を有するホットスポットを識別する。
【００５６】
ステップ９２２で、応答して、アプリケーション１５０は、位置マネジャ１８０へ位置データを送信する。ステップ９２４で、応答して、位置マネジャ１８０は、例えばテーブル５００に基づきソース装置１１０の位置識別子を決定し、位置識別子をアプリケーション５００へ送信する。
【００５７】
ステップ９２６で、応答して、アプリケーション１５０は、ポリシマネジャ１９０へ、アプリケーション１５０（例えば「Application１」）と関連付けられたアプリケーション識別子、要求された動作（例えば、「login()」）と関連付けられた動作識別子、位置識別子（例えば、「US/NY/office１」）、及びソース装置１１０が認証されたか又は特定の基準を満たすか（例えば、認証された」）否かを示す属性識別子を示すメッセージを送信する。
【００５８】
ステップ９２８で、応答して、ポリシマネジャ１９０は、例えばテーブル６００及び７００に基づき、アプリケーション１５０により供給された識別子と関連付けられたルールを識別し、アプリケーション１５０へ、該ルールと関連付けられた１又は複数の動作を送信する。例えば、識別されたルールは、テーブル６００内のルールＩＤ「app１_login_rule_ok」であっても良く、対応する動作は「Verifyusernameandpassword（ユーザ名及びパスワードを検証する）」であっても良い。図示した例では、ステップ９３０で、アプリケーション１５０は、ユーザ信用情報（つまり、ユーザ名及びパスワード）をユーザ装置マネジャ１７０へ送信する。
【００５９】
ソース装置１１０の現在位置とターゲット装置１２０の位置との組合せは、例えばネットワークサービス１４０が１又は複数の要求された動作を実行することを許可しないような異なるルールにマッピングしても良い。例えば、このような動作は、ソース装置１１０で文書名のリストを表示し、ターゲット装置１２０へ特定のデータを送信し、又はターゲット装置１２０に特定の文書を印刷するような動作を実行させても良い。しかしながら、ソース装置１１０は異なる場所へ移動させられ、ソース装置１１０とターゲット装置１２０の両方が同じ特定の領域又は地理的位置に存在するようにしても良い。そして、異なるルールが識別され、ネットワークサービス１４０は、要求された１又は複数の動作が実行されるのを許可しても良い。
【００６０】
ステップ９３２で、応答して、ユーザ装置マネジャ１７０は、アプリケーション１５０へ、ユーザ信用情報が有効であるか否かを示す応答メッセージを送信する。応答メッセージが、ユーザ信用情報は有効であると示す場合、ステップ９３４で、アプリケーション１５０は次のスクリーンを生成し、ステップ９３６で、次のスクリーンをソース装置１１０へ送信する。次のスクリーンの例は、文書リストスクリーン８２０である。ステップ９３８で、ソース装置１１０は、次のスクリーンをソース装置１１０のユーザに表示させる。
【００６１】
＜印刷シーケンス＞
図１０は、一実施形態による、装置位置及び／又は１又は複数の装置属性に依存するルールを含む例示的な印刷シーケンス１０００を示すシーケンス図である。装置属性の例は、装置が認証されたか否か及び／又は装置が特定のセキュリティ機能を有するか否かを含む。印刷シーケンス１０００は、ログインシーケンス９００が完了した直後に開始しても良い。例えば、上述のように、アプリケーション１５０により送信された次のスクリーンは、前述の文書リストスクリーン８２０であっても良い。
【００６２】
ステップ１００２で、ソース装置１１０のユーザは、文書名及びプリンタ名を選択する。それに応答して、ステップ１００４で、ソース装置１１０は、文書名及びプリンタ名（又は個々の名称にマッピングされた識別子）をアプリケーション１５０へ送信する。
【００６３】
それに応答して、ステップ１００６で、アプリケーション１５０は、位置マネジャ１８０へソース装置１１０の識別子を送信する。それに応答して、ステップ１００８で、位置マネジャ１８０は、ソース装置１１０の位置を識別し、アプリケーション１５０へ、地理的領域（例えば、範囲定義により定められる）を示す位置データを送信する。例えば、位置マネジャ１８０は、ソース装置１１０と通信し、自身の地理的位置を決定し、該地理的位置をテーブル５００内の範囲定義と比較しても良い。別の例として、ソース装置１１０の位置は、ログインシーケンス９００中の前の決定に基づきキャッシュされても良く、自身の現在位置を決定するためにソース装置１１０と更に通信する必要がなくても良い。（図１２及び対応する説明は、ソース装置１１０の位置を決定することに関する更なる詳細を含む。）
ステップ１０１０（ステップ１００６の一部であっても良い）で、アプリケーション１５０は、ターゲット装置１２０の識別子（ステップ１００２で選択された文書名に対応する）を位置マネジャ１８０へ送信する。ステップ１０１２（ステップ１００８の一部であっても良い）で、位置マネジャ１８０は、（例えば、テーブル４００の位置フィールド内の適切な行を探すことにより）ターゲット装置１２０の位置を識別し、アプリケーション１５０へ、地理的領域（例えば、範囲定義により定められる）を示す位置データを送信する。
【００６４】
ステップ１０１４で、アプリケーション１５０は、ポリシマネジャ１９０へ、アプリケーション１５０（例えば「Application１」）と関連付けられたアプリケーション識別子、要求された動作（例えば、「print()」）と関連付けられた動作識別子、ソース装置１１０と関連付けられた位置識別子（例えば、「US/NY/office１」）、ターゲット装置１２０と関連付けられた位置識別子（例えば、「US/NY/office１」）、ソース装置１１０が認証されたか又は特定の基準を満たすか（例えば、「認証された」）否かを示す属性識別子、及びターゲット装置１２０が認証されたか又は特定の基準を満たすか（例えば、「認証された」）否かを示す属性識別子、を示すメッセージを送信する。
【００６５】
それに応答して、ステップ１０１６で、ポリシマネジャ１９０は、例えばテーブル６００及び７００に基づき、アプリケーション１５０により供給された識別子と関連付けられたルールを識別し、アプリケーション１５０へ、該ルールと関連付けられた１又は複数の動作を送信する。例えば、識別されたルールは、テーブル６００内のルールＩＤ「app１_print_at_office_confidential」であっても良く、対応する動作は、テーブル７００に従い、選択された文書がレベル１と関連付けられているという事実に基づき、「Putwatermarkonthetargetdocumentimage（ターゲット文書画像に透かしを入れる）;Returnthereleasecodeofprintjob（印刷ジョブのリリースコードを返す）;EmailthisjobrecordtoAdministrator（このジョブレコードをアドミニストレータへ電子メールで送る）」であっても良い。
【００６６】
それに応答して、ステップ１０１８で、アプリケーション１５０は、ポリシマネジャ１９０から受信した動作データを処理する。例えば、アプリケーション１５０は、リリースコードを生成し、該リリースコードをユーザの選択した文書名により識別される電子文書と関連付けても良い。リリースコードは、ユニークな英数字列であっても良い。実施形態は、リリースコードの形式又は特性に限定されない。
【００６７】
ステップ１０２０で、アプリケーション１５０は、リリースコードをソース装置１１０へ送信する。それに応答して、ステップ１０２２で、ソース装置１１０は、ソース装置１１０のユーザにリリースコードを表示する。
【００６８】
ステップ１０２４で、ソース装置１１０のユーザ（又は別のユーザ）は、例えば物理的若しくはグラフィカルキーを選択することにより又は音声入力により、リリースコードをターゲット装置１２０に入力する。
【００６９】
図１１は、一実施形態による、リリースコードを受け付けるために用いられる例示的なリリースコードスクリーン１１００を示すブロック図である。リリースコードスクリーン１１００は、リリースコード入力フィールド１１１０及び印刷ボタン１１２０を有する。ユーザがリリースコードをリリースコード入力フィールド１１１０に入力した後、ユーザは、印刷ボタン１１２０を選択する。印刷ボタン１１２０は、ターゲット装置１２０にリリ―スコードをアプリケーション１５０へ送信させる。この送信は、図１０のステップ１０２６に対応する。
【００７０】
図１０に戻ると、ステップ１０２６で、リリースコードを示す入力を受信するのに応答して、ターゲット装置１２０は、アプリケーション１５０へ、印刷すべき電子文書を読み出す要求を送信する。ここで、要求は、ステップ１０２４でユーザにより供給されたリリースコードを含む。
【００７１】
それに応答して、ステップ１０２８で、アプリケーション１５０は、リリースコードと関連付けられた電子文書を識別し、ターゲット装置１２０へ該電子文書を含む印刷ジョブを送信する。印刷ジョブは、色、方向、両面印刷、コピー数、等のようなユーザにより選択された印刷特徴を有しても良い。
【００７２】
ステップ１０３０で、ターゲット装置１２０は、印刷ジョブを受信し、該電子文書及び印刷ジョブで示された印刷特徴に基づき１又は複数の印刷された文書を生成する。
【００７３】
＜ソース装置の位置の決定＞
図１２は、一実施形態による、装置の位置を決定する例示的な処理１２００を示すフロー図である。処理１２００は位置マネジャ１８０により実行されるように示されるが、ネットワークサービス１４０の別の処理エンティティ又は位置マネジャ１８０と別の処理エンティティ（例えばアプリケーション１５０）との組合せが処理１２００の異なるステップを実行しても良い。
【００７４】
ステップ１２０２で、位置マネジャ１８０は、（例えば、アプリケーション１５０により供給された）装置識別子を用い、テーブル４００内の対応する位置を検索する。位置マネジャ１８０は、装置識別子がエンドユーザの装置（例えばソース装置１１０）のものか又はターゲット装置（例えばターゲット装置１２０）のものかを知らなくても良い。代わりに、位置マネジャ１８０は、検索して、装置識別子と関連付けられた位置の値を返すだけで良い。
【００７５】
ステップ１２０４で、位置マネジャは、ステップ１２０２で位置が識別されたか否かを決定する。識別されない場合、処理１２００はステップ１２０６へ進む。ステップ１２０６で、位置マネジャ１８０は、装置識別子に対応する装置の位置が不明であることを示す（例えばアプリケーション１５０への）応答を提供する。その他の場合、処理１２００はステップ１２０８へ進む。
【００７６】
ステップ１２０８で、位置マネジャ１８０は、装置識別子に対応する装置が「モバイル」か否かを決定する。モバイルでない場合、ステップ１２１０で、位置マネジャ１８０は、テーブル４００の位置フィールドの値を返す。その他の場合、処理１２００はステップ１２１２へ進む。
【００７７】
ステップ１２１２で、位置マネジャ１８０は、装置（つまり、装置識別子に対応する装置）の位置データがキャッシュされたか否かを決定する。キャッシュされた位置データの正確な記憶位置は、重要ではない。例えば、モバイルであると考えられる装置では、該装置の位置データはテーブル４００の位置フィールドにあっても良い。とにかく、「モバイル」装置の位置データがキャッシュされた場合、処理１２００はステップ１２１４へ進む。その他の場合、処理１２００はステップ１２２０へ進む。
【００７８】
ステップ１２１４で、位置マネジャ１８０は、現在時刻がキャッシュされた位置データと関連付けられたタイムアウト期間内か否かを決定する。例えば、モバイル装置の位置データは、５分間のような限られた時間期間の間、キャッシュされても良い。現在時刻がタイムアウト期間内である場合、ステップ１２１６で、位置マネジャ１８０はキャッシュされた位置を返し、処理１２００は終了する。その他の場合、ステップ１２１８で、位置マネジャ１８０は、装置識別子に関連付けられたキャッシュされた位置データを削除する。
【００７９】
ステップ１２２０で、位置マネジャ１８０は、（例えば、アプリケーション１５０へ）装置が「モバイル」であることを示すデータを返す。このようなデ―タを受信するエンティティ（例えば、アプリケーション１５０）は、次に、応答して、装置の現在位置を該装置から要求しても良い。
【００８０】
＜ルールの識別＞
図１３は、一実施形態による、ルールを識別する例示的な処理１３００を示すフロー図である。以下ではポリシマネジャ１９０が処理１３００を実行するように記載するが、ネットワークサービス１４０の別の処理エンティティ又はポリシマネジャ１９０と別の処理エンティティ（例えばアプリケーション１５０）との組合せが処理１３００の異なるステップを実行しても良い。
【００８１】
ステップ１３１０で、ポリシマネジャ１９０は、アプリケーション識別子、動作識別子及び／又はユーザ／グループ識別子のような１又は複数のルール選択基準に基づき、テーブル６００から１又は複数のルールのリストを識別する。例えば、アプリケーション識別子は「Application１」であり、動作識別子は「print()」であり、ユーザ／グループ識別子は「user１」又は「group１」であっても良い。
【００８２】
ステップ１３２０で、ポリシマネジャ１９０は、リストが空か否かを決定する。空の場合、ステップ１３３０で、ポリシマネジャ１９０は、（例えばアプリケーション１５０に）１又は複数の基準を満たすルールが見付からなかったことを示すメッセージを返す。その他の場合、処理１３００はステップ１３４０へ進む。
【００８３】
ステップ１３４０で、ポリシマネジャ１９０は、リスト内の次の（例えば１番目の）ルールを識別する。ステップ１３５０で、ポリシマネジャ１９０は、追加基準に基づき、識別されたルールの追加条件が満たされるか否かを決定する。例えば、追加基準は、ソース装置１１０の現在位置及び／又はターゲット装置１２０の現在位置を有しても良い。追加で又は代替で、追加の基準は、ソース装置１１０が「認証されたか」否か及び／又はターゲット装置１２０が「認証されたか」否かを有しても良い。ポリシマネジャが、追加基準に基づき、識別されたルールの追加条件が満たされると決定した場合、ステップ１３６０で、ポリシマネジャ１９０は、識別したルールのルールＩＤを用いて、テーブル７００内の対応する動作を識別する。その他の場合、処理１３００はステップ１３２０へ戻る。
【００８４】
代替の実施形態では、ステップ１３１０でルール選択基準の（全部ではなく）一部のみを用いて１又は複数のルールのリストを識別する代わりに、ステップ１３１０は、（例えば、ソース装置１１０及び／又はターゲット装置１２０の現在位置、及びソース装置１１０及び／又はターゲット装置１２０が「認証された」か否かを含む）ルール選択基準の全部を用いるステップを有しても良い。このように、ステップ１３４０及び１３５０は不要である。
【００８５】
＜装置の再認証＞
配置の後に、印刷装置のようなターゲット装置は、信用できなくなるか又は不謹慎な第三者により「不正侵入」されるかも知れない。このように信用できなくなることは、第三者に、ネットワークサービス１４０がターゲット装置へ処理（例えば印刷）のために送信する極秘（又は機密）電子データにアクセスできるようにし得る。したがって、ターゲット装置１２０が最初に信用できないものでは無い場合でも、ターゲット装置１２０が最終的に信用できなくなる可能性がある。したがって、ネットワークサービス１４０が保持しており（例えばテーブル４００内の）ターゲット装置の状態が「認証されている」と示すデータは、ターゲット装置の認証状態に依存するルールと同様に正しくないかも知れない。
【００８６】
したがって、一実施形態では、ターゲット装置１２０及び任意で１又は複数の他のターゲット装置（図１に図示しない）が再認証される。再認証は、ネットワークサービス１４０（又はネットワークサービス１４０の一部である又はそれとは別個の「認証サーバ」）がターゲット装置１２０は１又は複数の認証基準を満たすか否かを決定するステップを含む。認証基準の例は、ターゲット装置１２０にインストールされた特定のソフトウェア又はファームウェアの存在である。認証基準の別の例は、ターゲット装置１２０が最新ファームウェア又はソフトウェアアップデータと関連付けられた特定の認証コードを格納しているか否かである。認証基準の別の例は、ターゲット装置１２０の記憶装置が、ターゲット装置１２０が電子データを処理した（例えば、電子データに基づき文書を印刷した）直後又はその後に間もなく電子データを上書きするよう構成される。
【００８７】
したがって、特に、例えば異なる認証コードがターゲット装置１２０に格納される場合、ファームウェア又はソフトウェアアップデートがターゲット装置１２０に実行されるときは何時でも、１又は複数の認証基準は、時間によって変化する。
【００８８】
一実施形態では、再認証は、定期的又は周期的に、及び／又はイベントに応答して実行されても良い。例えば、ネットワークサービス１４０（又は認証サーバ）は、毎日午前１時にターゲット装置１２０が１又は複数の認証基準を満たすか否かを決定する。別の例として、ネットワークサービス１４０は、ターゲット装置１２０がソフトウェア又はファームウェアアップデートをインストールしていることを検出した直後に、１又は複数の認証基準を満たすか否かを決定する。ネットワークサービス１４０が、ターゲット装置１２０は１又は複数の認証基準を満たすと決定した場合、ネットワークサービス１４０は、ターゲット装置１２０を認証されていると分類する分類データを格納する。その他の場合、ネットワークサービス１４０は、ターゲット装置１２０を認証されていないと分類する分類データを格納する。
【００８９】
ターゲット装置１２０の１又は複数の特性が１又は複数の認証基準を満たさない場合、その情報は、ターゲット装置１２０が特定の動作を実行可能であっても、該特定の動作が実行されるのを防ぐために用いられても良い。例えば、ソース装置１１０のユーザが特定の文書をターゲット装置１２０で印刷したいが、ターゲット装置１２０が認証されない（又はターゲット装置１２０の特性が１又は複数の認証基準を満たさない）場合、ターゲット装置１２０が完全に動作中であっても（例えば、十分な用紙及びトナー又はインクカートリッジ等を示しても）、ネットワークサービス１４０は、ターゲット装置１２０が該文書を印刷するのを防ぐ。防ぐステップは、ネットワークサービス１４０が必要な印刷データをターゲット装置１２０へ送信しないことにより、又はターゲット装置１２０が印刷データを既に格納している場合には、ターゲット装置へターゲット装置１２０に文書を印刷することを指示する命令を送信しないことにより、有効にされても良い
ターゲット装置１２０とネットワークサービス１４０との間の通信は、少なくとも部分的に、ターゲット装置１２０で実行される特定のソフトウェアにより有効にされても良い。ソフトウェアは、ネットワークサービス１４０を所有する及び／又は開発した団体により開発されても良い。ソフトウェアは、ターゲット装置１２０に、例えば印刷ジョブに関するネットワークサービス１４０との通信を可能にする同じソフトウェアパッケージの一部であっても良い。ソフトウェアは、ターゲット装置１２０の１又は複数の特定の特性、ターゲット装置１２０が認証されたか否かを決定するためにネットワークサービス１４０が用いる特性を識別するよう構成されても良い。
【００９０】
一実施形態では、ネットワークサービス１４０はソース装置１１０及び任意で１又は複数の他のソース装置（図１に図示しない）を再認証する。同様に、再認証は、ネットワークサービス１４０が、ソース装置１１０は１又は複数の認証基準を満たすか否かを決定するステップを含む。認証基準の例は、ソース装置１１０が記憶装置を有するか否か、ソース装置１１０が格納されたデータを暗号化する記憶装置を有するか否か、ソース装置１１０が特定のイベントが生じた直後又はその後に間もなく特定のデータが上書きされた場合に上書き機能を有するか否か、ソース装置１１０がスクリーンキャプチャ機能を有するか否か、ソース装置１１０がスクリーンに透かしを入れる機能を有するか否かを含む。
【００９１】
ソース装置の環境では、再認証は、周期的に（例えば、１０日毎に）実行されても良く、又はソース装置１１０がネットワークサービス１４０により提供されるサービスを要求するときは何時でものように、特定のイベントに応答して実行されても良い。例えば、ソース装置１１０からログイン要求（又はソース装置１１０が認証されることを要求するルールに関連付けられた要求）を受信するのに応答して、ネットワークサービス１４０は、要求をソース装置１１０へ送信し、１又は複数の認証基準が満たされるか否かを決定するために、ソース装置１１０に関する特定の情報を得る。ネットワークサービス１４０が、ソース装置１１０は１又は複数の認証基準を満たすと決定した場合、ネットワークサービス１４０は、ソース装置１１０を認証されていると分類する分類データを格納する。その他の場合、ネットワークサービス１４０は、ソース装置１１０を認証されていないと分類する分類データを格納する。
【００９２】
ソース装置１１０とネットワークサービス１４０との間の通信は、少なくとも部分的に、ソース装置１１０で実行される特定のソフトウェアにより有効にされても良い。ソフトウェアは、ネットワークサービス１４０を所有する及び／又は開発した団体により展開されても良い。ソフトウェアは、ソース装置１１０の１又は複数の特定の特性、ソース装置１１０が認証されたか否かを決定するためにネットワークサービス１４０が用いる特性を識別するよう構成されても良い。
【００９３】
＜要求毎の装置の認証＞
ターゲット装置１２０を再認証し、ターゲット装置１２０が認証されていると分類される間の全ての要求に関してターゲット装置１２０を認証されるようにすることに追加で又は代替で、ネットワークサービス１４０は、要求毎に特定のデータをターゲット装置１２０へ送信するか否かを決定する。ネットワークサービス１４０は、ソース装置１１０からの要求に関連付けられた１又は複数の属性をターゲット装置１２０の１又は複数の属性と比較し、ターゲット装置１２０へ要求により要求されたデータを送信するか否かを決定する。例えば、第１の印刷ジョブを処理するための第１の要求では、ネットワークサービス１４０は、第１の印刷ジョブに対応する第１の電子文書の１又は複数の属性を識別し、該１又は複数の属性に基づき、第１の印刷ジョブをターゲット装置１２０へ送信するか否かを決定する。例えば、第２の印刷ジョブを処理するための第２の要求では、ネットワークサービス１４０は、第２の印刷ジョブに対応する第２の電子文書の１又は複数の属性を識別し、該第２の電子文書の１又は複数の属性に基づき、第２の印刷ジョブをターゲット装置１２０へ送信するか否かを決定する。
【００９４】
幾つかの属性は、透かしのようなセキュリティ関連機能を有しても良い。例えば、電子文書は印刷せざるを得ない「透かし」を含んでも良く、したがって、透かしを印刷できない印刷装置は、印刷のために電子文書を送信されない。別の例として、カラーで印刷できる印刷装置が、電子文書内のセキュリティ関連機能をサポートするために必要とされても良い。別の例として、印刷装置は、例えばセキュリティ関連機能と考えられてもそうでなくても良いバーコードを含む文書を印刷するために、特定の種類のトナーを必要としても良い。言い換えると、ターゲット印刷装置が特定の種類のトナーを有しない場合、ターゲット印刷装置は使用できない。他の属性は、非セキュリティ関連機能を有しても良い。
【００９５】
＜プルモード対プッシュモード＞
ネットワークサービス１４０は、ターゲット装置１２０に関する２つのモード、つまり「プル」モード又は「プッシュ」モードのうちの１つで動作しても良い。これら２つのモードの内の１つで動作することは、「プルストラテジ又はプッシュストラテジの一方を実施すること」と等価である。印刷環境におけるプルストラテジの例として、ターゲット装置１２０は印刷装置であっても良く、ネットワークサービス１４０は、ソース装置１１０のユーザに表示されるべきリリースコードをソース装置１１０へ提供しても良い。本例では、ユーザは、ターゲット装置１２０において、ユーザインタフェースを用いてリリースコードを入力しても良い。リリースコードが有効な場合、ターゲット装置１２０は、該リリースコードと関連付けられた文書を印刷する。印刷の前に、この処理は、ターゲット装置１２０がリリースコードをネットワークサービス１４０へ送信し、応答してネットワークサービス１４０から関連する電子文書を受信するステップを有しても良い。したがって、プルストラテジでは、ユーザは、ターゲット装置１２０において印刷を生じさせるために、ターゲット装置１２０において特定の情報を入力することを要求される。
【００９６】
プルストラテジとは対照的に、ネットワークサービス１４０は代わりに「プッシュ」モードで動作しても良い。「プッシュ」モードでは、ネットワークサービス１４０はユーザが特定の情報を入力するのを待たない。むしろ、ネットワークサービス１４０は、ターゲット装置１２０が特定の情報（例えば、リリースコード）をネットワークサービス１４０へ送信するのを待たずに、及びユーザにターゲット装置１２０において情報（例えば、リリースコード）を入力することを要求せずに、（印刷ジョブのような）情報をターゲット装置１２０へ送信する。
【００９７】
プルストラテジのプッシュストラテジに勝る利点は、プルストラテジでは、ネットワークサービス１４０がデータをターゲット装置１２０へ送信するために、ユーザがターゲット装置１２０の所に存在することを要求されることである。このように、ターゲット装置１２０に提供されユーザにより「消費」される（例えば、ディスプレイで又は印刷された文書でユーザに示される）極秘情報は、ターゲット装置１２０の近くに居るかも知れない他のユーザにより誤って消費されない。
【００９８】
プッシュストラテジのプルストラテジに勝る利点は、プッシュストラテジでは、ネットワークサービス１４０がデータをターゲット装置１２０へ送信するために、ユーザがターゲット装置１２０の所に存在することを要求されないことである。このように、より少ない手動ステップしか必要ないので、正しくないリリースコードを入力するような人為的エラーの可能性がより少ない。プッシュストラテジのプルストラテジに勝る他の利点は、プッシュストラテジでは、ネットワークサービス１４０からターゲット装置１２０へ送信されるべきデータが、無期限に格納されている必要がないことである。例えば、プルストラテジの印刷環境では、ネットワークサービス１４０は、無期限に又は特定の時間期間の間、電子文書を格納し得るが、どれ位の長さが電子文書を格納するのに十分な長さであるかがユーザには明確でない。また、ネットワークサービス１４０にアクセス可能な電子文書を又はターゲット装置１２０において電子文書を格納するときにセキュリティ問題が存在する。
【００９９】
従来のアプローチの１つの欠点は、（ネットワーク印刷サービスのような）ネットワークサービス又は（印刷装置のような）ネットワーク装置が、恒久的にプルモード又はプッシュモードの一方で動作し、決して両方で動作しないことである。換言すると、ネットワークサービス又はネットワーク装置は、プルモードとプッシュモードとの間を変更しない。代わりに、ネットワークサービス又はネットワーク装置は、プルモードかプッシュモードかに拘わらず、ネットワークサービス又はネットワーク装置の寿命の間、単一のモードでのみ動作するように構成される。
【０１００】
一実施形態では、ネットワークサービス１４０は、１又は複数の要因に基づき、プルモードとプッシュモードとの間で切り替える。例えば、（ソース装置１１０のような）第１のソース装置により開始された１つの要求に対して、ネットワークサービス１４０はプルモードで動作するが、（第１のソース装置と同じであっても良い）第２のソース装置により開始された別の要求に対して、ネットワークサービス１４９はプッシュモードで動作する。
【０１０１】
一実施形態では、ソース装置１１０のターゲット装置１２０に対する位置は、ネットワークサービス１４０がターゲット装置１２０に対してプルモード又はプッシュモードで動作するかを決定する際の一因である。例えば、ソース装置１１０がターゲット装置１２０から１０メートル以内に存在する場合、ソース装置１１０のユーザは、ターゲット装置１２０から１０メートル以内に存在すると推測される。ネットワークサービス１４０は、自身の位置情報を特定のデータ（例えば、印刷ジョブ）をターゲット装置１２０へ送信するか否かを決定する際の一因として用いる。位置要因は、ソース装置１１０及びターゲット装置１２０の両方が特定の地理的領域内に存在する場合、プッシュストラテジが実施され、その他の場合、プルストラテジが実施されることを示し得る１又は複数のルールに反映されても良い（例えば、テーブル６００に反映されても良い）。
【０１０２】
一実施形態では、ソース装置１１０及び／又はターゲット装置１２０が認証されているか否かは、ネットワークサービス１４０がターゲット装置１２０に対してプルモード又はプッシュモードで動作するかを決定する際の一因である。ネットワークサービス１４０により用いられる認証情報は、テーブル４００に反映されても良い。認証要因は、ターゲット装置１２０及び／又はソース装置１１０が認証された場合、プッシュストラテジが実施され、その他の場合、プルストラテジが実施されることを示し得る１又は複数のルールに反映されても良い（例えば、テーブル６００に反映されても良い）。
【０１０３】
＜複数のターゲット装置＞
一実施形態では、ソース装置１１０は、データを複数のターゲット装置へ送信させる。データの第１のターゲット装置への送信は、データの第２のターゲット装置への送信と同時に生じても良い。ここで、第２のターゲット装置は、第１のターゲット装置と異なる。これが生じる一例であるシナリオは、ユーザがユーザのモバイル装置に格納された機密文書を、各ビジネスパートナーが彼／彼女自身のタブレットコンピュータのようなモバイル装置を有する場合、単一の会議室内で複数のビジネスパートナーと共有したいと望む場合である。この方法では、紙の文書が印刷され、分配され、又は処理される必要がない。
【０１０４】
一実施形態では、ソース装置１１０は、複数の要求をネットワークサービス１４０へ送信する。各要求は異なるターゲット装置を特定する。代替として、ソース装置１１０は、ネットワークサービス１４０へ、複数のターゲット装置を特定する単一の要求を送信する。
【０１０５】
ネットワークサービス１４０は、ここでデータ又は命令を各ターゲット装置へ送信するか否かを決定するために、１又は複数の技術を用いても良い。例えば、ネットワークサービス１４０は、各ターゲット装置が１又は複数の地理的基準（例えば、特定の地理的位置の範囲内に存在する、又はソース装置１１０から特定の距離の範囲内に存在する）を満たすか否かを決定する。一実施形態では、ネットワークサービス１４０が、ターゲット装置は１又は複数の地理的基準を満たさないと決定した場合、ネットワークサービス１４０は、該ターゲット装置のみに関する要求を拒否する（例えば、印刷データ又は命令を送信しない）。代替として、ネットワークサービス１４０が、複数のターゲット装置のうちのいずれも１又は複数の地理的基準を満たさないと決定した場合、ネットワークサービス１４０は、複数のターゲット装置の全てに関する要求を拒否する。
【０１０６】
別の例として、ネットワークサービス１４０は、各ターゲット装置毎に、該ターゲット装置へデータ又は命令を送信する前に、該ターゲット装置が１又は複数の認証基準を満たすか否かを決定する。上述の例と同様に、ネットワークサービス１４０が、ターゲット装置は１又は複数の認証基準を満たさないと決定した場合、ネットワークサービス１４０は、該ターゲット装置のみに関する要求を拒否する（例えば、印刷データ又は命令を送信しない）。代替として、ネットワークサービス１４０が、複数のターゲット装置のうちのいずれも１又は複数の認証基準を満たさないと決定した場合、ネットワークサービス１４０は、複数のターゲット装置の全てに関する要求を拒否する。
【０１０７】
追加で、ネットワークサービス１４０は、データ又は命令をターゲット装置へ送信することを許可する前に、各ターゲット装置が複数種類の基準（例えば、地理的基準、認証基準、及び／又は他の基準）を満たすか否かを決定しても良い。
【０１０８】
＜ハードウェア概要＞
一実施形態によると、本願明細書に記載した技術は、１又は複数の特定目的コンピュータ装置により実施される。特定目的コンピュータ装置は、この技術を実行するためにハードウェアに組み込まれても良く、この技術を実行するよう永続的にプログラムされた１又は複数の特定用途向け集積回路（ＡＳＩＣ）若しくはフィールドプログラマブルゲートアレイ（ＦＰＧＡ）のようなデジタル電子装置を有しても良い。また、特定目的コンピュータ装置は、この技術を実行するようプログラム命令に従ってファームウェア、メモリ、他の記憶若しくは組合せでプログラムされた１又は複数の汎用目的ハードウェアプロセッサを有しても良い。このような特定目的コンピュータ装置は、この技術を達成するために、カスタムハードワイヤードロジック、ＡＳＩＣ又はＦＰＧＡをカスタムプログラミングと組み合わせても良い。特定目的コンピュータ装置は、デスクトップコンピュータシステム、ポータブルコンピュータシステム、ハンドヘルド装置、ネットワーク装置、又はこの技術を実施するためのハードワイヤードロジック及び／又はプログラムロジックを組み込んだ任意の他の装置であっても良い。
【０１０９】
例えば、図１４は、一実施形態が実装され得るコンピュータシステム１４００を示すブロック図である。コンピュータシステム１４００は、バス１４０２又は情報を通信する他の通信機構、及びバス１４０４に結合され情報を処理するプロセッサ１４０４を有する。ハードウェアプロセッサ１４０４は、例えば汎用目的マイクロプロセッサであっても良い。
【０１１０】
コンピュータシステム１４００は、また、ランダムアクセスメモリ（ＲＡＭ）又は他のダイナミック記憶素子のような、バス１４０２に結合され情報及びプロセッサ１４０４により実行されるべき命令を格納する主記憶１４０６も有する。主記憶１４０６は、プロセッサ１４０４により実行されるべき情報の実行中に、一時変数又は他の中間的情報を格納するために用いられても良い。このような命令は、プロセッサ１４０４にアクセス可能な非一時的記憶媒体に格納されるとき、命令で指定された動作を実行するようカスタマイズされた特定目的装置内のコンピュータシステム１４００を実現する。
【０１１１】
コンピュータシステム１４００は、バス１４０２に結合され、静的情報及びプロセッサ１４０４のための命令を格納する読み出し専用メモリ（ＲＯＭ）１４０８又は他の静的記憶装置を更に有する。情報及び命令の格納のために、磁気ディスク又は光ディスク又は固体ドライブのような記憶装置１４１０が設けられバス１４０２に結合される。
【０１１２】
コンピュータシステム１４００は、バス１４０２を介して、陰極線管（ＣＲＴ）のような、コンピュータユーザに情報を表示するディスプレイ１４１２に結合されて良い。入力装置１４１４は、英数字及び他のキーを有し、バス１４０２に結合され、プロセッサ１４０４に情報及びコマンド選択を伝達する。別の種類のユーザ入力装置は、マウス、トラックボール又はカーソル方向キーのようなカーソル制御１４１６であり、プロセッサ１４０４に方向情報及びコマンド選択を伝達し、ディスプレイ１４１２上のカーソルの移動を制御する。この入力装置は、通常、２軸、つまり第１の軸（例えばＸ）及び第２の軸（例えばＹ）における２度の自由度を有し、装置に平面内の位置を指定させる。
【０１１３】
コンピュータシステム１４００は、本願明細書に記載した技術を、カスタマイズハードワイヤードロジック、１又は複数のＡＳＩＣ若しくはＦＰＧＡ、コンピュータシステムと組み合わせて、コンピュータシステム１４００を特定用途向け機械にする若しくはプログラムするファームウェア及び／又はプログラムロジックを用いて実装してもよい。一実施形態によると、これらの技術は、プロセッサ１４０４が主記憶１４０６に含まれる１又は複数の命令の１又は複数のシーケンスを実行するのに応答して、コンピュータシステム１４００により実行される。このような命令は、記憶装置１４１０のような別の記憶媒体から主記憶１４０６に読み込まれても良い。主記憶１４０６に含まれる命令シーケンスの実行は、プロセッサ１４０４に本願明細書に記載した処理ステップを実行させる。代替の実施形態では、ハードワイヤード回路が、ソフトウェア命令の代わりに又はそれと組み合わせて用いられても良い。
【０１１４】
本願明細書で用いられる用語「記憶媒体」は、装置を特定の方法で動作させるデータ及び／又は命令を格納する任意の非一時的媒体を表す。このような記憶媒体は、不揮発性媒体及び／又は揮発性媒体を有し得る。不揮発性媒体は、例えば、記憶装置１４１０のような光ディスク又は磁気ディスク又は固体ドライブを含む。揮発性媒体は、主記憶１４０６のような動的記憶を含む。記憶媒体の共通形態は、例えば、フロッピディスク、フレキシブルディスク、ハードディスク、固体ドライブ、磁気テープ、又は任意の他の磁気データ記憶媒体、ＣＤ−ＲＯＭ、任意の他の光学データ記憶媒体、ホールのパターンを有する物理的媒体、ＲＡＭ，ＰＲＯＭ及びＥＰＲＯＭ、ＦＬＡＳＨ−ＥＰＲＯＭ、任意の他のメモリチップ若しくはメモリカートリッジを含む。
【０１１５】
記憶媒体は、伝送媒体と別個であっても良いが共に用いられても良い。伝送媒体は、記憶媒体間で情報を転送する際に関与する。例えば、伝送媒体は、同軸ケーブル、銅線、光ファイバを含み、バス１４０２を構成するワイヤを含む。伝送媒体は、無線及び赤外線データ通信中に生成される波動のような音響又は光の波動の形式であっても良い。
【０１１６】
種々の形態の媒体は、実行のためにプロセッサ１４０４に１又は複数の命令の１又は複数のシーケンスを伝達する際に、関与し得る。例えば、命令は、初めにリモートコンピュータの磁気ディスク又は固体ドライブで運ばれ得る。リモートコンピュータは、その命令を自身の動的記憶にロードし、及びモデムを用いて電話線を介して命令を送信できる。コンピュータシステム１４００にローカルなモデムは、電話線でデータを受信し、赤外線送信機を用いて、そのデータを赤外線信号に変換できる。赤外線検出器は、赤外線信号で伝達されたデータを受信し、適切な回路がそのデータをバス１４０２に置くことができる。バス１４０２は、データを主記憶１４０６に伝達する。主記憶１４０６から、プロセッサ１４０４が命令を読み出し実行する主記憶１４０６により受信された命令は、任意的に、プロセッサ１４０４により実行される前又は後に、記憶装置１４０６に格納されても良い。
【０１１７】
コンピュータシステム１４００は、バス１４０２に結合された通信インタフェース１４１８も含む。通信インタフェース１４１８は、ローカルネットワーク１４２２に接続されるネットワークリンク１４２０に結合される２方向データ通信を提供する。例えば、通信インタフェース１４１８は、ＩＳＤＮ（Integrated  Services  Digital  Network）カード、モデム、衛星モデム又は対応する種類の電話線へのデータ通信接続を提供するモデムであっても良い。別の例として、通信インタフェース１４１８は、互換性のあるＬＡＮへのデータ通信接続を提供するＬＡＮ（Local  Area  Network）カードであっても良い。無線リンクも実装されても良い。任意のこのような実装で、通信インタフェース１４１８は、種々の情報を表すデジタルデータストリームを伝達する電気、電磁気又は光信号を送信及び受信する。
【０１１８】
ネットワークリンク１４２０は、通常、１又は複数のネットワークを通じて他のデータ装置へのデータ通信を提供する。例えば、ネットワークリンク１４２０は、ローカルネットワーク１４２２を通じてホストコンピュータ１４２４への又はＩＳＰ（Internet  Service  Provider）１４２６により稼働されるデータ機器への接続を提供できる。ＩＳＰ１４２６は、また、現在一般的に「インターネット」１４２８と称される世界的規模のパケットデータ通信ネットワークを通じてデータ通信サービスを提供する。ローカルネットワーク１４２２及びインターネット１４２８の両者は、デジタルデータストリームを伝達する電気、電磁気又は光信号を用いる。種々のネットワークを通る信号及びネットワークリンク１４２０の通信インタフェース１４１８を通る信号は、コンピュータシステム１４００への及びそれからのデジタルデータを伝達し、伝送媒体の例示的形式である。
【０１１９】
コンピュータシステム１４００は、ネットワーク、ネットワークリンク１４２０及び通信インタフェース１４１８を通じて、プログラムコードを含む、メッセージを送信し及びデータを受信できる。インターネットの例では、サーバ１４３０は、インターネット１４２８、ＩＳＰ１４２６、ローカルネットワーク１４２２及び通信インタフェース１４１８を通じてアプリケーションプログラムのために要求されたコードを送信し得る。
【０１２０】
受信されたコードは、プロセッサ１４０４により受信されるとプロセッサ１４０４により実行され、及び／又は後に実行するために記憶装置１４１０若しくは他の不揮発性記憶に格納され得る。
【０１２１】
上述の明細書では、本発明の実施形態は、実施形態毎に変化し得る多数の特定の詳細を参照し説明された。したがって本明細書と添付図面は限定的ではなく例示的であると解釈すべきである。本発明の、および本出願者により発明の範囲内であると意図されたものの唯一の指標は、特許請求の範囲が由来する特定の形式の、いかなる今後の補正も含む本出願に由来する一組の特許請求の範囲の文字通りの範囲及び等価な範囲である。
【０１２２】
［関連出願の参照］
本出願は、同日に出願された米国特許出願第２０１３／４６７３４９号（代理人管理番号４９９８６-０７５２）、名称「MANAGING  ACCESS  TO  DATA  BASED  ON  LOCATION  INFORMATION」に関連する。この米国特許出願の全内容は、参照されることにより、本願明細書に完全に記載されたものとして本願明細書に組み込まれる。
【符号の説明】
【０１２３】
１１０  ソース装置
１２０  ターゲット装置
１３０  ネットワーク
１４０  ネットワークサービス
１５０  アプリケーション
１６０  アプリケーション
１７０  装置マネジャ
１８０  位置マネジャ
１９０  ポリシマネジャ
２０１  ユーザ階層
２１２  ユーザルート
２１４、２１６  ユーザグループ
２１８、２２０  ユーザ
２３０  装置階層
２３２  装置ルート
２３４、２３６  装置グループ
２３８、２４０、２４２  装置
３００、４００、５００、６００、７００  テーブル
８１０  ログインスクリーン
８２０  文書リストスクリーン
８３０  印刷オプションスクリーン
８４０  印刷ジョブ状態スクリーン
１１００  リリースコードスクリーン
【図１】
2013235592.tif 000003
【図２】
2013235592.tif 000004
【図３】
2013235592.tif 000005
【図４】
2013235592.tif 000006
【図５】
2013235592.tif 000007
【図６】
2013235592.tif 000008
【図７】
2013235592.tif 000009
【図８】
2013235592.tif 000010
【図９】
2013235592.tif 000011
【図１０】
2013235592.tif 000012
【図１１】
2013235592.tif 000013
【図１２】
2013235592.tif 000014
【図１３】
2013235592.tif 000015
【図１４】
2013235592.tif 000016