JP2013541099A - サービスとして信用できるデバイスクレーム - Google Patents

サービスとして信用できるデバイスクレーム Download PDF

Info

Publication number
JP2013541099A
JP2013541099A JP2013531624A JP2013531624A JP2013541099A JP 2013541099 A JP2013541099 A JP 2013541099A JP 2013531624 A JP2013531624 A JP 2013531624A JP 2013531624 A JP2013531624 A JP 2013531624A JP 2013541099 A JP2013541099 A JP 2013541099A
Authority
JP
Japan
Prior art keywords
client device
act
network application
access
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013531624A
Other languages
English (en)
Other versions
JP2013541099A5 (ja
JP5916737B2 (ja
Inventor
(ジョン) ネイシュタット ユージーン
アロン ダニエル
トール ヤイル
ノヴァク マーク
イー.アハメド カジャ
ヤソア ヨアフ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2013541099A publication Critical patent/JP2013541099A/ja
Publication of JP2013541099A5 publication Critical patent/JP2013541099A5/ja
Application granted granted Critical
Publication of JP5916737B2 publication Critical patent/JP5916737B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • G06F21/335User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2129Authenticate client device independently of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Power Engineering (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本発明の実施形態は、デバイスクレームがそれに対して発行されたクライアントデバイスが、ネットワークアプリケーションにアクセスしようとする試みに関してデバイスクレームを使用できるように、サービスとしてクライアントデバイスが利用可能な信用できるデバイスクレームを発行する。サービスは、デバイスの特性および/または状態の評価を行い、この評価の結果をデバイスクレーム内で示し、デバイスクレームをデバイスに発行することができる。サービスは、ネットワークアプリケーションをアクセス可能にするエンティティの管理境界の外部から、クライアントデバイスによってアクセス可能とすることができ、したがって、公共的にアクセス可能なインターネットなどを介して、企業対消費者(B2C)および企業対企業(B2B)トポロジにおいて、ネットワークアプリケーションをアクセス可能にするエンティティに有益となる。

Description

本発明は、サービスとして信用できるデバイスクレームに関する。
多くの組織は、任意のデバイスを使用して任意の場所からいつでもアプリケーションに透過的にアクセスする機能をユーザに提供しようとしている。ユーザにこのレベルのアクセスを提供することは、セキュリティに関連する障害を含めて、多くの障害を克服することを必要とする。例えば、組織は、各ユーザの役割および/または組織との関係に応じて、アプリケーションおよび/またはデータへの様々なレベルのユーザアクセスを提供しようとすることがある。
米国特許出願第12/822724号明細書 米国特許出願第XX号明細書 米国特許出願第12/822745号明細書
本発明の譲受人に譲渡された、2010年6月24日に出願された、「Network Layer Claims Based Access Control」と題する特許文献1は、(当業者には「アサーション(assertion)」としても知られている)「クレーム(claim)」内で提供される情報を使用することによって、OSIスタックのネットワーク層においてアクセス制御決定を行うことに関する柔軟性を提供する技法を開示している。簡単に言えば、クレームは、リソースへのアクセスを要求するコンピュータについての数々の属性、要求されたアクセスを取り巻く状況、それへのアクセスが要求されるリソースのいずれかに関する情報、および/または他の情報を含むことができる。開示された技法によれば、クレーム内で提供される情報は、1つまたは複数のアクセス制御ポリシーに照らして評価することができ、特定のネットワークリソースへのアクセスを許可するか、それとも拒否するかを決定する際に使用することができる。クレーム内で提供される情報は、ネットワーク層においてアクセス制御決定を行うためにそれまで使用されていた情報よりも詳細であることができるので、ポリシーをより柔軟に策定することができ、また様々な性質またはタイプの情報を考慮したものにすることができる。
本発明の譲受人に譲渡された、本出願と同時に出願された、「Trustworthy Device Claims for Enterprise Applications」と題する特許文献2は、アプリケーションへのアクセスを要求するデバイスの特性および/または状態を記述する情報をクレームの形態でアプリケーションに提供できる技法を開示している。デバイスの特性および/または状態を記述するこれらのクレームは、これ以降、「デバイスクレーム(device claim)」と呼ばれる。デバイスクレームが提供されるアプリケーションは、セキュリティおよび非セキュリティ関連の機能を含む数々のタイプの機能のいずれかを駆動するために、デバイスクレーム内の情報を利用することができる。例えば、デバイスクレームは、アプリケーションによって使用されて、アクセス制御決定を駆動すること、ある機能またはデータを利用可能にする前に、説明されたデバイスが一定の基準を満たすことを検証すること、デバイスの特性に適した出力を生成することなどを可能にする。開示された技法によれば、デバイスは、リモート認証プロセスを受け、それを介して、デバイスクレームが生成され、その後、アプリケーションがそれを消費するように構成された形態に変換される、その後、デバイスクレームは、デバイスによって、アプリケーションへのアクセスを求める要求内に含めることができる。リモート認証プロセスを介して生成された結果として、デバイスクレームは、デバイスの特性および/または状態についての正確で真正な表現として、アプリケーションによって受け入れられる。
本発明の実施形態は、デバイスがサービスとして利用可能な信用できるデバイスクレームを発行する。この点について、アプリケーションを(例えば公共的にアクセス可能なインターネットを介して)ネットワーク上で利用可能にするエンティティは、場合によっては、デバイスクレームが提供できる情報(例えば、アクセスを要求するデバイスの特性および/または状態についての独立の評価)に価値を見出すことができるが、アプリケーションにアクセスしようとするデバイスへのデバイスクレームの発行に関連する管理的および費用的なオーバヘッドを負うことを望まないことがあると出願人は認識した。したがって、本発明のいくつかの実施形態は、デバイスがデバイスクレームをそこから獲得できるサービスを提供し、デバイスクレームは、その後、ネットワークアプリケーションにアクセスしようとする試みに関して使用することができる。サービスは、デバイスの特性および/または状態についての独立した評価を行い(例えば、実行および/または監視し)、この評価の結果をデバイスクレーム内で示し、後でアプリケーションにアクセスしようと試みる際に使用するためにデバイスクレームをデバイスに提供することができる。いくつかの実施形態では、サービスは、ネットワークアプリケーションを利用可能にするエンティティの管理境界の外部から、デバイスによってアクセス可能とすることができる。そのため、本発明の実施形態は、企業対消費者(B to C)および企業対企業(B to B)トポロジにおいて、ネットワークアプリケーションをデバイスからアクセス可能にする関係者に有益なことがある。
上述の説明は、本発明の実施形態についての非限定的な要約であり、本発明は、添付の特許請求の範囲によって確定される。
添付の図面は、原寸に比例して描こうとは意図されていない。図面では、様々な図に示される同一またはほぼ同一の各構成要素は、同様の番号によって表される。明瞭になるように、どの図面においても、必ずしもすべての構成要素にラベルが付けられているわけではない。
本発明のいくつかの実施形態による、信用できるデバイスクレームをクライアントデバイスに発行できるシステムを示すブロック図である。 本発明のいくつかの実施形態による、信用できるデバイス状態トークンサービス(device state token service)のリストをクライアントデバイスがネットワークアプリケーションから受信し、信用できるDSTSを選択する、例示的なプロセスを示すフローチャートである。 本発明のいくつかの実施形態による、クライアントデバイスによって提出されたデバイスクレームをネットワークアプリケーションが評価する、例示的なプロセスを示すフローチャートである。 本発明の実施形態を実施できる例示的なコンピュータシステムを示すブロック図である。 本発明の態様を具現する命令を記憶できる例示的なメモリを示すブロック図である。
本発明のいくつかの実施形態によれば、ネットワークアプリケーションにアクセスしようとする試みに関して使用するためにデバイスがそこからデバイスクレームを獲得できるサービスが提供される。いくつかの実施形態では、ネットワークアプリケーションにアクセスしようとするデバイスの試みに応答して、デバイスの特性および/または状態についての独立した評価を行い、デバイスの特性および/または状態についての正確で真正な表現をデバイスクレームの形態で発行することについて、ネットワークアプリケーションおよび/またはデバイスから信用を得た1つまたは複数のデバイス状態トークンサービス(DSTS)の表示をデバイスに提供することができる。DSTSによってデバイスに発行された後、デバイスクレームは、ネットワークアプリケーションにアクセスしようとする試みに関してデバイスによって使用することができ、またセキュリティおよび非セキュリティ関連の機能を駆動するためにネットワークアプリケーションによって使用することができる。
信用できるデバイスクレームをデバイスに発行するためのコンポーネントを備える例示的なシステムと、これらのコンポーネントがそれによって対話できる例示的な手順が、図1に示されている。示される例では、(デスクトップもしくはラップトップコンピュータ、モバイル電話、携帯情報端末、コンテンツ再生デバイス、テレビ、ゲームコンソール、および/または他の適切なデバイスタイプなど、任意の適切なコンピューティングデバイスとすることができる)クライアントデバイス110は、(図1には図示されていない)1つまたは複数のネットワークを介して、(いずれか1つまたは複数のアプリケーションコンポーネントを含むことができる)ネットワークアプリケーション120と通信する。1つまたは複数のネットワークは、いずれか1つまたは複数の適切な通信プロトコルに従った通信を実施することができ、いずれか適切な通信インフラストラクチャを備えることができる。1つまたは複数のネットワークは、例えば、公共的にアクセス可能なインターネットを含むことができる。
図1に示される例示的な手順は、矢印152によって示されるように、ネットワークアプリケーション120にアクセスしようとするクライアントデバイス110による試みで開始する。ネットワークアプリケーション120は、数々の方法のいずれかで、このアクセスの試みに応答することができる。図1に示される例では、ネットワークアプリケーション120は、矢印154によって示されるように、信用できるデバイスクレームを発行することについてネットワークアプリケーション120が信用する1つまたは複数のDSTSの表示(例えばリスト)をクライアントデバイス110に提供することによって応答する。その後、クライアントデバイス110は、評価を行うことについてクライアントデバイス110もやはり信用するDSTSを選択することができる。クライアントデバイスが、デバイスクレームを発行することについて信用を得た1つまたは複数のDSTSの表示をネットワークアプリケーションから受信し、デバイスクレームがそれに対して要求されるDSTSを選択する、例示的なプロセス200が、図2に示されている。
プロセス200が開始すると、クライアントデバイス110は、行為210において、クライアントデバイスの特性および/または状態についての独立した評価を実行することについて、またそれを示すデバイスクレームを発行することについて、ネットワークアプリケーション120から信用を得た1つまたは複数のDSTSの表示を受信する。図1に示される例では、ネットワークアプリケーション120は、(矢印122によって示されるように)DSTS130と信用関係を有するが、DSTS140とは有さない。
その後、プロセス200は行為220に進み、クライアントデバイス110は、デバイスクレームがそれに対して要求されるDSTSを選択する。例えば、クライアントデバイス110は、ネットワークアプリケーション120によって提供されたリストから、クライアントデバイス110もやはり信用するDSTSを選択することができる。デバイスクレームを発行するプロセスにおいてDSTSによって実行されるいくつかの評価の侵入的性質を考えると、信用できることが好ましいことがある。DSTSは、既存の信用関係のため、DSTSが1つもしくは複数の基準を満たすため、または他の任意の理由で、クライアントデバイス110から信用を得ることができる。図1に示される例では、クライアントデバイス110は、(矢印115によって示されるように)DSTS130と、また(矢印118によって示されるように)DSTS140と既存の信用関係を有する。(図1にはただ2つのDSTSしか示されていないが、任意の適切な数のDSTSを提供できることを理解されたい)。行為210において受信した表示にDSTS130が含まれると仮定すると、この例では、クライアントデバイス110は、デバイスクレームがそれに対して要求されるDSTSとして、DSTS130を選択する。
その後、プロセス200は行為230に進み、クライアントデバイス110は、選択されたDSTS130を認証する。DSTS130の認証は、例えば、悪意をもった行為者が、DSTS130を装って、クライアントデバイス110上の情報および/または機能に自由にアクセスすることを防止することができる。いくつかの実施形態では、クライアントデバイス110は、この目的でDSTS130によって発行されたX.509証明書を評価することによって、または他の任意の適切な認証手段を使用して、DSTS130を認証することができる。その後、プロセス200は行為240に進み、クライアントデバイス110は、デバイスクレームを要求し、その後、プロセス200は終了する。
図2のプロセスは、デバイスクレームがそれに対して要求されるDSTSをクライアントデバイスが識別できる、1つの例示的な手順にすぎないことを理解されたい。例えば、行為210においてクライアントデバイス110に提供される表示は、ネットワークアプリケーション120から信用を得たDSTSだけを含む必要はなく、ネットワークアプリケーション120とクライアントデバイス110の両方から信用を得たDSTSを含むことができる。本発明の実施形態は、クライアントデバイスがDSTSを選択する実施にまったく限定されないことも理解されたい。例えば、(図1の矢印152によって示されるように)クライアントデバイス110からアクセス要求を受信すると、ネットワークアプリケーション120は、正確なデバイスクレームを発行することについてネットワークアプリケーション120が信用するDSTSに、クライアントデバイス110を単純にリダイレクトすることができる。本発明の実施形態は、数々の方法のいずれかで実施することができる。
図2に示される例示的なプロセスは、デバイスクレームがそれに対して要求される適切なDSTSを識別できない場合の(例えばクライアントデバイス110によって実行される)行為を含むように補足できることも理解されたい。適切なDSTSを識別できない場合、数々の動作のいずれかを実行することができる。例えば、クライアントデバイス110は、適切なDSTSの発見に関する情報をユーザに提示することができ、クライアントデバイス110は、適切なDSTSの発見に関する情報を獲得するために、ネットワークアプリケーション120に問い合わせることができ、および/または1つもしくは複数の他の動作が実行されてもよい。本発明の実施形態は、いずれか特定の実施に限定されない。
図2の例示的なプロセスが完了すると(すなわち、クライアントデバイス110がデバイスクレームを要求した後)、DSTS130(図1)は、クライアントデバイス110にデバイス状態ポリシーおよびスクリプトを提供することによって、デバイスクレームを求める要求に応答する。いくつかの実施形態では、DSTS130から獲得された情報は、クライアントデバイス110へのデバイスクレームの発行をサポートする情報を収集するように、クライアントデバイス110に命令することができる。
DSTS130によってクライアントデバイス110に提供されるスクリプトは、クライアントデバイス110によって実行された場合、クライアントデバイス110が上述の情報の一部または全部を収集する支援をすることができる。デバイスクレームの発行をサポートする、クライアントデバイスに関する情報が収集される例示的な技法は、本発明の譲受人に譲渡された、2010年9月30日に出願された、「Trustworthy Device Claims for Enterprise Applications」と題する特許文献2において説明されており、特許文献2のいくつかの部分は、本明細書において援用される。特許文献3において開示された実施形態では、クライアントデバイス110上の(図1には図示されていない)データ収集コンポーネントが、DSTS130によって特定された情報を収集するために、1つまたは複数のデータ源と通信する。例えば、データ収集コンポーネントは、データ源に情報を提供し、各データ源からデバイス特性および/または状態を示す情報を受信することができる。例えば、データ収集コンポーネントは、デバイスのライフサイクル中に、(例えば、オペレーティングシステムのリブート、ハイバネーション/スリープからの再開、ソフトウェアパッチの1つもしくは複数のドライバのインストール、ネットワーク接続の開始、ロケーション変更、および/または他のイベントなど)数々のイベントのいずれかが発生した時点または発生した後に、クライアントデバイスの状態に関するコンテキスト情報を、データ源に提供することができる。それに応えて、データ源は、(例えば、セキュリティおよび/もしくはアンチウイルスソフトウェアが備えられているかどうか、ある(例えばセキュリティ)ソフトウェアが作動しているかどうか、クライアントデバイスがファイアウォールを利用しているかどうか、ファイアウォールが機能しているかどうか、アンチウイルスシグネチャが最新かどうかなど)クライアントデバイス110の「健全性」、(例えば、署名および/もしくは暗号化通信が使用されるかどうか、暗号化のタイプなど)アプリケーションにアクセスするためにクライアントデバイス110が使用する暗号法のタイプ、クライアントデバイス110のための識別子、(例えば、デスクトップコンピュータ、データベースサーバ、ウェブサーバなど)クライアントデバイス110が実行する役割、(例えば、会社、従業員、販売業者など)クライアントデバイス110のオーナ、クライアントデバイス110の地理的ロケーションについての情報、および/または他の数々のタイプの情報のいずれかを提供することができる。提供される情報は、その正確さを保証するために、データ源によって「署名」することができる。
上述のデータ源に加えて、クライアントデバイス110は、ローカルで実施されるTPM(トラステッドプラットフォームモジュール)コンポーネント(図1には図示されず)からも情報を受け取ることができる。TPMは、TPMのPCR(プラットフォーム構成レジスタ)内にイベントのログを記録すること、暗号鍵を生成し、保存し、使用できるようにすること、「TCGログ」と呼ばれるデータ構造上に、そのログでリモートパーティに報告されるイベントの信用性を証明するために、「クォート(quote)」を生成できるようにすること、連続するブートサイクルを区別し、ハイバネート/リスタートイベントにわたる追加のセキュリティ手段を提供するのに使用できる「ブートカウンタ」を維持することを含む、デバイスクレームの生成に関する多くの機能のいずれか、および/または他の機能を実行することができる。
その後、収集された情報は、矢印158によって示されるように、DSTS130に提供される。その後、DSTS130は、デバイスクレームを発行すべきかどうかを判定するために、クライアントデバイス110によって提供された情報を予備的に評価することができる。例えば、DSTS130は、TPM測定が生成後に変更されていないことを確認するためにTPM測定を確認し、クライアントデバイス110がマルウェアに侵されていないかどうかを判定し、および/または他の予備的な評価を実行することができる。クレーム生成を開始すべきであるという予備的な判定が下された場合、DSTS130は、生成すべき特定のデバイスクレームを決定するために、クライアントデバイス110から受信した情報をさらに評価することができる。この決定は、少なくとも部分的に、受信した情報に基づいて、生成すべきデバイスクレームを管理するDSTS130によって実施されるポリシーによって推進することができる。生成されたデバイスクレームは、DSTS130によって署名され、その後、矢印160によって示されるように、クライアントデバイス110に送信される。デバイスクレームは、任意の適切な配送手段を使用して、クライアントデバイス110に送信することができる。例えば、いくつかの実施形態は、クライアントデバイス110に送信されるSAML(セキュリティアサーションマークアップ言語)トークン内にデバイスクレームを含めることが可能である。しかし、デバイスクレームのための任意の適切な手段を利用することができる。
いくつかの実施形態では、クライアントデバイス110に送信される情報は、デバイスクレームをクライアントデバイスに結び付けるために、クライアントデバイスの識別情報の表示を含む。この結び付けは、悪意をもった行為者が、デバイスクレームを不正流用し、クライアントデバイス110を装って、ネットワークアプリケーション120にアクセスすることを防止することができる。結び付けは、DSTS130によるX.509証明書の発行を介してなど、任意の適切な技法を使用して達成することができる。
デバイスクレームを受信すると、クライアントデバイス110は、矢印162によって示されるように、ネットワークアプリケーション120にアクセスしようと試みる。例えば、クライアントデバイス110上で動作している(図1には図示されていない)ブラウザアプリケーションは、ネットワークアプリケーション120へのアクセスを求める要求内にデバイスクレームを含めることができる。もちろん、クライアントデバイス110は、ネットワークアプリケーション120にアクセスするためにブラウザアプリケーションを利用するようには限定されず、ネットワークアプリケーション120にアクセスしようと試みるために、任意の適切な技法および/またはコンポーネントを使用することができる。
その後、ネットワークアプリケーション120は、クライアントデバイス110から受信したデバイスクレームを評価することができる。評価を実行することができる例示的なプロセス300が、図3に示されている。
プロセス300が開始すると、行為310において、ネットワークアプリケーション120が、デバイスクレームを受信する。行為320において、ネットワークアプリケーション120は、デバイスクレームがそれに対して発行されたデバイスによってデバイスクレームが提供されたかどうかを判定する。このステップは、悪意をもった行為者が、ネットワークアプリケーションにアクセスしようと試みる際に、特定のデバイスを装うことを防止するために実行することができる。デバイスクレームがそれに対して発行されたデバイスによってデバイスクレームが提供されたことの検証は、数々の方法のいずれかで実行することができる。いくつかの実施形態では、ネットワークアプリケーションは、上述したように、デバイスクレームをクライアントデバイスに結び付けるためにDSTS130によって発行されたX.509証明書を検査することによって、デバイスクレームを確認することができる。
ネットワークアプリケーション120が、デバイスクレームがそれに対して発行されたデバイスによってデバイスクレームが提供されたことを検証できない場合、プロセス300は、行為360に進み、ネットワークアプリケーションは、アクセスが許可されないことをクライアントデバイスに通知する。その後、プロセス300は終了する。
反対に、ネットワークアプリケーション120が、デバイスクレームがそれに対して発行されたデバイスによってデバイスクレームが提供されたことを検証した場合、プロセス300は、行為330に進み、ネットワークアプリケーション120は、デバイスクレームが期限切れになっていないかどうかを判定する。この点について、クライアントデバイスは、ネットワークアプリケーションにアクセスしようとする複数の試みに関連して、所定の1組のデバイスクレームを利用することができ、いくつかの実施形態では、デバイスクレームは、規定された有効期限(例えば、発行後に経過した一定の時間数、および/または他の何らかの条件に基づく有効期限)を有することができる。例えば、デバイスクレームは、本質的にコンテキスト依存とすることができるので(例えば、デバイスクレームは、デバイスの状態、デバイスの物理的ロケーション、クライアントデバイスにあるソフトウェアパッチがインストールされているかどうかなどに関連することができるので)、その正確さは、発行後、ある程度の時間が経過すると、疑わしくなることがある。
ネットワークアプリケーション120が、デバイスクレーム(またはその一部)は期限切れであると判定した場合、プロセス300は、行為360に進み、ネットワークアプリケーションは、アクセスが許可されないことをクライアントデバイスに通知する。ネットワークアプリケーション120は、例えば、新しいデバイスクレームを獲得すべきであることをクライアントデバイス110に通知することができる。その後、プロセス300は終了する。
ネットワークアプリケーション120が、デバイスクレームは期限切れではないと判定した場合、プロセス300は、行為340に進み、デバイスクレーム、またはデバイスクレームとの結び付きが確立されているクライアント識別情報が無効化されていないかどうかについて判定が行われる。この点について、デバイスクレームは、DSTSによって無効化することができ、したがって、期限切れになる前に、数々の理由のいずれかのために、無効になることがある。例えば、DSTSによって実施されるポリシーの変更、クライアントデバイスの状態および/もしくは特性の変化、または他の任意の理由が原因で、DSTSは、デバイスクレームを無効化することがある。(例えば、デバイスクレームと一緒に発行される証明書を介して規定される)クライアントの識別情報も、無効化することができ、その識別情報に対して発行されたデバイスクレームは、いずれも無効にされる。
クライアントデバイスの識別情報および/またはデバイスクレームが無効化されたかどうかの判定は、数々の方法のいずれかで実行することができる。一例では、ネットワークアプリケーションは、OCSP(オンライン証明書状態プロトコル)、または他の任意の適切なプロトコルもしくは技法を使用して、クライアントデバイスの識別情報および/またはデバイスクレームが無効化されていないことを検証するために、クライアントデバイスにデバイスクレームを発行したDSTS(図1に示される例ではDSTS130)に問い合わせることができる。
行為340において、ネットワークアプリケーション120が、デバイスクレーム、またはデバイスクレームとの結び付きが確立されているクライアント識別情報は無効化されていると判定した場合、プロセス300は、行為360に進み、ネットワークアプリケーションは、アクセスが許可されないことを、クライアントデバイスに通知する。いくつかの実施形態では、ネットワークアプリケーションは、新しい1組のデバイスクレームを獲得すべきであることをクライアントデバイスに教えることができる。その後、プロセス300は終了する。
行為340において、ネットワークアプリケーション120が、デバイスクレームおよびクライアント識別情報は無効化されていないと判定した場合、プロセス300は、行為350に進み、アクセスを許可するのに十分な根拠をデバイスクレームが提供したかどうかについて判定が行われる。この判定は、数々の要因のいずれかに基づくことができる。例えば、ネットワークアプリケーション120は、デバイスクレーム内の情報が1つまたは複数の所定の基準を満たさないために、デバイスクレームは不十分であると判定することができる。例えば、ある特定のクレームがない(例えば、アンチウイルスソフトウェアがインストールされていないこと、マルウェアがクライアントデバイス110上で動作していることなどを示している)ことがあり、1つまたは複数のクレーム値が不満足である(例えば、あるセキュリティパッチがないこと、および/もしくはBitLockerなど、ある特定のセキュリティ手段がクライアントデバイス110上で作動していないことを示している)ことがあり、ならびに/または所定の基準が他の理由で満たされていない。ネットワークアプリケーション120は、アクセスを許可するのに十分な根拠をデバイスクレームが提供したかどうかを判定するために、デバイスクレーム内で提供された情報を数々の方法のいずれかで評価することができる。
アクセスを許可するのに十分な根拠をデバイスクレームが提供していない場合、プロセス300は、行為360に進み、ネットワークアプリケーション120は、アクセスが許可されなかったことを、クライアントデバイスに通知する。いくつかの実施形態では、ネットワークアプリケーション120は、不備をどのように是正したらよいかを、クライアントデバイス110および/またはユーザに教える。例えば、ネットワークアプリケーション120は、ユーザが是正を支援できるように、なぜユーザにアクセスが許可されなかったのか、その理由の表示を提示するように、クライアントデバイス110に命じることができる。この点について、クライアントデバイス110は、ユーザが不備を是正する助けとなり得る情報を獲得するためのプログラムされたロジックを含むことができる。例えば、ネットワークアプリケーション120から受信した情報が本質的に技術的である場合(例えば、ユーザが容易に理解できないことがあるエラーコードによって表現されている場合)、クライアントデバイス110は、より容易に理解できる情報を(例えばDSAPサーバに問い合わせることによって)取得することができる。この情報は、例えば、教示的な文言、追加情報を有するサイトのURLなどを含むことができる。例えば、インストールされていることをDSTSが期待している最新のアンチウイルスパッチをインストールすることなどをユーザに命じる文言を、ユーザに提示することができ、そのため、ユーザは、デバイスクレームの不備を是正する行動を取ることができる。しかし、不備を是正する行動を取るうえで、本発明の必ずしもすべての実施形態がユーザに依存しているわけではないことを理解されたい。例えば、いくつかの実施形態では、クライアントデバイス110は、不備を自動的に是正するためのプログラムされたロジックを実行することができる。本発明の実施形態は、数々の方法のいずれかで実施することができる。
行為360が終了すると、プロセス300は終了する。
行為350において、アクセスを許可するのに十分な根拠をデバイスクレームが提供したと判定された場合、プロセス300は、行為370に進み、アクセスが許可される。その後、プロセス300は終了する。
図1を再び参照すると、クライアントデバイス110にアクセスを許可すると、ネットワークアプリケーション120は、デバイスクレームを処理することができる。そのような処理は、セキュリティおよび非セキュリティ関連の機能を含む、数々の機能のいずれかを実行するために、デバイスクレーム内の情報を使用することを含むことができる。例えば、クライアントデバイス110の特性または能力を記述するデバイスクレーム内の情報は、特定のアプリケーション機能を駆動するために、またそれらの特性または能力に適するように出力を調整するためになど、ネットワークアプリケーション120によって使用することができる。本発明の実施形態は、デバイスクレーム内で提供される情報をいずれか特定の方法で使用することに限定されない。
いくつかの実施形態では、図1の例示的なプロセスをいくらか変更して、クライアントデバイスが、ネットワークアプリケーションと直接的に通信できない代わりに、仲介手段を介してネットワークアプリケーションと通信できるようにすることができる。この点について、図1は、アクセスゲートウェイ125を示しており、いくつかの実施形態では、アクセスゲートウェイ125は、クライアントデバイス110と通信して、例えば、(矢印152によって示されるように、上述の通り)ネットワークアプリケーション120へのアクセスを求める要求をクライアントデバイス110から受信し、(矢印154によって示されるように、上述の通り)アクセス要求に応答し、および/または(矢印162によって示されるように、上述の通り)クライアントデバイス110からデバイスクレームを受信することができる。
アクセスゲートウェイなどの仲介手段は、例えば、ネットワークアプリケーション120がデバイスクレームの処理をサポートしない状況、またはそれ以外ではデバイスクレームの処理のために適切に構成されていない状況において、有益となる。例えば、いくつかのレガシネットワークアプリケーションは、デバイスクレームを処理することが可能ではないことがあり、この機能を使えるようにするのに必要な再構成は、ネットワークアプリケーションを利用可能にしているエンティティによるかなりの投資を必要とすることがあることを出願人は認識した。したがって、仲介手段は、デバイスクレーム内で提供される情報を処理するための「クレーム対応の」フロントエンドをネットワークアプリケーション120に提供することができる。
仲介手段による処理は、セキュリティに関する機能を含むが、それに限定されない、数々の機能のいずれかを実行することを含むことができる。一例として、仲介手段は、アクセス制御決定を行うためにデバイスクレームを処理し、アクセスを許可されたクライアントデバイスからの情報だけをネットワークアプリケーション120に渡すことができる。別の例として、仲介手段は、ネットワークアプリケーションがそれを消費するように構成された形にデバイスクレームを変換するために、デバイスクレームを事前に処理することができ、その後、アプリケーションは、ある機能を実行する際に、その情報を使用することができる。コンピュータプログラミング分野の当業者は、図1の例示的なシステムにおける仲介手段について、数々の用途を思い浮かべることができ、本発明の実施形態は、いずれか特定の実施に限定されない。仲介手段およびそれによって実行される機能を利用するいくつかの例示的な実施が、本発明の譲受人に譲渡された、2010年6月24日に出願された、「Trusted Intermediary For Network Layer Claims-Enabled Access Control」と題する特許文献3において開示されており、同出願は、その全体が参照により本明細書に組み込まれる。
上述したように、クライアントデバイスは、潜在的に、クライアントデバイスおよび/またはネットワークアプリケーションが信用関係を有するDSTSなど、複数のDSTSのいずれかからデバイスクレームを獲得することができる。デバイスクレームを発行する際に、各DSTSによって使用されるポリシーの間の矛盾を防ぐため、本発明のいくつかの実施形態は、各DSTSが同意する矛盾のないポリシースキームを提供する。例えば、いくつかの実施形態では、すべてのデバイスクレーム発行ポリシーは、1つのDSTSが、他のDSTSよりも制約的な要件をクライアントデバイスに課すことはあっても、どのDSTSも、別のDSTSによって実施されるポリシーに違反しない限りクライアントデバイスが満たすことができないポリシーを実施しないようにすることができる。例えば、1つのDSTSは、特定のデバイスクレームを発行するために、クライアントデバイスが先週中にソフトウェアパッチをインストールしないように要求できなくされることがあり、一方、別のDSTSは、デバイスクレームを発行するために、クライアントデバイスが一定の日数に限ってソフトウェアパッチを有さなくてもよいと指示する。いくつかの実施形態では、ポリシーの衝突は、追加的な表現(additive term)で条件を表現することで回避されるが、本発明の実施形態は、この点において限定されず、任意の適切なスキームを利用することができ、またはポリシーの無矛盾性が優先されない場合は、どのような方法も利用されない。
図1の例示的なシステムは、デバイスクレームをクライアントデバイスに提供することに関連する処理を実行するために、DSTSを利用するが、本発明の実施形態は、そのような実施に限定されないことを理解されたい。DSTSを含んでもよく、または含まなくてもよい、いずれか1つまたは複数の適切なコンポーネントを、代わりに利用することができる。例えば、上で参照した、本発明の譲受人に譲渡された、「Trustworthy Device Claims for Enterprise Applications」と題する特許文献2において説明されているように、デバイスクレームの生成および発行に関連する処理の部分は、認証サーバによって実行することができる。他の実施形態は、DSTSをまったく利用しなくてよく、デバイスクレームの生成および/または発行のために他のコンポーネントを利用することができる。任意の適切な構成のコンポーネントを利用することができ、本発明の実施形態は、この点において限定されない。
本発明の特徴を実施するためのシステムおよび方法の様々な態様は、図4に示された例示的なコンピュータシステム400など、1つまたは複数のコンピュータシステム上で実施することができる。コンピュータシステム400は、入力デバイス402と、出力デバイス401と、プロセッサ403と、メモリシステム404と、ストレージ406とを含み、それらのすべては、1つまたは複数のバス、スイッチ、ネットワーク、および/または他の適切な相互接続を含むことができる相互接続メカニズム405を介して、直接的または間接的に結合される。入力デバイス402は、ユーザまたは機械(例えば人間の操作者)から入力を受け取り、出力デバイス401は、ユーザまたは機械(例えば液晶ディスプレイ)に情報を表示または送信する。入力デバイスおよび出力デバイスは、とりわけ、ユーザインタフェースを提示するために使用することができる。ユーザインタフェースを提供するために使用できる出力デバイスの例は、出力を可視的に提示するためのプリンタまたは表示スクリーンと、出力を可聴的に提示するためのスピーカまたは他の音声生成デバイスとを含む。ユーザインタフェースのために使用できる入力デバイスの例は、キーボードと、マウス、タッチパッド、およびデジタイジングタブレットなどのポインティングデバイスとを含む。別の例として、コンピュータは、音声認識を介して、または他の可聴フォーマットで、入力情報を受け取ることができる。
プロセッサ403は、一般に、(例えば、Microsoft Windowsファミリのオペレーティングシステム、または他の任意の適切なオペレーティングシステムなど)オペレーティングシステムと呼ばれるコンピュータプログラムを実行し、オペレーティングシステムは、他のコンピュータプログラムの実行を制御し、スケジューリング、入力/出力および他のデバイス制御、課金、コンパイル、ストレージ割り当て、データ管理、メモリ管理、通信およびデータフロー制御を提供する。共同で、プロセッサとオペレーティングシステムは、アプリケーションプログラムおよび他のコンピュータプログラム言語がそれに対して書かれるコンピュータプラットフォームを定義する。
プロセッサ403は、様々な機能を実施するために、1つまたは複数のコンピュータプログラムを実行することもできる。これらのコンピュータプログラムは、手続型プログラミング言語、オブジェクト指向プログラミング言語、マクロ言語、またはそれらの組み合わせを含む、任意のタイプのコンピュータプログラム言語で書くことができる。これらのコンピュータプログラムは、ストレージシステム406内に記憶することができる。ストレージシステム406は、揮発性または不揮発性媒体上に情報を保持することができ、固定式または着脱可能式とすることができる。ストレージシステム406は、図5により詳細に示されている。
ストレージシステム406は、コンピュータプログラムまたはプログラムによって使用される情報を定義する信号が記憶される、コンピュータ読み取り可能および書き込み可能な有形な不揮発性記録媒体501を含むことができる。記録媒体は、例えば、ディスクメモリ、フラッシュメモリ、および/または情報を記録および記憶するために使用可能な他の任意の製造物品とすることができる。一般に、動作中、プロセッサ403は、不揮発性記録媒体501からデータを読み取り、プロセッサ403が媒体501にアクセスするよりも高速に情報にアクセスすることを可能にする、揮発性メモリ502(例えばランダムアクセスメモリ、すなわちRAM)に書き込む。メモリ502は、図4に示されるストレージシステム406またはメモリシステム404内に配置することができる。プロセッサ403は、一般に、集積回路メモリ404、502内のデータを操作し、その後、処理が完了した後に、データを媒体501にコピーする。媒体501と集積回路メモリ要素404、502の間でのデータ移動を管理するための様々なメカニズムが知られているが、本発明は、現在知られているか、それとも今後開発されるかに係わらず、いかなるメカニズムにも限定されない。本発明は、特定のメモリシステム404またはストレージシステム406にも限定されない。
このように、本発明の少なくとも一実施形態のいくつかの態様を説明してきたが、当業者には様々な代替形態、変更形態、および改良形態が容易に思い浮かぶことを理解されたい。そのような代替形態、変更形態、および改良形態は、本開示の一部であることが意図されており、本発明の主旨および範囲内にあることが意図されている。したがって、上述の説明および図面は、例を挙げたにすぎない。
本発明の上述の実施形態は、数々の方法のいずれかで実施することができる。例えば、実施形態は、ハードウェア、ソフトウェア、またはそれらの組み合わせを使用して実施することができる。ソフトウェアで実施される場合、ソフトウェアコードは、任意の適切なプロセッサ上で実行することができ、または単一のコンピュータ内で提供されるか、それとも複数のコンピュータおよび/もしくはシステム間に分散させて提供されるかに係わらず、プロセッサの集合上で実行することができる。そのようなプロセッサは、集積回路コンポーネント内に1つまたは複数のプロセッサを有する、集積回路として実施することができるが、プロセッサは、任意の適切なフォーマットの回路を使用して実施することができる。
本明細書で説明する機能を実行するコンポーネントまたはコンポーネントの集合はいずれも、全体として、上述の機能を制御する1つまたは複数のコントローラと見なすことができることを理解されたい。1つまたは複数のコントローラは、専用ハードウェアを用いて、または上述の機能を実行するようにマイクロコードもしくはソフトウェアを使用してプログラムされた1つまたは複数のプロセッサを利用することによってなど、数々の方法で実施することができる。コントローラが、システム操作のためのデータを記憶または提供する場合、そのようなデータは、中央リポジトリ内に、複数のリポジトリ内に、またはそれらを組み合わせて記憶することができる。
コンピュータは、ラックマウント型コンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、またはタブレットコンピュータなど、多くの形態のいずれかで具現できることも理解されたい。加えて、コンピュータは、携帯情報端末(PDA)、スマートフォン、または他の任意の適切なポータブルもしくは固定式電子デバイスを含む、一般にコンピュータとは見なされないが、適切な処理能力を有するデバイス内で具現することもできる。
また、コンピュータは、1つまたは複数の入力デバイスおよび出力デバイスを有することができる。これらのデバイスは、とりわけ、ユーザインタフェースを提示するために使用することができる。ユーザインタフェースを提供するために使用できる出力デバイスの例は、出力を可視的に提示するためのプリンタまたは表示スクリーンと、出力を可聴的に提示するためのスピーカまたは他の音声生成デバイスとを含む。ユーザインタフェースのために使用できる入力デバイスの例は、キーボードと、マウス、タッチパッド、およびデジタイジングタブレットなどのポインティングデバイスとを含む。別の例として、コンピュータは、音声認識を介して、または他の可聴フォーマットで、入力情報を受け取ることができる。
そのようなコンピュータは、ローカルエリアネットワーク、または企業ネットワークもしくはインターネットなどのワイドエリアネットワークを含む、任意の適切な形態の1つまたは複数のネットワークによって相互接続することができる。そのようなネットワークは、任意の適切な技術に基づくことができ、任意の適切なプロトコルに従って動作することができ、無線ネットワーク、有線ネットワーク、または光ファイバネットワークを含むことができる。
また、本明細書で概説した様々な方法またはプロセスは、1つまたは複数のプロセッサ上で実行可能な、様々なオペレーティングシステムまたはプラットフォームのいずれか1つを利用するソフトウェアとしてコード化することができる。加えて、そのようなソフトウェアは、多くの適切なプログラミング言語および/またはプログラミングもしくはスクリプトツールのいずれかを使用して書くことができ、フレームワークまたは仮想マシン上で実行される実行可能な機械語コードまたは中間コードとしてコンパイルすることもできる。
この点について、本発明は、1つまたは複数のコンピュータまたは他のプロセッサ上で実行された場合、上述の本発明の様々な実施形態を実施する方法を実行する、1つまたは複数のプログラムによって符号化された、コンピュータ可読媒体(または複数のコンピュータ可読媒体)(例えば、コンピュータメモリ、1つまたは複数のフロッピディスク、コンパクトディスク(CD)、光ディスク、デジタルビデオディスク(DVD)、磁気テープ、フラッシュメモリ、フィールドプログラマブルゲートアレイもしくは他の半導体デバイス内の回路構成、または他の非一時的な有形なコンピュータ可読記憶媒体)として具現することができる。1つまたは複数のコンピュータ可読媒体は、上述の本発明の様々な態様を実施するために、記憶された1つまたは複数のプログラムを1つまたは複数の異なるコンピュータまたは他のプロセッサ上にロードできるように、トランスポート可能とすることができる。本明細書で使用される場合、「非一時的なコンピュータ可読記憶媒体」という用語は、製品(すなわち製造物品)または機械であると見なすことができるコンピュータ可読媒体だけを含む。
「プログラム」または「ソフトウェア」という用語は、上述の本発明の様々な態様を実施するようにコンピュータまたは他のプロセッサをプログラムするために利用できる、任意のタイプのコンピュータコードまたは1組のコンピュータ実行可能命令を指すために、本明細書では総称的な意味で使用される。加えて、この実施形態の一態様によれば、実行された場合に本発明の方法を実行する1つまたは複数のコンピュータプログラムは、単一のコンピュータまたはプロセッサ上に存在する必要はなく、本発明の様々な態様を実施するために、モジュール化して多くの異なるコンピュータまたはプロセッサ間に分散させることができることを理解されたい。
コンピュータ実行可能命令は、1つまたは複数のコンピュータまたは他のデバイスによって実行されるプログラムモジュールなど、多くの形態を取ることができる。一般に、プログラムモジュールは、特定のタスクを実行し、または特定の抽象データタイプを実施する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。一般に、プログラムモジュールの機能は、様々な実施形態において望ましいように、組み合わせること、または分散させることができる。
また、データ構造は、任意の適切な形態のコンピュータ可読媒体内に記憶することができる。説明を簡潔にするために、データ構造は、データ構造内におけるロケーションを通して関係付けられるフィールドを有するように示すことができる。そのような関係は、フィールドのための記憶域にフィールド間の関係を伝えるコンピュータ可読媒体内のロケーションを割り当てることによっても同様に達成することができる。しかし、データ構造のフィールド内の情報間の関係を確立するために、ポインタ、タグ、またはデータ要素間の関係を確立する他のメカニズムを使用することを含む、任意の適切なメカニズムを使用することができる。
本発明の様々な態様は、単独で、組み合わせて、または上述の実施形態では具体的に説明されていない様々な構成で使用することができ、したがって、その応用において、上述の説明で説明された、または図面に示された、コンポーネントの詳細および構成に限定されない。例えば、一実施形態で説明された態様は、他の実施形態で説明された態様といずれかの方法で組み合わせることができる。
また、本発明は、方法として具現することができ、それの一例が提供された。方法の部分として実行される行為は、任意の適切な方法で順序付けることができる。したがって、本明細書で説明される例示的な実施形態では順次的な行為として示されていても、いくつかの行為を同時に実行することを含むことができる、説明されたのとは異なる順序で行為が実行される実施形態を構成することができる。
請求項要素を修飾するために、請求項内で使用される「第1の」、「第2の」、「第3の」などの序数詞は、それ自体では、いかなる優先度、優先権、もしくは1つの請求項要素が別の請求項要素よりも上の序列にあること、または方法の行為が実行される時間的順序を含意せず、ある名前を有する1つの請求項要素を(序数詞を使用しなければ)同じ名前を有する別の要素から区別するためのラベルとしてもっぱら使用されて、請求項要素を区別する。
また、本明細書で使用される表現および用語は、説明を目的としたものであり、限定的なものと見なすべきではない。本明細書における「including」、「comprising」、または「having」、「containing」、「involving」、およびこれらの変形の使用は、その後に列挙される項目およびその均等物、ならびに追加項目を包含することが意図されている。

Claims (10)

  1. ネットワークアプリケーションおよびクライアントデバイスを備えるシステムで使用するための方法であって、
    (A)前記ネットワークアプリケーションと信用関係を有するデバイス状態トークンサービスが、前記クライアントデバイスの特性および/または状態を記述する情報を前記クライアントデバイスから受信する行為と、
    (B)前記情報を処理して前記クライアントデバイスに発行されるデバイスクレームを識別する行為と、
    (C)(B)で識別された前記デバイスクレームを生成する行為と、
    (D)(C)で生成された前記デバイスクレームを前記クライアントデバイスに発行する行為と
    を含むことを特徴とする方法。
  2. 前記デバイス状態トークンサービスは、前記クライアントデバイスとも信用関係を有することを特徴とする請求項1に記載の方法。
  3. (A)に先立って、
    前記デバイス状態トークンサービスが、(A)で提供される前記情報を収集するために前記クライアントデバイスによって使用可能なポリシーおよび/またはスクリプトをクライアントデバイスに提供する行為と、
    前記ポリシーおよび/またはスクリプトを実行することによって生成された結果を受信する行為であって、前記結果は、前記クライアントデバイス上のTPM(トラステッドプラットフォームモジュール)コンポーネントによって生成された情報を備える、行為と
    をさらに含むことを特徴とする請求項1に記載の方法。
  4. クライアントデバイスおよびネットワークアプリケーションを備えるシステムで前記クライアントデバイスによって実行された場合に、
    (A)前記ネットワークアプリケーションへのアクセスを要求する行為と、
    (B)デバイスクレームを発行することについて前記ネットワークアプリケーションから信用を得た1つまたは複数のデバイス状態トークンサービスの表示を受信する行為と、
    (C)デバイスクレームを発行することについて前記クライアントデバイスから信用を得たデバイス状態トークンサービスを、(B)で示された前記1つまたは複数のデバイス状態トークンサービスの中から選択する行為と、
    (D)前記クライアントデバイスの特性および/または状態を記述したデバイスクレームを発行するように求める要求を、(C)で選択された前記デバイス状態トークンサービスに伝達する行為と
    を含む方法を実行する符号化された命令を有することを特徴とする少なくとも1つのコンピュータ可読記憶媒体。
  5. (C)は、前記クライアントデバイスが既存の信用関係を有するデバイス状態トークンサービスを、前記1つまたは複数のデバイス状態トークンサービスの中から選択する行為を含むことを特徴とする請求項4に記載の少なくとも1つのコンピュータ可読記憶媒体。
  6. (C)は、所定の基準を満たすデバイス状態トークンサービスを、前記1つまたは複数のデバイス状態トークンサービスの中から選択する行為を含むことを特徴とする請求項4に記載の少なくとも1つのコンピュータ可読記憶媒体。
  7. (D)の後に、発行されたデバイスクレームを受信する行為と、前記ネットワークアプリケーションへのアクセスを求める要求に関連して、前記発行されたデバイスクレームを利用する行為と
    をさらに含むことを特徴とする請求項4に記載の少なくとも1つのコンピュータ可読記憶媒体。
  8. (A)クライアントデバイスから1つまたは複数のデバイスクレームを受信し、
    (B)前記1つまたは複数のデバイスクレームが有効で真正であることを判定し、
    (C)(B)で前記1つまたは複数のデバイスクレームが有効で真正であると判定された場合、前記1つまたは複数のデバイスクレームを評価して、ネットワークアプリケーションへのアクセスを前記クライアントデバイスに許可すべきかどうかを判定し、
    (D)(C)でアクセスを許可すべきであると判定された場合、前記クライアントデバイスに前記ネットワークアプリケーションへのアクセスを許可する
    ようにプログラムされた少なくとも1つのプロセッサを備えることを特徴とするシステム。
  9. (A)〜(D)の少なくとも一部は、前記ネットワークアプリケーションによって実行されることを特徴とする請求項8に記載のシステム。
  10. アクセスを許可すべきではないと判定された場合、アクセスが許可されるために取るべき措置を前記クライアントデバイスに教える行為をさらに含み、前記教える行為は、(D)でアクセスを許可すべきではないと判定される原因となった前記デバイスクレーム内の不備の是正に関する情報を前記クライアントデバイスに提供する行為を含むことを特徴とする請求項8に記載のシステム。
JP2013531624A 2010-09-30 2011-09-14 サービスとして信用できるデバイスクレーム Active JP5916737B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US38843310P 2010-09-30 2010-09-30
US61/388,433 2010-09-30
US13/015,180 US9111079B2 (en) 2010-09-30 2011-01-27 Trustworthy device claims as a service
US13/015,180 2011-01-27
PCT/US2011/051655 WO2012050717A1 (en) 2010-09-30 2011-09-14 Trustworthy device claims as a service

Publications (3)

Publication Number Publication Date
JP2013541099A true JP2013541099A (ja) 2013-11-07
JP2013541099A5 JP2013541099A5 (ja) 2014-10-09
JP5916737B2 JP5916737B2 (ja) 2016-05-11

Family

ID=45890974

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013531624A Active JP5916737B2 (ja) 2010-09-30 2011-09-14 サービスとして信用できるデバイスクレーム

Country Status (6)

Country Link
US (1) US9111079B2 (ja)
EP (1) EP2622534B1 (ja)
JP (1) JP5916737B2 (ja)
KR (1) KR101832535B1 (ja)
CA (1) CA2812534A1 (ja)
WO (1) WO2012050717A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2874489A1 (en) 2012-05-09 2013-11-14 SunStone Information Defense Inc. Methods and apparatus for identifying and removing malicious applications
CN103117999A (zh) * 2012-11-29 2013-05-22 无锡华御信息技术有限公司 基于云架构的安全计算机系统及方法
CN105991595B (zh) * 2015-02-15 2020-08-07 华为技术有限公司 网络安全防护方法及装置
US10803175B2 (en) * 2015-03-06 2020-10-13 Microsoft Technology Licensing, Llc Device attestation through security hardened management agent
CN104767750A (zh) * 2015-04-01 2015-07-08 青岛大学 一种基于云架构的安全计算机系统
US10523646B2 (en) 2015-08-24 2019-12-31 Virtru Corporation Methods and systems for distributing encrypted cryptographic data
US10218697B2 (en) * 2017-06-09 2019-02-26 Lookout, Inc. Use of device risk evaluation to manage access to services
US11531777B2 (en) * 2019-01-30 2022-12-20 Virtru Corporation Methods and systems for restricting data access based on properties of at least one of a process and a machine executing the process
CN112069490B (zh) * 2020-08-27 2023-08-15 北京百度网讯科技有限公司 一种提供小程序能力的方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070143629A1 (en) * 2004-11-29 2007-06-21 Hardjono Thomas P Method to verify the integrity of components on a trusted platform using integrity database services
US20080244724A1 (en) * 2007-03-26 2008-10-02 Microsoft Corporation Consumer computer health validation
JP2009518762A (ja) * 2005-12-09 2009-05-07 シグナサート, インコーポレイテッド インテグリティデータベースサービスを用いた、トラステッドプラットフォーム上のコンポーンテントのインテグリティの検証方法
JP2009123154A (ja) * 2007-11-19 2009-06-04 Hitachi Ltd 属性証明書管理方法及び装置
JP2009230354A (ja) * 2008-03-21 2009-10-08 Nippon Telegr & Teleph Corp <Ntt> サービス管理方法及びサービス管理システム
WO2010062491A2 (en) * 2008-11-03 2010-06-03 Microsoft Corporation Authentication in a network using client health enforcement framework

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL1018494C2 (nl) 2001-07-09 2003-01-10 Koninkl Kpn Nv Methode en systeem voor het door een dienstproces aan een client leveren van een dienst.
US7076797B2 (en) 2001-10-05 2006-07-11 Microsoft Corporation Granular authorization for network user sessions
US8910241B2 (en) 2002-04-25 2014-12-09 Citrix Systems, Inc. Computer security system
US7591017B2 (en) * 2003-06-24 2009-09-15 Nokia Inc. Apparatus, and method for implementing remote client integrity verification
US7698549B2 (en) * 2003-08-15 2010-04-13 Venafi, Inc. Program product for unified certificate requests from certificate authorities
US20050138417A1 (en) * 2003-12-19 2005-06-23 Mcnerney Shaun C. Trusted network access control system and method
US7747862B2 (en) 2004-06-28 2010-06-29 Intel Corporation Method and apparatus to authenticate base and subscriber stations and secure sessions for broadband wireless networks
US20110179477A1 (en) * 2005-12-09 2011-07-21 Harris Corporation System including property-based weighted trust score application tokens for access control and related methods
US7870399B2 (en) * 2006-02-10 2011-01-11 Arxan Defense Systems Software trusted platform module and application security wrapper
KR101109791B1 (ko) * 2007-01-26 2012-03-15 인터디지탈 테크날러지 코포레이션 위치 정보를 보안유지하고 위치 정보를 이용하여 액세스를 제어하기 위한 방법 및 장치
EP1990750A1 (en) 2007-05-09 2008-11-12 Nokia Siemens Networks Oy Method and device for data processing and communication system comprising such device
CN100566251C (zh) 2007-08-01 2009-12-02 西安西电捷通无线网络通信有限公司 一种增强安全性的可信网络连接方法
CN100559763C (zh) 2007-08-28 2009-11-11 中国科学院软件研究所 一种远程网络服务的完整性检验方法
CN100553212C (zh) * 2007-11-16 2009-10-21 西安西电捷通无线网络通信有限公司 一种基于三元对等鉴别的可信网络接入控制系统
US20100043066A1 (en) * 2008-05-21 2010-02-18 Miliefsky Gary S Multiple security layers for time-based network admission control
US8074258B2 (en) * 2008-06-18 2011-12-06 Microsoft Corporation Obtaining digital identities or tokens through independent endpoint resolution
US10116580B2 (en) 2008-06-27 2018-10-30 Microsoft Technology Licensing, Llc Seamless location aware network connectivity
US8954897B2 (en) 2008-08-28 2015-02-10 Microsoft Corporation Protecting a virtual guest machine from attacks by an infected host
US9495538B2 (en) * 2008-09-25 2016-11-15 Symantec Corporation Graduated enforcement of restrictions according to an application's reputation
EP2526504A1 (en) * 2010-01-22 2012-11-28 InterDigital Patent Holdings, Inc. Method and apparatus for trusted federated identity management and data access authorization
US8832811B2 (en) * 2010-08-27 2014-09-09 Red Hat, Inc. Network access control for trusted platforms

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070143629A1 (en) * 2004-11-29 2007-06-21 Hardjono Thomas P Method to verify the integrity of components on a trusted platform using integrity database services
JP2009518762A (ja) * 2005-12-09 2009-05-07 シグナサート, インコーポレイテッド インテグリティデータベースサービスを用いた、トラステッドプラットフォーム上のコンポーンテントのインテグリティの検証方法
US20080244724A1 (en) * 2007-03-26 2008-10-02 Microsoft Corporation Consumer computer health validation
JP2009123154A (ja) * 2007-11-19 2009-06-04 Hitachi Ltd 属性証明書管理方法及び装置
JP2009230354A (ja) * 2008-03-21 2009-10-08 Nippon Telegr & Teleph Corp <Ntt> サービス管理方法及びサービス管理システム
WO2010062491A2 (en) * 2008-11-03 2010-06-03 Microsoft Corporation Authentication in a network using client health enforcement framework
JP2012507972A (ja) * 2008-11-03 2012-03-29 マイクロソフト コーポレーション クライアント健全性エンフォースメントフレームワークを用いたネットワークにおける認証

Also Published As

Publication number Publication date
US20120084851A1 (en) 2012-04-05
EP2622534A1 (en) 2013-08-07
KR20130114651A (ko) 2013-10-18
JP5916737B2 (ja) 2016-05-11
KR101832535B1 (ko) 2018-02-26
CA2812534A1 (en) 2012-04-19
WO2012050717A1 (en) 2012-04-19
EP2622534B1 (en) 2020-02-26
EP2622534A4 (en) 2017-06-21
US9111079B2 (en) 2015-08-18

Similar Documents

Publication Publication Date Title
JP5916737B2 (ja) サービスとして信用できるデバイスクレーム
US10735472B2 (en) Container authorization policies for network trust
US11301575B2 (en) Secure data synchronization
US8528069B2 (en) Trustworthy device claims for enterprise applications
KR102110273B1 (ko) 체인 보안 시스템들
KR102459199B1 (ko) 멀티-테넌트 컴퓨팅 시스템의 보안 및 허가 아키텍처
US8918856B2 (en) Trusted intermediary for network layer claims-enabled access control
US9064109B2 (en) Privacy enhanced key management for a web service provider using a converged security engine
US11240109B2 (en) Systems and methods for workspace continuity and remediation
US20130111558A1 (en) Secure machine enrollment in multi-tenant subscription environment
JP2017516179A (ja) デジタル証明書を用いた仮想マシンイメージの認証
US20110321130A1 (en) Network layer claims based access control
CN107528830B (zh) 账号登陆方法、系统及存储介质
US20130086388A1 (en) Credentials management
TWI793667B (zh) 基於組態漂移創建及處置工作空間失陷指標(ioc)
TWI794872B (zh) 資訊處置系統、記憶體儲存裝置及用於操作工作區之方法
US11750590B2 (en) Single sign-on (SSO) user techniques using client side encryption and decryption
Buecker et al. Enterprise Single Sign-On Design Guide Using IBM Security Access Manager for Enterprise Single Sign-On 8.2
US11418488B2 (en) Dynamic variance mechanism for securing enterprise resources using a virtual private network
US11336655B2 (en) Multilevel authorization of workspaces using certificates
US8788681B1 (en) Method and apparatus for autonomously managing a computer resource using a security certificate
CN102404315B (zh) 作为服务的可信设备声明
US20140359702A1 (en) Information processing server system, control method, and program
CN108604279B (zh) 应用批准

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140820

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140820

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150521

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150819

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151118

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160405

R150 Certificate of patent or registration of utility model

Ref document number: 5916737

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250