JP2008547111A - アクティブ・コンテンツ信頼モデル - Google Patents
アクティブ・コンテンツ信頼モデル Download PDFInfo
- Publication number
- JP2008547111A JP2008547111A JP2008518158A JP2008518158A JP2008547111A JP 2008547111 A JP2008547111 A JP 2008547111A JP 2008518158 A JP2008518158 A JP 2008518158A JP 2008518158 A JP2008518158 A JP 2008518158A JP 2008547111 A JP2008547111 A JP 2008547111A
- Authority
- JP
- Japan
- Prior art keywords
- active content
- content
- computer
- determined
- mode
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 31
- 230000006399 behavior Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000003068 static effect Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000006855 networking Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- CDFKCKUONRRKJD-UHFFFAOYSA-N 1-(3-chlorophenoxy)-3-[2-[[3-(3-chlorophenoxy)-2-hydroxypropyl]amino]ethylamino]propan-2-ol;methanesulfonic acid Chemical compound CS(O)(=O)=O.CS(O)(=O)=O.C=1C=CC(Cl)=CC=1OCC(O)CNCCNCC(O)COC1=CC=CC(Cl)=C1 CDFKCKUONRRKJD-UHFFFAOYSA-N 0.000 description 1
- 244000035744 Hura crepitans Species 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2105—Dual mode as a secondary aspect
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99939—Privileged access
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
ヘルプ・システムにおいてセキュリティを提供するコンピュータに実装された方法は、アクティブ・コンテンツにアクセスするために呼び出しアプリケーションからの呼び出しを受信することを含む。どの実行モードをアクティブ・コンテンツにアクセスするのに用いるかの決定は、あらかじめ設定された基準に基づきなされる。アクティブ・コンテンツは、次にこの決定された実行モードでアクセスされる。
Description
以下の説明は、単に一般的な背景情報を与えるものであり、特許請求の範囲の対象範囲を決定する際の補助として用いられることを意味しない。
コンピューティング環境において、特定のタスクをどのように行うかをユーザに教えるためにヘルプ・システムを有することは普通に見られることである。ヘルプ・システムは、アプリケーションまたはアプリケーション・スイート(バンドルされたアプリケーションおよび関連アプリケーションのグループ)レベルで、あるいはオペレーティング・システム(またはシェル)レベルであることが可能である。一般的には、ヘルプ・システムについては両方のレベルが、ほとんどではないが多くの、組み込みのヘルプ・システムを有するアプリケーションで用いられる。
ヘルプ・コンテンツは、従来、静的なものであり、特定のタスクを完了させる方法に関する、文字で書かれるかまたはグラフィックで示された手順をユーザに提供していた。しかし最近になって、ヘルプ・コンテンツは、静的なテキストからより動的な体験へと移行し始めている。静的なヘルプ・コンテンツから動的なまたはアクティブなヘルプ・コンテンツへの移行では、従来無害なテキストとして見えていたものが、次第にコードを実行させるか、またはユーザの代わりにコードを実行させることを引き起こすことができるようになりつつある。ヘルプ・コンテンツがユーザの代わりに操作を行うことを可能にすることによってユーザを支援するために、ヘルプ・システムにより実行されている操作を監視することによって効率的に操作を実行する目的でおよび/またはユーザに操作の実行方法を教える目的で、ヘルプ型ファイルは次第にアクティブなコンテンツ実行可能コードまたはスクリプトを含むようになっている。このアクティブ・コンテンツ・ファイルは、これらのファイル自体が、また次に実行される他の実行可能なコードを呼び出するなどの方法で制作される可能性がある。アクティブ・ヘルプ・コンテンツの2つの例には、アクティブ・コンテンツ・ウィザード(ACW:Active Content Wizard)およびショートカット(Shortcut)が含まれる。
概してACWは、ある形式または他の形式で、ユーザ・インターフェースと対話し、実質的には直接ユーザ・インターフェースに対してユーザのためにヘルプ・トピックを再生するためのコードを含む。ACWがユーザ・インターフェースと対話している間、このACWは、また、この対話に関してユーザに説明を提供する。再生の間、ACWは、ユーザがユーザ・インターフェースと対話して、ユーザの学習過程において支援する、ファイル名などの特定の情報を入力することを可能とすることができる。ショートカットは、自動的に操作を実行するヘルプ型ファイルである。概して、シェル実行命令(例えば、Windows(登録商標)オペレーティング・システムのStart/Run命令)から実行可能な任意の操作または動作(activity)は、ショートカットを用いて自動的に実行される可能性がある。
現在、ヘルプ・コンテンツが実行可能なコード(アクティブ・コンテンツ)を含むかまたは呼び出すことが可能であると事実は、ユーザのコンピュータおよびデータがこのようなアクティブ・コンテンツにより、故意にまたは故意ではなく危害をこうむる可能性を生み出す。またアクティブ・ヘルプ・コンテンツは、ウェブ・ページおよび他のリモート・ソースを介して利用可能であり、時にはこのウェブ・ページおよび他のリモート・ソースに自動的にアクセスされるので、アクティブ・ヘルプ・コンテンツがユーザのコンピュータおよびデータに危害を加える機会がさらに多く存在することになる。
本説明は、詳細な説明において以下にさらに説明される概念の選択を簡略化した形で紹介するために提供される。本説明は、特許請求の範囲の対象のキーとなる機能または基本的な機能を明確にすることを意図せず、特許請求の範囲の対象範囲を決定する際の補助として用いられることを意図していない。
アクティブ・コンテンツのための信頼モデル(trust model)は、エンド・ユーザが安全で、セキュアな方法でヘルプ・コンテンツをダウンロードおよび/またはインストールして実行することを可能とする。この信頼モデルは、ユーザおよび/または管理者により信頼されているコンテンツのみがコードを呼び出すことを許可される、またはサード・パーティの拡張機能を使用することを許可される、ことを強制することにより、ユーザのデータおよびシステムを保護する。いくつかの実施形態では、これらの決定のベースは、呼び出しアプリケーションおよび表示されるコンテンツ・セットに置かれ、また、アプリケーションを実行する特定のユーザ、および特定のコンピュータおよび/またはユーザに対して設定されたポリシー、にも置かれる。これらのうちの1つが実行に必要とされる権限または信頼を有していない場合、ヘルプ・システムはセーフ・モードをデフォルトとし、このモードでは、コンテンツは静的になりシステムに危害を加えることはできなくなる。
ヘルプ・コンテンツは、静的なテキストからより動的な体験へと移行している。この動的な体験を提供するために、ヘルプ・コンテンツは、時には、コードを実行させることができなければならず、またはユーザの代わりにコードを実行させるようにしなければならない。開示された実施形態は、セキュリティに基づく信頼モデルを提供し、それによりエンドユーザを保護し、信頼されたコンテンツのみがコードの実行を引き起こし、ユーザの代わりに操作を行うことを可能にする。
概して、ヘルプ・システム、および特に以下に説明するセキュリティ・ヘルプ・システムの実施形態に基づく信頼モデルは、しばしば、インターネットおよび/またはローカル・ネットワークであるネットワーク化したパーソナル・コンピュータ(PC)の環境において稼動する。図1を参照して以下に一般的に説明されるコンピューティング環境は、開示された実施形態が実装可能なコンピューティング環境の一例である。しかし、図示の実施形態の別の態様を説明する前に、図1に示されている、適切なコンピューティング環境の例を説明することが有用である可能性がある。
図1は、図示の実施形態の1つまたは複数の態様が実装可能である、適したコンピューティング・システム環境100の例を示す。コンピューティング・システム環境100は、適したコンピューティング環境の単なる一例であり、図示の実施形態の使用または機能の範囲に関してなんらかの制限を示唆することを意味しない。またコンピューティング環境100は、例示のオペレーティング環境100に示されるコンポーネントの任意の1つまたは組合せに関して任意の依存関係または要件を有するとみなすべきでない。
図示の実施形態は、多数の他の汎用または特殊用途のコンピューティング・システム環境または構成で稼動可能である。図示の実施形態で使用するのに適する可能性がある、よく知られたコンピューティング・システム、環境、および/または構成の例は、パーソナル・コンピュータ、サーバ・コンピュータ、ハンドヘルドまたはラップトップ装置、マルチ・プロセッサ・システム、マイクロ・プロセッサ・ベース・システム、セットトップボックス、プログラム可能な家庭電化製品、ネットワークPC、ミニ・コンピュータ、メインフレーム・コンピュータ、電話通信システム、任意の上記のシステムまたは装置等を含む分散コンピューティング環境などを含むが、これに限定されない。
図示の実施形態は、プログラム・モジュールなど、コンピュータにより実行されるコンピュータ実行可能命令の一般的なコンテキストで説明可能である。概して、プログラム・モジュールには、特定のタスクを実行し、または特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造等が含まれる。また図示の実施形態は、分散コンピューティング環境で実行することができ、分散コンピューティング環境では、タスクは、通信ネットワークを通してリンクされるリモートの処理装置により実行される。分散コンピューティング環境では、プログラム・モジュールは、メモリ記憶装置を含む、ローカルおよびリモートのコンピュータ記憶媒体の両方に配置することができる。プログラムおよびモジュールにより実行されるタスクは、以下に図の助けを借りて説明される。当業者は、本明細書で提供される説明および図をプロセッサが実行可能な命令として実装でき、これらの命令は任意の形態のコンピュータ可読媒体上に書き込み可能である。
図1を参照すると、例示のシステムは、コンピュータ110の形態の汎用コンピューティング装置を含む。コンピュータ110のコンポーネントは、処理装置120、システム・メモリ130、およびシステム・メモリを含む様々なシステム・コンポーネントを処理装置に接続するシステム・バス121を含んでよいが、これに限定されない。システム・バス121は、メモリ・バスまたはメモリ・コントローラ、周辺バス、および任意の様々なバスアーキテクチャを用いるローカル・バスを含む、いくつかの種類のうちの任意のバス構造とすることができる。例として、このようなアーキテクチャは、業界標準アーキテクチャ(ISA:Industry Standard Architecture)バス、マイクロ・チャネル・アーキテクチャ(MCA:Micro Channel Architecture)バス、拡張ISA(EISA:Enhanced ISA)バス、ビデオ・エレクトロニクス・スタンダード・アソシエーション(VESA:Video Electronics Standards Association)ローカル・バス、およびMezzanineバスとしても知られている周辺コンポーネント・インターコネクト(PCI:Peripheral Component Interconnect)バスを含むが、これに限定されない。
コンピュータ110は、通常、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ110によりアクセス可能で、揮発性および不揮発性媒体、取り外し可能および固定式媒体の両方を含む任意の利用可能な媒体とすることができる。例として、限定されないが、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を備えることができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラム・モジュール、または他のデータなどの情報を格納するための任意の方法または技術で実装された、揮発性および不揮発性、取り外し可能および固定式媒体の両方を含む。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュ・メモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光ディスク・ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージまたは他の磁気記憶装置、または所望の情報を格納するために使用可能でコンピュータ110によりアクセス可能である任意の他の媒体を含むがこれに限定されない。通信媒体は、通常、コンピュータ可読命令、データ構造、プログラム・モジュール、または他のデータを、搬送波または他の搬送メカニズムなどの変調されたデータ信号に具現化し、および任意の情報伝達媒体を含む。「変調されたデータ信号」という用語は、情報を信号内に符号化するように設定または変更された1つまたは複数の特性を有する信号を意味する。例として、通信媒体は、有線ネットワークまたは直接配線接続などの有線媒体、ならびに音響、RF、赤外線、および他の無線媒体などの無線媒体を含むがこれに限定されない。上記の任意の組合せもまた、コンピュータ可読媒体の範囲の中に含まれるものとする。
システム・メモリ130は、読み出し専用メモリ(ROM)131およびランダム・アクセス・メモリ(RAM)132などの揮発性および/または不揮発性メモリの形態でのコンピュータ記憶媒体を含む。基本入力/出力システム133(BIOS)は、起動中などにコンピュータ110内の要素同士での情報の転送を助ける基本ルーチンを含むが、通常、ROM131に格納される。通常、RAM132は、処理装置120により即座にアクセス可能な、および/または現在操作中の、データおよび/またはプログラム・モジュールを含む。例として、図1は、オペレーティング・システム134、アプリケーション・プログラム135、他のプログラム・モジュール136、およびプログラム・データ137を示すが、これに限定されない。
また、コンピュータ110は、他の取り外し可能/固定式、揮発性/不揮発性のコンピュータ記憶媒体を含んでよい。単なる例として、図1は、固定式不揮発性磁気媒体から読み込み、またはこの媒体に書き込むハードディスク・ドライブ141、取り外し可能な不揮発性磁気ディスク152から読み込み、またはこのディスク152に書き込む磁気ディスク・ドライブ151、およびCD−ROMまたは他の光媒体などの取り外し可能な不揮発性光ディスク156から読み込み、またはこのディスク156に書き込む光ディスク・ドライブ155を示す。例示のオペレーティング環境で使用可能な他の取り外し可能/固定式、揮発性/不揮発性コンピュータ記憶媒体は、磁気テープ・カセット、フラッシュ・メモリ・カード、デジタル多用途ディスク、デジタル・ビデオ・テープ、ソリッドステートRAM、ソリッドステートROM等を含むがこれに限定されない。一般的にはハードディスク・ドライブ141は、インターフェース140などの固定式メモリ・インターフェースを通してシステム・バス121に接続され、一般的には磁気ディスク・ドライブ151および光ディスク・ドライブ155は、インターフェース150などの取り外し可能なメモリ・インターフェースによりシステム・バス121に接続される。
上述し図1に示されたドライブおよびそれらに関連したコンピュータ記憶媒体は、コンピュータ110のコンピュータ可読命令、データ構造、プログラム・モジュールおよび他のデータを格納する。例えば図1では、ハードディスク・ドライブ141は、オペレーティング・システム144、アプリケーション・プログラム145、他のプログラム・モジュール146およびプログラム・データ147を格納するように示されている。これらのコンポーネントは、オペレーティング・システム134、アプリケーション・プログラム135、他のプログラム・モジュール136、およびプログラム・データ137と同じでも異なってもよいことに留意されたい。オペレーティング・システム144、アプリケーション・プログラム145、他のプログラム・モジュール146、およびプログラム・データ147は、少なくともこれらが異なるコピーであることを示すために本明細書では異なる番号を付けている。
ユーザは、キーボード162、マイクロフォン163、およびマウス、トラックボールまたはタッチ・パッドなどのポインティング装置161など、入力装置を通してコンピュータ110に命令および情報を入力できる。他の入力装置(図示せず)として、ジョイスティック、ゲーム・パッド、衛星放送用パラボラ・アンテナ、スキャナ等を含むことができる。しばしばこれらおよび他の入力装置は、システム・バスに接続されるユーザ入力インターフェース160を通して処理装置120に接続されるが、パラレル・ポート、ゲーム・ポートまたはユニバーサル・シリアル・バス(USB)などの他のインターフェースおよびバス構造により接続することができる。モニタ191または他の種類の表示装置も、ビデオインターフェース190などのインターフェースを介してシステム・バス121に接続される。モニタに加え、コンピュータは、出力周辺インターフェース195を通して接続可能な、スピーカ197およびプリンタ196などの他の周辺出力装置も含んでよい。
コンピュータ110は、リモート・コンピュータ180などの1つまたは複数のリモート・コンピュータへの論理接続を用いて、ネットワーク環境で動作する。リモート・コンピュータ180は、パーソナル・コンピュータ、ハンドヘルド装置、サーバ、ルータ、ネットワークPC、ピア装置または他のよく知られたネットワーク・ノードであってよく、一般的には、コンピュータ110に関連して上述した多くのまたはすべての要素を含む。図1で示す論理接続は、ローカル・エリア・ネットワーク(LAN)171および広域ネットワーク(WAN)173を含むが、他のネットワークも含んでよい。このようなネットワーキング環境は、事務所、事業体規模のコンピュータ・ネットワーク、イントラネットおよびインターネットで身近なものである。
LANネットワーキング環境で使用されるとき、コンピュータ110は、ネットワーク・インターフェースまたはアダプタ170を通してLAN171に接続される。WANネットワーキング環境で使用されるとき、一般的には、コンピュータ110は、インターネットなどのWAN173を介して通信を確立するモデム172または他の手段を含む。モデム172は、内蔵または外付けであってよく、ユーザ入力インターフェース160または他の適切なメカニズムを介してシステム・バス121に接続可能である。ネットワーク環境において、コンピュータ110に関連して示されたプログラム・モジュールまたはその一部は、リモート・メモリ記憶装置内に格納することができる。例として、図1は、リモート・アプリケーション・プログラム185をリモート・コンピュータ180上に常駐するものとして示すがこれに限定されない。示されたネットワーク接続は例示であり、コンピュータ間の通信リンクを確立する他の手段が用いられることができることが理解されよう。
次に図2を参照すると、ヘルプ・システムおよび信頼ベース・セキュリティ・モデルが実装または具現化される、コンピュータ・システムまたはコンピューティング環境200がより一般的に示されている。コンピュータ205が図2に示され、このコンピュータ205は、PC、ラップトップ・コンピュータ、ノートブック・コンピュータ、または他のモバイルまたは非モバイル・コンピュータを含む、任意の様々なコンピューティング環境であることができる。しかしコンピュータ205は、任意の特定の種類のコンピューティング環境に制限されない。
コンピュータ205は、アプリケーションまたはオペレーティング・システム(OS)ソフトウェア207(今後「アプリケーション207」または「呼び出しアプリケーション207(calling application)」と呼ぶ)およびヘルプ・システム210をホスト(host)し、実行させ、または他の形でサポートする。必要なときに、アプリケーション207は、ヘルプ・システム210を呼び出してローカル・ヘルプ・コンテンツ215(「ローカル」という用語はコンピュータ205上に配置されていることを示す)にアクセスする。一般的には、ローカル・ヘルプ・コンテンツ215(ならびにリモート・ヘルプ・コンテンツ220および/または235)は、現在ますます増加する量のアクティブ・コンテンツを含むことになる。「アクティブ・コンテンツ」という語は、コードを実行するか、またはコードを実行させることを引き起こすことができるコンテンツを指す。アクティブ・コンテンツの例には、例えば、上述のようにACWおよびショートカットが含まれる。
いくつかの実施形態では、呼び出しアプリケーション207はまた、ヘルプ・システム210を呼び出すかまたはヘルプ・システム210に要求し、それによりインターネット230あるいは他のグローバルなまたはローカルでないコンピュータ・ネットワークを介してコンピュータ205に接続されるサーバ・コンピュータ225によってアクティブ・ヘルプ・コンテンツ220にアクセスすることができる。同様に、呼び出しアプリケーション207は、ヘルプ・システム210を呼び出し、それにより同一のローカル・ネットワーク(例えば同一の組織等の中の)245に接続されるコンピュータ240によってアクティブ・ヘルプ・コンテンツ235にアクセスすることができる。
またコンピュータ205は、アクティブ・ヘルプ・コンテンツへの、すなわちローカルアクティブ・コンテンツ215とリモートアクティブコンテンツ220および235との両方へのアプリケーション207のアクセスを管理するセキュリティ・マネージャ250を具現化するように構成される。セキュリティ・マネージャ250は信頼ベース・セキュリティ・モデル260を使用し、このセキュリティ・モデル260は、どのアプリケーションまたはユーザがアクティブ・コンテンツにアクセスでき、どのアクティブ・コンテンツがアクセスされることができるかを決定するルールのセットと考えることができる。またセキュリティ・マネージャ250は、アクティブ・コンテンツを有するヘルプ・ファイルまたは他のファイルのための2つの実行モードをアクティブ化およびコントロールするが、追加のまたは異なるモードも使用できる。これらの実行モードは、単に例のために、信頼モードおよびセーフ・モードと本明細書では呼ばれる。これらの実行モードは、以下により詳細に説明される。モデル260内に定義されまたはモデル260により要求される基準を用いてこれらの実行モードをコントロールすることに加え、セキュリティ・マネージャ250は、管理ポリシー247にも基づきこれらのセキュリティ・モードをコントロールする。例示のために、これらのポリシーは、ネットワーク245を介してコンピュータ205に接続される管理者のコンピュータ246から提供されるものとして表される。ポリシー247は、特定のユーザ、特定のコンピュータ、特定の呼び出しアプリケーション、または特定のアクティブ・コンテンツに対して実行のどのモードが要求されるかを決定する際に他の基準を無効にできる。
説明したように、ヘルプ・トピックは、ビヘイビア(behavior)、ACW、およびショートカットなどのコードを呼び出すことができる。ヘルプ・システム210が、例えば、ビヘイビアおよびタイル(タイルは、レンダリング等などのいくつかのサービスを提供する、ヘルプ・システムへのプラグインである)を使用して、拡張性がある場合、カスタム・コードも同様に呼び出される可能性がある。例えば、あるビヘイビアは、マシンの状態(ユーザがドメイン上にいるか否か)を明らかにしたり、または対話型(「+」および「−」を有する展開メニュー)であったりする。このビヘイビアはトピックを「アクティブ」にする、しかし、それらのビヘイビアはまた、あるレベルのリスクをユーザのマシンに持ち込むことになる。具体的にはビヘイビアは、ユーザが既にインストールしているコードである。セキュリティ・マネージャ250により実装された信頼モデル260は、コンテンツを保護する(secure)目的を果たす。具体的には、「信頼されていない」コンテンツが、「その他の点ではセキュアなコード」が「その他の点ではセキュアなマシン」上で実行することを引き起こす可能性があり、その結果は、ユーザにとって悲惨なものとなる可能性がある。
ユーザがヘルプ・トピックを要求すると、ヘルプ・システム210は、そのトピックへの、および次に推移的に、潜在的に危険なコード(ビヘイビア、アクティブ・コンテンツ・ウィザード等)へのアクセスを許可するか拒否するかを決定する必要がある。セキュリティ・マネージャ250およびその信頼ベース・セキュリティ・モデル260はそのコントロールを行う。本来、ヘルプ・システムがその時点ではそのトピックを信頼するかを決定しなければならない。以下に、より詳細に説明するように、信頼ベース・セキュリティ・モデル260は、任意の所与の時点での任意の所与のトピックに対する信頼を決定する方法を指定する。信頼モデル260は、信頼されていないか、または明確に信頼されなかったものを実行する結果として起きる悪意ある攻撃からユーザのコンピュータを保護する。信頼された悪意あるコードは、やはり否定的な結果を招く可能性があるが、信頼されていないコードは実行することが防止される。いくつかの「攻撃」は、意図せずに破壊的であるビヘイビアを呼び出すことが起こってしまう親切なヘルプである可能性がある。例示の実施形態では、信頼モデル260は、これに対しても同様に保護する。一般的に、しかし網羅的な一覧としてあげてはいないが、セキュリティ・マネージャ250により実装された信頼ベース・セキュリティ・モデルは、次のような領域を保護する。
・ ヘルプ・システム全体(ヘルプを使用するシナリオにおいて)の全体的な完全性(integrity)。ヘルプ・システムは、ディスク上のファイルまたはレジストリ内のエントリを変更するなどの、システムへの予期しない修正からユーザを防御(protect)する。同様に、ヘルプの使用は、システムの信頼性に影響を与えさせてはならない。
・ ユーザのプライバシー。ヘルプ・システムは、アプリケーションまたはインターネットを介してデータを予期せずに渡すことを助けてはならない。
・ 現在インストールされているヘルプの完全性。これは、上記の「全体的な完全性」の範疇にはいる可能性があるが、ヘルプの使用または新しいヘルプのインストールが、以前に動いていたヘルプを壊してはならないことに特に留意するだけの価値がある。
・ また信頼モデルは、十分な特権(privilege)を持たないユーザがアクティブ・コンテンツを実行することを禁止する。また信頼モデルは、システム管理者により設定されたポリシーを守り、両方の悪意あるコードに抗して、およびアクティブ・コンテンツを実行することを制限された特権を持つユーザから、ヘルプ・システムの完全性(ヘルプ・シナリオにおける)を防御する。
・ ヘルプ・システム全体(ヘルプを使用するシナリオにおいて)の全体的な完全性(integrity)。ヘルプ・システムは、ディスク上のファイルまたはレジストリ内のエントリを変更するなどの、システムへの予期しない修正からユーザを防御(protect)する。同様に、ヘルプの使用は、システムの信頼性に影響を与えさせてはならない。
・ ユーザのプライバシー。ヘルプ・システムは、アプリケーションまたはインターネットを介してデータを予期せずに渡すことを助けてはならない。
・ 現在インストールされているヘルプの完全性。これは、上記の「全体的な完全性」の範疇にはいる可能性があるが、ヘルプの使用または新しいヘルプのインストールが、以前に動いていたヘルプを壊してはならないことに特に留意するだけの価値がある。
・ また信頼モデルは、十分な特権(privilege)を持たないユーザがアクティブ・コンテンツを実行することを禁止する。また信頼モデルは、システム管理者により設定されたポリシーを守り、両方の悪意あるコードに抗して、およびアクティブ・コンテンツを実行することを制限された特権を持つユーザから、ヘルプ・システムの完全性(ヘルプ・シナリオにおける)を防御する。
セキュリティ・マネージャ250およびその信頼モデル260は、エンド・ユーザが安全でセキュアな方法でヘルプ・コンテンツをダウンロードおよび/またはインストールすることを可能にする。それは、ユーザにより信頼されているコンテンツだけが、コードを呼び出すことを許可されるかまたはサード・パーティの拡張機能を使用することを許可されるような方法で、アクティブ・コンテンツへのアクセスを管理する。別の利点は、企業、相手先ブランド製造(OEM)、またはコンテンツを配信する任意の者が自分のヘルプ資料(コンテンツ・セット)を悪意ある攻撃からのスパミング(spamming)およびなりすまし(spoofing)から防御される状態に保つ能力である。以下に説明するように、セキュアなコンテンツに対する要求の1つは、そのコンテンツが電子署名をされることを要求するというものである。また、配信元によりコンテンツが電子署名をされることを要求することにより、悪意あるコンテンツを追求する手掛りができ、データの完全性を検証することが可能となる。
セキュリティ・マネージャ250は、2つの主要なルール、すなわち、ヘルプに特権の上昇を引き起こすことを許さないというルールと、ユーザがそのコンテンツを明示的にまたは暗黙的に信頼していない場合、またはマシンのポリシーがそれを許さない場合にはそのコンテンツに実行を引き起こすことを許さないというルールを実施する。例えば、たとえユーザがコンテンツを信頼する場合でも、企業のドメイン管理者がワークステーションからウェブへのすべてのアクセスを切断する場合、セキュリティ・マネージャは、コードの実行を許可しない。ヘルプを要求するアプリケーションは、チェックされる特権を有し、同一の資格証明書/特権が、任意のリソースにアクセスしたり、またはコードを実行する場合にいつも使われる。これは、ヘルプ・システムが、特権のより低いアプリケーションにより使用されて、より特権がより高いコンテキストでコードを実行するという利用を防ぐ。特権が十分に低い場合、またはポリシーが命令する場合、潜在的に危険なコンテンツは使用不可にされる。
エンド・ユーザは、アプリケーションおよびそのヘルプをインストールし、ヘルプ・コンテンツが署名されている証明書を信頼することにより、明示的にヘルプを信頼できる。さらに、暗黙的な信頼(implicit trust)は、信頼された証明書ストア内に既にインストールされた証明書で署名されているヘルプ・コンテンツをインストールすることにより与えられる。この信頼がないと、ヘルプは、静的なテキストとして機能し、サード・パーティのコードを呼び出さず、またはヘルプ・システムのどの潜在的に安全でないアクティブな機能も利用されることを許可しない。情報のセットとしてのヘルプ・コンテンツは、同一の証明書を持つコンテンツのみがそのコンテンツ・セットの子として存在可能であるため、署名されていることにより防御されることができる。しかし、いくつかの実施形態では、特定の証明書からのコンテンツが以前に信頼されていたとしても、システムは、特に異なるアプリケーションに対して、または他のコンテンツ・セットに対して、任意の新しいコンテンツを受け入れるためにユーザからの明示的な許可を要求することができる。言い換えれば、ユーザが特定の企業またはコンテンツ・プロバイダからの証明書を持つアプリケーション用のコンテンツを受け入れるとしても、それは、ユーザがその同一の企業の別の製品からのコンテンツを自動的に受け入れることを意味しない。例示の実施形態の他の機能は、コンテンツのセットまたはサブセットが別のコンテンツ・セットにプラグインすることを許可するクーポン・ファイルまたはキーの概念を使用している。このキーは、親のコンテンツ・セットの元の所有者によりコントロールされ、指定された組織に与えられる。
電子署名は、オンラインコンテンツが信頼モデルに関与することを検証して許可するために、用いられる。したがって、サーバまたは記憶装置から来るヘルプ・コンテンツは、コード実行を引き起こすことができるか、または高度なアクティブ・ビヘイビアを利用できるかを安全にチェックして決定することができる。
実施形態に方法についてより詳細な説明が次に行われる。セキュリティ・マネージャ250は、いくつかの実施形態では、信頼ベース・セキュリティ・モデル260を用いてこれらの方法を実行するように構成される。図3を参照すると、信頼ベース・セキュリティを実装するために例示の実施形態内でセキュリティ・マネージャ250により用いられる機能を有するヘルプコンテンツ・ファイルまたはファイル群300が示されている。図示のように、この特定の実施形態に依存して、コンテンツ300は、電子署名305、証明書310、およびクーポンまたはキー315のうちのいくつかまたはすべてを含むべきである。すべての実施形態が、信頼されたコンテンツとみなすのにこれら3つのすべてを必要とするわけではないが、これらの機能の3つすべてが用いられる例が説明される。
署名305は、電子ドキュメントまたはファイルのソースを示す任意の所望の電子署名形式とすることができる。例えば、署名305は、電子的に署名しXMLドキュメントを認証する、W3C規格によるXML(Extensible Markup Language)署名とすることができる。他の電子署名形式も同様に使用可能である。電子署名305を付加する場合、電子証明書310も同様に必要とすることができる。電子証明書は、VeriSign,Incなどの民間の証明オーソリティを通じて得ることができ、署名の信頼性を証明する。
電子クーポン(またはキー)315も、ヘルプ・コンテンツ300内に含めることができる。一般的に、電子クーポンは、2つの電子ドキュメントの間の関係をセキュアに識別する方法である。したがって、電子クーポンは、コンテンツのセットまたはサブセットが別のコンテンツ・セットにプラグインすることを許可するいくつかの実施形態で使用される。このクーポンまたはキーは、親のコンテンツ・セットの元の所有者によりコントロールされ、指定された組織に与えられる。
次に図4を参照すると、ヘルプ・システム内のセキュリティを提供する方法の実施形態を示す流れ図400が示されている。セキュリティ・マネージャ250は、信頼ベース・セキュリティ・モデル260を用いて、図4に示されるような方法を実装するように構成可能である。ブロック405に示すように、この方法は、アクティブ・コンテンツにアクセスする呼び出しアプリケーション(すなわち、図2に示されるアプリケーション207)からの呼び出しを受信することを含む。そのアクティブ・コンテンツは、サーバ・コンピュータからダウンロード可能であるコンテンツ(コンテンツ220など)、またはアプリケーション207と同じコンピュータ上のコンテンツとすることができる。呼び出しアプリケーション207からの呼び出しを受信した後、あらかじめ設定された基準(例えば、信頼ベース・セキュリティ・モデル260により定められる)に基づき、どの実行モードがそのアクティブ・コンテンツにアクセスするために使用可能かが(例えば、セキュリティ・マネージャ250によって)決定される。これは図4のブロック410で示されるステップに示される。次にブロック415に示されるように、この方法は、決定された実行モードでアクティブ・コンテンツをアクセスするステップを含む。
上述のように、いくつかの実施形態では、アクティブ・コンテンツにアクセスするために使用可能な実行モードはセーフ・モードおよび信頼モードを含む。信頼モードは通常の実行モードであり、信頼モードでは、コードまたは他のアクティブ・コンテンツの実行または呼び出しは、その呼び出しアプリケーションの特権で許可され、及び起動する。セーフ・モードでは、呼び出しアプリケーションおよびターゲット・アクティブ・コンテンツの一方または両方で信頼を欠いていることを意味し、アクティブ・コンテンツ・ファイルのコンテンツは、可能な範囲で静的にレンダリングまたは表示されるが、アクティブ・コンテンツ内のコードの実行は制限される。例えば、セーフ・モードでは、ACWおよびシェル実行コンテンツの呼び出しを禁止することができる。また、オンライン・ヘルプ・コンテンツへのアクセスの禁止がこのモードでは実施可能である。アクティブ・コンテンツ・ファイルを静的にレンダリングするために、タイトル、状態プローブおよびビヘイビアは、SEE制約(SEE-constrained)の環境でレンダリング可能である。SEE(Secure Execution Environment)という用語は、制限され管理されたアプリケーションに対する特別な権限セットを指す。SEE制約という用語は概して、SEE許可でアセンブリをサンドボックス化する(sandbox)ランタイム環境(おそらくアプリケーション・ドメイン(appdomain))を表す。言い換えれば、ヘルプ・システムは、権限を上げるためのアセンブリによる任意の試みを拒否する。2つの実行モードがこの実施形態例で使用されるが、別の個数の実行モードが他の実施形態で使用可能であることに留意されたい。また、SEEを使用する代わりに、従来のネイティブ・コード・ベースのセキュリティがいくつかのモードに対して使用可能である。
アクティブ・コンテンツにアクセスするために特定の呼び出しに応じて、実行モードをコントロールするあらかじめ設定された基準は、実施形態例において、
(1)呼び出しアプリケーションの信頼状態(信頼された、信頼されていない等)と
(2)要求されたアクティブ・コンテンツが信頼されたソースからであるか
を含む。要求されたアクティブ・コンテンツが信頼されたソースからであるかについての決定は、いくつかの実施形態ではいくつかの基準を含むことが可能である。例えば、1つの基準は、アクティブ・コンテンツが電子的に署名されているか(図3の305)である。電子的に署名されていない場合、信頼されたソースからではないと決定される。アクティブ・コンテンツが電子的に署名されている場合であっても、いくつかの実施形態では信頼されたソースであるためには、アクティブ・コンテンツは有効な証明書(図3の310)を有する必要がある。さらに別の実施形態では、要求されたアクティブ・コンテンツは、信頼されたソースからであるためには有効なクーポンまたはキー(図3の315)を有することがさらに(または代替として)必要である。これは、上述のように、具体的には、コンテンツ(「子のコンテンツ」)を別のコンテンツ(「親のコンテンツ」)にプラグインしようと試みるときに、使われる。
(1)呼び出しアプリケーションの信頼状態(信頼された、信頼されていない等)と
(2)要求されたアクティブ・コンテンツが信頼されたソースからであるか
を含む。要求されたアクティブ・コンテンツが信頼されたソースからであるかについての決定は、いくつかの実施形態ではいくつかの基準を含むことが可能である。例えば、1つの基準は、アクティブ・コンテンツが電子的に署名されているか(図3の305)である。電子的に署名されていない場合、信頼されたソースからではないと決定される。アクティブ・コンテンツが電子的に署名されている場合であっても、いくつかの実施形態では信頼されたソースであるためには、アクティブ・コンテンツは有効な証明書(図3の310)を有する必要がある。さらに別の実施形態では、要求されたアクティブ・コンテンツは、信頼されたソースからであるためには有効なクーポンまたはキー(図3の315)を有することがさらに(または代替として)必要である。これは、上述のように、具体的には、コンテンツ(「子のコンテンツ」)を別のコンテンツ(「親のコンテンツ」)にプラグインしようと試みるときに、使われる。
図5は、アクティブ・コンテンツがどの実行モードでアクセス可能であるかを決定する処理における、上述の異なる基準を示す流れ図500である。判定505で、最初に、呼び出しアプリケーションが信頼されたアプリケーションであるかが決定される。呼び出しアプリケーションのアプリケーション状態(application status)が信頼されていない(506で表される信頼されていない呼び出しアプリケーション状態)場合、アクティブ・コンテンツは、セーフ・モード(510で表される)でアクセスされる。呼び出しアプリケーションの信頼状態が信頼できるものである(507で表される信頼された呼び出しアプリケーション状態)場合、実行モード決定処理は判定515に続き、この判定でアクティブ・コンテンツ(例えば、ヘルプ・ファイル)が署名されているか否かが決定される。署名されていない場合、アクティブ・コンテンツはセーフ・モード510でアクセスされる。アクティブ・コンテンツが署名されている場合、処理は判定520に続き、この判定でコンテンツが有効な証明書を有するかが決定される。さらに、コンテンツが有効な証明書を有さない場合、アクティブ・コンテンツはセーフ・モードでアクセスされる。上述のように、判定515および520は、アクティブ・コンテンツが信頼されたソースからであるかに関する全判定512の一部である。
上述のように他の任意の実施形態では、実行モードを決定するステップまたは処理は、判定525をさらに含むことが可能であり、この判定で、要求されたコンテンツが有効なクーポンを有するかが決定される。有さないと、セーフ・モード510がこの場合も選択された実行モードとなる。これらの基準すべてが満たされる場合、アクティブ・コンテンツは、信頼モードでアクセス可能であり、530で表される。しかし、ポリシー247は、他の判定ステップが異なる結論に至る場合であっても、どのモードが使用されるかを決定付けることができることに留意されたい。
次に図6を参照すると、信頼されたコンテンツと信頼されていないコンテンツの間の遷移を表した図が示されている。アプリケーションが信頼モードで信頼されたアクティブ・コンテンツ605にアクセス中であり、信頼されていないアクティブ・コンテンツ610にアクセスする呼び出しが受信されると、セキュリティ・マネージャ250は、607に示すようにセーフ・モードへと遷移を引き起こす。しかしそれとは対照的に、次に信頼されたアクティブ・コンテンツ615にアクセスする呼び出しが受信される場合、セキュリティ・マネージャ250は、信頼されていないコンテンツ610の特権の上昇を防ぐために612に示すようにセーフ・モードで動作し続ける。
しかし、セキュリティ・マネージャ250が、信頼されたコンテンツ620にアクセス中、信頼モードで動作している場合、他の信頼されたコンテンツ625は、信頼されたモードからセーフ・モードへ遷移することなくアクセス可能である。これは図6の622で表されている。これは、第1の信頼されたコンテンツは特権の上昇を行わないため、信頼モードにとどまってのる間に他の信頼されたコンテンツがアクセス可能であることを示している。
本主題は、構造的な機能および/または方法論的な行為に特有な言葉で説明されてきたが、添付の特許請求の範囲で定義される主題は、上述の具体的な機能または動作(acts)に必ずしも限定されないことを理解されたい。むしろ、上述の具体的な機能および行為は、特許請求の範囲を実装する例示的な形式として開示されている。
Claims (20)
- ヘルプ・システムにおいてセキュリティを提供するコンピュータ実装方法であって、
アクティブ・コンテンツにアクセスする呼び出しアプリケーションから呼び出しを受信するステップ、
あらかじめ設定された基準に基づき、前記アクティブ・コンテンツをアクセス可能な実行モードを決定するステップ、および
前記決定された実行モードで前記アクティブ・コンテンツにアクセスするステップ
を備えることを特徴とするコンピュータ実装方法。 - 前記アクティブ・コンテンツをアクセス可能な前記実行モードを決定するステップは、前記アクティブ・コンテンツに信頼モードでアクセスするか、またはセーフ・モードでアクセスするかを決定するステップをさらに備え、前記信頼モードは、前記アクティブ・コンテンツ内のコードの実行を許可し、前記セーフ・モードは、前記アクティブ・コンテンツのコンテンツを静的にレンダリングするが前記アクティブ・コンテンツ内のコードの実行を制限することを特徴とする請求項1に記載のコンピュータ実装方法。
- 前記あらかじめ設定された基準に基づき、前記アクティブ・コンテンツをアクセス可能な前記実行モードを決定するステップは、前記呼び出しアプリケーションの信頼状態を決定するステップをさらに備え、前記呼び出しアプリケーションは、信頼されたアプリケーション状態および信頼されていないアプリケーション状態のうちの1つを有することができることを特徴とする請求項2に記載のコンピュータ実装方法。
- 前記実行モードは、前記呼び出しアプリケーションが前記信頼されていないアプリケーション状態を有すると決定される場合、前記セーフ・モードであると決定されることを特徴とする請求項3に記載のコンピュータ実装方法。
- 前記あらかじめ設定された基準に基づき、前記アクティブ・コンテンツをアクセス可能な前記実行モードを決定するステップは、前記アクティブ・コンテンツが信頼されたソースからであるかを決定するステップをさらに備え、前記アクティブ・コンテンツをアクセス可能な前記実行モードは、前記アクティブ・コンテンツが信頼されたソースからであると決定されない場合、前記セーフ・モードであると決定されることを特徴とする請求項4に記載のコンピュータ実装方法。
- 前記アクティブ・コンテンツが信頼されたソースからであるかを決定するステップは、前記アクティブ・コンテンツが電子的に署名されているかを決定するステップをさらに備え、前記アクティブ・コンテンツは、電子的に署名されていない場合、信頼されていないソースからであると決定されることを特徴とする請求項5に記載のコンピュータ実装方法。
- 前記アクティブ・コンテンツが電子的に署名されている場合、前記アクティブ・コンテンツが信頼されたソースからであるかを決定するステップは、前記アクティブ・コンテンツが有効な証明書を有するかを決定するステップをさらに備え、前記アクティブ・コンテンツは、有効な証明書を有さない場合、信頼されていないソースからであると決定されることを特徴とする請求項6に記載のコンピュータ実装方法。
- 前記あらかじめ設定された基準に基づき、前記アクティブ・コンテンツをアクセス可能な前記実行モードを決定するステップは、前記アクティブ・コンテンツが有効なクーポンを有するかを決定するステップをさらに備え、前記実行モードは、前記アクティブ・コンテンツが有効なクーポンを有さないと決定される場合、前記セーフ・モードであると決定されることを特徴とする請求項2に記載のコンピュータ実装方法。
- 前記あらかじめ設定された基準に基づき、前記アクティブ・コンテンツをアクセス可能な前記実行モードを決定するステップは、前記呼び出しアプリケーションが常駐するコンピュータの操作を管理する管理ポリシーに基づき、前記アクティブ・コンテンツをアクセス可能な前記実行モードを決定するステップをさらに備えることを特徴とする請求項2に記載のコンピュータ実装方法。
- 前記各ステップは、信頼モデルを用いて実装され、前記信頼モデルは、前記管理ポリシーが変更される場合、前記信頼モデルが、前記アクティブ・コンテンツの実行を実施するために前記変更されたポリシーを使用するように、本質的に動的であることを特徴とする請求項9に記載のコンピュータ実装方法。
- 請求項1の前記各ステップを実装するコンピュータ実行可能命令をその上に格納していることを特徴とするコンピュータ可読媒体。
- コンピュータのユーザに対してヘルプを提供するシステムであって、
アクティブ・コンテンツにアクセスする呼び出しアプリケーションから呼び出しを受信するヘルプ・システム、および
信頼ベース・セキュリティ・モデルを用いて、前記アクティブ・コンテンツをアクセス可能な実行モードを決定するセキュリティ・マネージャ
を備えることを特徴とするシステム。 - 前記セキュリティ・マネージャは、あらかじめ設定された基準に基づき、前記アクティブ・コンテンツをアクセス可能な前記実行モードを決定することを特徴とする請求項12に記載のシステム。
- 前記セキュリティ・マネージャは、前記アクティブ・コンテンツを信頼モードでアクセスするか、またはセーフ・モードでアクセスするかを決定するように構成され、前記信頼モードは、前記アクティブ・コンテンツ内のコードの実行を許可し、前記セーフ・モードは、前記アクティブ・コンテンツのコンテンツを静的にレンダリングするが前記アクティブ・コンテンツ内のコードの実行を制限することを特徴とする請求項13に記載のシステム。
- 前記あらかじめ設定された基準は、前記呼び出しアプリケーションの信頼状態を含み、前記呼び出しアプリケーションは、信頼されたアプリケーション状態および信頼されていないアプリケーション状態のうちの1つを有することができ、前記セキュリティ・マネージャは、前記呼び出しアプリケーションの前記信頼状態を決定するようにさらに構成されることを特徴とする請求項14に記載のシステム。
- 前記セキュリティ・マネージャは、前記呼び出しアプリケーションが前記信頼されていないアプリケーション状態を有すると決定される場合、前記実行モードが前記セーフ・モードであると決定するように構成されることを特徴とする請求項15に記載のシステム。
- 前記あらかじめ設定された基準は、前記アクティブ・コンテンツのソースの信頼状態を含み、前記セキュリティ・マネージャは、前記アクティブ・コンテンツの前記ソースの前記信頼状態を決定するようにさらに構成され、前記アクティブ・コンテンツをアクセス可能な前記実行モードは、前記アクティブ・コンテンツが信頼されたソースからであると決定されない場合、前記セーフ・モードであると決定されることを特徴とする請求項14に記載のシステム。
- 前記アクティブ・コンテンツの前記ソースの前記信頼状態を決定するように構成される前記セキュリティ・マネージャは、さらに前記アクティブ・コンテンツが電子的に署名されているかを決定し、前記アクティブ・コンテンツが電子的に署名されていない場合、前記アクティブ・コンテンツは信頼されていないソースからである、と決定するように構成されることを特徴とする請求項17に記載のシステム。
- 前記アクティブ・コンテンツが電子的に署名されている場合、前記セキュリティ・マネージャは、前記アクティブ・コンテンツが有効な証明書を有するかを決定することにより前記アクティブ・コンテンツが信頼されたソースからであるかを決定するように構成され、前記アクティブ・コンテンツが有効な証明書を有しない場合、前記アクティブ・コンテンツは信頼されていないソースからであると決定されることを特徴とする請求項18に記載のシステム。
- 前記あらかじめ設定された基準は、前記アクティブ・コンテンツが有効なクーポンを有するかをさらに含み、前記実行モードは、前記アクティブ・コンテンツが有効なクーポンを有しないと決定される場合、前記セーフ・モードであると決定されることを特徴とする請求項19に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/167,448 US7624111B2 (en) | 2005-06-27 | 2005-06-27 | Active content trust model |
PCT/US2006/017583 WO2007001635A2 (en) | 2005-06-27 | 2006-05-08 | Active content trust model |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008547111A true JP2008547111A (ja) | 2008-12-25 |
Family
ID=37568827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008518158A Pending JP2008547111A (ja) | 2005-06-27 | 2006-05-08 | アクティブ・コンテンツ信頼モデル |
Country Status (9)
Country | Link |
---|---|
US (1) | US7624111B2 (ja) |
EP (1) | EP1896999A2 (ja) |
JP (1) | JP2008547111A (ja) |
KR (1) | KR20080021694A (ja) |
CN (1) | CN101535985A (ja) |
BR (1) | BRPI0611606A2 (ja) |
MX (1) | MX2007015442A (ja) |
RU (1) | RU2007147899A (ja) |
WO (1) | WO2007001635A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015509252A (ja) * | 2012-02-03 | 2015-03-26 | アップル インコーポレイテッド | 集中型の操作管理 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9519621B2 (en) * | 2006-06-30 | 2016-12-13 | Adobe Systems Incorporated | Deterministic rendering of active content |
US9338185B2 (en) | 2009-01-30 | 2016-05-10 | British Telecommunications Public Limited Company | Service provision |
US8296568B2 (en) * | 2009-10-27 | 2012-10-23 | Google Inc. | Systems and methods for authenticating an electronic transaction |
US8364959B2 (en) | 2010-05-26 | 2013-01-29 | Google Inc. | Systems and methods for using a domain-specific security sandbox to facilitate secure transactions |
US9147085B2 (en) | 2010-09-24 | 2015-09-29 | Blackberry Limited | Method for establishing a plurality of modes of operation on a mobile device |
US10496824B2 (en) * | 2011-06-24 | 2019-12-03 | Microsoft Licensing Technology, LLC | Trusted language runtime on a mobile platform |
US20130039266A1 (en) | 2011-08-08 | 2013-02-14 | Research In Motion Limited | System and method to increase link adaptation performance with multi-level feedback |
US10445528B2 (en) | 2011-09-07 | 2019-10-15 | Microsoft Technology Licensing, Llc | Content handling for applications |
US20130159851A1 (en) * | 2011-12-20 | 2013-06-20 | Bewo Technologies Pvt.Ltd | Method and system for providing help content to users |
CN103117992A (zh) * | 2012-09-10 | 2013-05-22 | 微软公司 | 应用的内容处理 |
US9111107B2 (en) | 2014-01-17 | 2015-08-18 | Sony Corporation | Computer ecosystem providing a process for determining trust in content sharing |
CN104063653B (zh) * | 2014-05-30 | 2017-09-12 | 小米科技有限责任公司 | 验证界面显示方法及装置 |
US10810297B2 (en) | 2017-05-02 | 2020-10-20 | Dell Products L.P. | Information handling system multi-touch security system |
US10586029B2 (en) | 2017-05-02 | 2020-03-10 | Dell Products L.P. | Information handling system multi-security system management |
US11074323B2 (en) * | 2017-12-07 | 2021-07-27 | Microsoft Technology Licensing, Llc | Method and system for persisting files |
US10885193B2 (en) * | 2017-12-07 | 2021-01-05 | Microsoft Technology Licensing, Llc | Method and system for persisting untrusted files |
GB2576923B (en) * | 2018-09-06 | 2020-09-02 | Arm Ip Ltd | A method of processing transactions from an untrusted source |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09231068A (ja) * | 1995-10-26 | 1997-09-05 | Sun Microsyst Inc | 動的にリンクされた実行可能モジュールの使用を保護するシステム及び方法 |
JP2001109710A (ja) * | 1999-10-06 | 2001-04-20 | Nec Corp | 携帯端末システム、これに用いる携帯端末、制御方法、媒体 |
JP2003006027A (ja) * | 2001-06-21 | 2003-01-10 | Hitachi Ltd | アクセス制御ポリシーの自動設定方法およびそのシステム |
JP2004118433A (ja) * | 2002-09-25 | 2004-04-15 | Nec Corp | 外部プログラムの動作制御方法、動作制御プログラム、動作制御装置、及び、動作制御プログラム提供装置 |
JP2004213181A (ja) * | 2002-12-27 | 2004-07-29 | Ricoh Co Ltd | カプセル化文書構造、記憶媒体、情報処理装置、カプセル化文書作成編集装置及び起動プログラム |
WO2004072787A2 (en) * | 2003-02-07 | 2004-08-26 | Broadon Communications Corp. | Secure and backward-compatible processor and secure software execution thereon |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5983348A (en) * | 1997-09-10 | 1999-11-09 | Trend Micro Incorporated | Computer network malicious code scanner |
US6145096A (en) * | 1998-05-06 | 2000-11-07 | Motive Communications, Inc. | Method, system and computer program product for iterative distributed problem solving |
US7580988B2 (en) * | 2001-04-05 | 2009-08-25 | Intertrust Technologies Corporation | System and methods for managing the distribution of electronic content |
US7467206B2 (en) * | 2002-12-23 | 2008-12-16 | Microsoft Corporation | Reputation system for web services |
-
2005
- 2005-06-27 US US11/167,448 patent/US7624111B2/en not_active Expired - Fee Related
-
2006
- 2006-05-08 MX MX2007015442A patent/MX2007015442A/es not_active Application Discontinuation
- 2006-05-08 EP EP06770058A patent/EP1896999A2/en not_active Withdrawn
- 2006-05-08 RU RU2007147899/09A patent/RU2007147899A/ru not_active Application Discontinuation
- 2006-05-08 KR KR1020077030217A patent/KR20080021694A/ko not_active Application Discontinuation
- 2006-05-08 BR BRPI0611606-0A patent/BRPI0611606A2/pt not_active IP Right Cessation
- 2006-05-08 CN CNA2006800194689A patent/CN101535985A/zh active Pending
- 2006-05-08 WO PCT/US2006/017583 patent/WO2007001635A2/en active Application Filing
- 2006-05-08 JP JP2008518158A patent/JP2008547111A/ja active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09231068A (ja) * | 1995-10-26 | 1997-09-05 | Sun Microsyst Inc | 動的にリンクされた実行可能モジュールの使用を保護するシステム及び方法 |
JP2001109710A (ja) * | 1999-10-06 | 2001-04-20 | Nec Corp | 携帯端末システム、これに用いる携帯端末、制御方法、媒体 |
JP2003006027A (ja) * | 2001-06-21 | 2003-01-10 | Hitachi Ltd | アクセス制御ポリシーの自動設定方法およびそのシステム |
JP2004118433A (ja) * | 2002-09-25 | 2004-04-15 | Nec Corp | 外部プログラムの動作制御方法、動作制御プログラム、動作制御装置、及び、動作制御プログラム提供装置 |
JP2004213181A (ja) * | 2002-12-27 | 2004-07-29 | Ricoh Co Ltd | カプセル化文書構造、記憶媒体、情報処理装置、カプセル化文書作成編集装置及び起動プログラム |
WO2004072787A2 (en) * | 2003-02-07 | 2004-08-26 | Broadon Communications Corp. | Secure and backward-compatible processor and secure software execution thereon |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015509252A (ja) * | 2012-02-03 | 2015-03-26 | アップル インコーポレイテッド | 集中型の操作管理 |
US10122759B2 (en) | 2012-02-03 | 2018-11-06 | Apple Inc. | Centralized operation management |
Also Published As
Publication number | Publication date |
---|---|
WO2007001635A2 (en) | 2007-01-04 |
CN101535985A (zh) | 2009-09-16 |
WO2007001635A3 (en) | 2009-04-16 |
BRPI0611606A2 (pt) | 2010-09-21 |
KR20080021694A (ko) | 2008-03-07 |
US20060294102A1 (en) | 2006-12-28 |
MX2007015442A (es) | 2008-02-25 |
US7624111B2 (en) | 2009-11-24 |
RU2007147899A (ru) | 2009-06-27 |
EP1896999A2 (en) | 2008-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7624111B2 (en) | Active content trust model | |
US7516477B2 (en) | Method and system for ensuring that computer programs are trustworthy | |
US8646044B2 (en) | Mandatory integrity control | |
US8161563B2 (en) | Running internet applications with low rights | |
KR101278786B1 (ko) | 클라이언트에 포함된 샌드박스형 코드에 의한 자원으로의액세스를 관리하기 위한, 컴퓨터 구현 방법, 시스템, 및이들을 구현하는 명령어가 저장된 컴퓨터 판독가능 매체 | |
US8181219B2 (en) | Access authorization having embedded policies | |
US8321949B1 (en) | Managing software run in a computing system | |
US20070005961A1 (en) | Providing user on computer operating system with full privileges token and limited privileges token | |
JP2005129066A (ja) | オペレーティングシステムリソース保護 | |
KR20010040979A (ko) | 스택에 기초한 액세스 제어 | |
Burns | Developing secure mobile applications for android | |
US20070162909A1 (en) | Reserving resources in an operating system | |
US7647629B2 (en) | Hosted code runtime protection | |
US20070294530A1 (en) | Verification System and Method for Accessing Resources in a Computing Environment | |
JP2006107505A (ja) | アクセス認可のapi | |
US20050210448A1 (en) | Architecture that restricts permissions granted to a build process | |
Gritzalis et al. | Security issues surrounding programming languages for mobile code: Java vs. Safe-Tcl | |
US20230198997A1 (en) | Access control systems and methods | |
Gritzalis et al. | Addressing security issues in programming languages for mobile code | |
Holford et al. | The concept of self-defending objects in the development of security aware applications | |
Brodschelm et al. | Application Sandboxing for Linux Desktops: A User-friendly Approach. | |
Jing et al. | TRIPLEMON: A multi-layer security framework for mediating inter-process communication on Android | |
Sze et al. | Comprehensive integrity protection for desktop linux | |
Gosselin et al. | Confining the apache web server with security-enhanced linux | |
Murison | .NET Framework Security |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090409 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110906 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120210 |