【手続補正書】
【提出日】平成20年5月28日(2008.5.28)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】  リソースロケーションから受信したコードアセンブリに関する許可交付セットを生成するためのコンピュータ実行方法であって、
前記コンピュータ実行方法は、
コードグループ許可セットにそれぞれが関連する複数のコードグループを定義するセキュリティポリシー指定を受信するステップと、
前記コードアセンブリに関連する証拠を受信するステップと、
前記コードグループとの関係で前記証拠を評価して前記コードグループの２つまたは複数における前記コードアセンブリのメンバシップを判定するステップと、
前記コードアセンブリがメンバであるコードグループにそれぞれが関連する２つまたは複数のコードグループ許可セットをマージすることによって前記許可交付セットを生成するステップと
を含むことを特徴とする方法。
【請求項２】  前記生成するステップが、前記２つまたは複数のコードグループに関連する許可に基づいてコードグループ許可セットを動的に生成するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】  前記生成するステップが、前記コードアセンブリがメンバである前記コードグループに関連するコードグループ許可セットに対して論理集合演算を行って前記許可交付セットを生成するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項４】  前記計算するステップが、前記コードグループの順序値に基づいて前記論理集合演算を行うステップをさらに含むことを特徴とする請求項３に記載の方法。
【請求項５】  前記生成するステップが、前記コードアセンブリがメンバであるコードグループに関連する前記コードグループ許可セットの和集合を計算して前記許可交付セットを生成するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項６】  前記セキュリティポリシー指定が、前記複数のコードグループに関連する少なくとも１つのコードグループ集合をコードグループ階層としてさらに定義し、
前記生成するステップが、前記コードアセンブリがメンバである前記コードグループ集合の個別のコードグループに関連するコードグループ許可セットを選択して、前記許可交付セットを生成するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項７】  前記単一のコードグループに関連する前記コードグループ許可セットが選択されて前記許可交付セットが生成されるべきことを示す、前記単一のコードグループに関連する排他プロパティをさらに含むことを特徴とする請求項６に記載の方法。
【請求項８】  コードグループ階層の中の単一のコードグループより下に存在するコードグループに関連するどのコードグループ許可セットを使用しても前記許可交付セットが生成されないことを示す、前記単一のコードグループに関連する排他プロパティをさらに含むことを特徴とする請求項７に記載の方法。
【請求項９】  前記セキュリティポリシー指定が、前記複数のコードグループに関連するポリシーレベルをさらに定義し、
前記生成するステップが、
前記コードアセンブリがメンバであるコードグループに関連する前記コードグループ許可セットの和集合を計算してポリシーレベル許可セットを生成するステップと、
前記ポリシーレベル許可セットに基づいて前記許可交付セットを生成するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１０】  前記セキュリティポリシー指定が、前記複数のコードグループに関連する少なくとも１つのコードグループ集合及び前記少なくとも１つのコードグループ集合に関連するポリシーレベルをさらに定義し、
前記生成するステップが、
前記コードアセンブリがメンバである前記コードグループ集合の個別のコードグループに関連するコードグループ許可セットを選択してポリシーレベル許可セットを生成するステップと、
前記ポリシーレベル許可セットに基づいて前記許可交付セットを生成するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１１】  前記セキュリティポリシー指定が、前記複数のコードグループにそれぞれが関連する複数のポリシーレベルをさらに定義し、
前記生成するステップが、
各ポリシーレベルに関して、前記コードアセンブリがメンバである前記ポリシーレベルの前記コードグループの中の個別のコードグループに関連するコードグループ許可セットを選択して対応するポリシーレベル許可セットを生成するステップと、
前記対応するポリシーレベル許可セットをマージして前記許可交付セットを生成するステップと
を含むことを特徴とする請求項１に記載の方法。
【請求項１２】  前記マージするステップが、各ポリシーレベルに関連する前記対応するポリシーレベル許可セットの共通集合を計算するステップをさらに含むことを特徴とする請求項１１に記載の方法。
【請求項１３】  前記セキュリティポリシー指定が、複数のコードグループにそれぞれが関連する複数のポリシーレベルをさらに定義し、
前記生成するステップが、
各ポリシーレベルに関して、前記コードアセンブリがメンバである前記ポリシーレベルのコードグループに関連する前記コードグループ許可セットの和集合を計算して対応するポリシーレベル許可セットを生成するステップと、
前記対応するポリシーレベル許可セットをマージして前記許可交付セットを生成するステップと
を含むことを特徴とする請求項１に記載の方法。
【請求項１４】  前記マージするステップが、各ポリシーレベルに関連する前記対応するポリシーレベル許可セットの共通集合を計算するステップを含むことを特徴とする請求項１３に記載の方法。
【請求項１５】  前記セキュリティポリシー指定が、前記複数のコードグループに関連する複数の順序付けされたポリシーレベルをさらに定義して、第１のポリシーレベルが、第２のポリシーレベルより制限的なセキュリティポリシーを定義するようにすることを特徴とする請求項１に記載の方法。
【請求項１６】  前記セキュリティポリシー指定から、前記複数のコードグループの中のコードグループに関するメンバシップ基準を抽出するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１７】  前記評価するステップが、
前記証拠から１つまたは複数の信頼特性を抽出するステップと、
前記メンバシップ基準との関係で前記信頼特性を評価するステップと、
前記１つまたは複数の信頼特性が前記メンバシップ基準を満たす場合、前記コードアセンブリを前記コードグループのメンバとして識別するステップと
を含むことを特徴とする請求項１６に記載の方法。
【請求項１８】  前記セキュリティポリシー指定から、前記複数のコードグループの中の各コードグループに関するコードグループ許可セットを抽出するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１９】  前記セキュリティポリシー指定が、前記複数のコードグループに関連する少なくとも１つのコードグループ階層を記述し、各コードグループ集合が、親コードグループを含むコンピュータ実行方法であって、
前記セキュリティポリシー指定から、前記少なくとも１つのコードグループ集合の中の前記親コードグループの少なくとも１つの子コードグループの定義を抽出するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項２０】  前記評価するステップが、
前記コードアセンブリが、前記親コードグループのメンバであるかどうかを判定するステップと、
前記コードアセンブリが前記親コードグループのメンバである場合、前記コードアセンブリが、前記少なくとも１つの子コードグループのメンバであるかどうかを判定するステップと
を含むことを特徴とする請求項１９に記載の方法。
【請求項２１】  前記コードアセンブリに対して確認を行うステップと、
前記確認を行うステップにおける前記コードアセンブリの確認の失敗を検出するステップと、
前記許可交付セットに基づき、前記確認の失敗にも関わらず、前記コードアセンブリを実行することができるかどうかを判定するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項２２】  前記許可交付セットに基づき、確認プロセスのステップが不必要であると判定するステップと、
前記確認プロセスの前記ステップをバイパスできることを確認モジュールに伝えるステップと、
前記確認モジュールを使用して前記コードアセンブリに対して前記確認プロセスを行うステップと、
前記伝えるステップに応答して前記確認プロセスの前記ステップをバイパスするステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項２３】  コンピュータシステムによって読み取り可能な、リソースロケーションから受信したコードアセンブリに関する許可交付セットを生成するコンピュータプロセスを実行するためのコンピュータプログラムを符号化するコンピュータプログラム記憶媒体であって、
コンピュータが実行する前記コンピュータプロセスが、
コードグループ許可セットにそれぞれが関連する複数のコードグループを定義するセキュリティポリシー指定を受信するステップと、
前記コードアセンブリに関連する証拠を受信するステップと、
前記コードグループとの関係で前記証拠を評価して２つまたは複数のコードグループにおける前記コードアセンブリのメンバシップを判定するステップと、
前記コードアセンブリがメンバであるコードグループにそれぞれが関連する２つまたは複数のコードグループ許可セットをマージすることによって前記許可交付セットを生成するステップと
を含むことを特徴とする媒体。
【請求項２４】  リソースロケーションから受信した、証拠セットに関連するコードアセンブリに関する許可交付セットを生成するためのポリシーマネージャであって、
前記ポリシーマネージャは、
セキュリティポリシー指定の中で指定された定義に従い、コードグループ許可セットにそれぞれが関連する複数のコードグループをそれぞれが有する少なくとも１つのコードグループ集合を生成するコードグループ集合生成器と、
前記証拠セットに基づいて前記少なくとも１つのコードグループ集合の１つまたは複数のコードグループにおける前記コードアセンブリのメンバシップを判定するメンバシップエバリュエータと、
前記コードアセンブリがメンバであると判定されたコードグループにそれぞれが関連する１つまたは複数のコードグループ許可セットに基づいて前記許可交付セットを生成する許可セット生成器と
を含むことを特徴とするポリシーマネージャ。
【請求項２５】  前記セキュリティポリシー指定を読み取り、前記少なくとも１つのコードグループ集合の前記定義を生成するパーサをさらに含むことを特徴とする請求項２４に記載のポリシーマネージャ。
【請求項２６】  前記許可セット生成器が、前記コードアセンブリがメンバである前記コードグループ集合の個別のコードグループのコードグループ許可セットを選択して前記許可交付セットを生成するコードグループ許可セットセレクタをさらに含むことを特徴とする請求項２４に記載のポリシーマネージャ。
【請求項２７】  前記許可セット生成器が、前記コードアセンブリがメンバであるコードグループに関連する前記コードグループ許可セットの論理集合演算を行って前記許可交付セットを生成するコードグループ許可セットマージャをさらに含むことを特徴とする請求項２４に記載のポリシーマネージャ。
【請求項２８】  前記論理集合演算が、各コードグループに関連する順序に基づいて行われることを特徴とする請求項２７に記載のポリシーマネージャ。
【請求項２９】  前記許可セット生成器が、前記コードアセンブリがメンバであるコードグループに関連する前記コードグループ許可セットの和集合を計算して前記許可交付セットを生成するコードグループ許可セットマージャをさらに含むことを特徴とする請求項２４に記載のポリシーマネージャ。
【請求項３０】  前記コードグループ集合生成器が、前記セキュリティポリシー指定の中で指定された、コードグループ集合にそれぞれが関連する複数のポリシーレベルを生成し、
前記許可セット生成器が、
前記１つまたは複数のコードグループ許可セットに基づいて複数のポリシーレベル許可セットを生成するコードグループ許可セット生成器と、
前記コードグループ許可セット生成器から前記複数のポリシーレベル許可セットを受信するように結合され、前記ポリシーレベル許可セットに基づいて前記許可交付セットを生成するポリシーレベル許可セット生成器と
をさらに含むことを特徴とする請求項２４に記載のポリシーマネージャ。
【請求項３１】  前記コードグループ許可セット生成器が、前記コードアセンブリがメンバである前記コードグループ集合の個別のコードグループに関連するコードグループ許可セットを選択して前記ポリシーレベル許可セットを生成するコードグループ許可セットセレクタをさらに含むことを特徴とする請求項３０に記載のポリシーマネージャ。
【請求項３２】  前記コードグループ許可セット生成器が、前記コードアセンブリがメンバであるコードグループに関連する前記コードグループ許可セットの和集合を計算して前記ポリシーレベル許可セットを生成するコードグループ許可セットマージャをさらに含むことを特徴とする請求項３０に記載のポリシーマネージャ。
【請求項３３】  前記ポリシーレベル許可セット生成器が、前記コードグループ許可セット生成器から受信した前記ポリシーレベル許可セットをマージして前記許可交付セットを生成するポリシーレベル許可セットマージャをさらに含むことを特徴とする請求項３０に記載のポリシーマネージャ。
【請求項３４】  前記ポリシーレベル許可セットマージャが、各ポリシーレベルに関連する前記ポリシーレベル許可セットの共通集合を計算することを特徴とする請求項３３に記載のポリシーマネージャ。
【請求項３５】  リソースロケーションから受信した、証拠セットに関連するコードアセンブリに関する許可交付セットを生成するためのコンピュータプロセスをコンピュータシステム上で実行するためのコンピュータプログラムを符号化するコンピュータプログラムであって、
前記コンピュータプログラムが、コンピュータに、
コードグループ許可セットにそれぞれが関連する２つまたは複数のコードグループを有する少なくとも１つのコードグループ集合を定義するセキュリティポリシー指定を受信するステップと、
前記コードグループ集合との関係で前記証拠セットを評価して、前記コードグループ集合の２つまたは複数のコードグループにおける前記コードアセンブリのメンバシップを判定するステップと、
前記コードアセンブリがメンバであるコードグループにそれぞれが関連する２つまたは複数のコードグループ許可セットをマージすることによって前記許可交付セットを生成するステップと
を含む前記コンピュータプロセスを実行させることを特徴とするプログラム。
【請求項３６】  前記生成するステップが、前記コードアセンブリがメンバである前記コードグループ集合のコードグループに関連する前記コードグループ許可セットの和集合を計算して前記許可交付セットを生成するステップを含むことを特徴とする請求項３５に記載のプログラム。
【請求項３７】  前記生成するステップが、前記コードアセンブリがメンバである前記コードグループ集合の個別のコードグループに関連するコードグループ許可セットを選択して前記許可交付セットを生成するステップを含むことを特徴とする請求項３５に記載のプログラム。
【請求項３８】  前記セキュリティポリシー指定が、前記２つまたは複数のコードグループに関連する複数のポリシーレベルをさらに定義し、
前記生成するステップが、
各ポリシーレベルに関して、前記コードアセンブリがメンバであるコードグループに関連する前記コードグループ許可セットの和集合を計算して、対応するポリシーレベル許可セットを生成するステップと、
各ポリシーレベルの前記対応するポリシーレベル許可セットに基づいて前記許可交付セットを生成するステップと
を含むことを特徴とする請求項３５に記載のプログラム。
【請求項３９】  ２つまたは複数のコードグループ許可セットをマージすることによって前記許可交付セットを生成するステップが、各ポリシーレベルに関連する前記対応するポリシーレベル許可セットの共通集合を計算するステップをさらに含むことを特徴とする請求項３８に記載のプログラム。
【請求項４０】  ２つまたは複数のコードグループ許可セットをマージすることによって前記許可交付セットを生成するステップが、前記対応するポリシーレベル許可セットのサブセットの共通集合を計算するステップをさらに含むことを特徴とする請求項３８に記載のプログラム。
【請求項４１】  前記コンピュータプロセスが、前記セキュリティポリシー指定から、前記複数のコードグループの中のコードグループに関するメンバシップ基準を抽出するステップをさらに含むことを特徴とする請求項３５に記載のプログラム。
【請求項４２】  前記評価するステップが、
前記証拠から１つまたは複数の信頼特性を抽出するステップと、
前記メンバシップ基準との関係で前記信頼特性を評価するステップと、
前記信頼特性が前記メンバシップ基準を満たす場合、前記コードアセンブリを前記コードグループのメンバとして識別するステップと
を含むことを特徴とする請求項４１に記載のプログラム。
【請求項４３】  前記コンピュータプロセスが、
前記証拠と関連して前記許可交付セットをキャッシュに入れるステップと、
前記証拠が後に受信されることに応答して、前記証拠を再評価することなしに前記許可交付セットを出力するステップと
をさらに含むことを特徴とする請求項３５に記載のプログラム。
【請求項４４】  リソースロケーションから受信した、証拠に関連するコードアセンブリに関係するセキュリティ管理を提供するコンピュータシステムであって、
前記コンピュータシステムは、
セキュリティポリシー指定によって定義された少なくとも１つのコードグループ集合の中で構成された１つまたは複数のコードグループとの関係で前記証拠を評価して許可交付セットを生成するポリシーマネージャと、
前記許可交付セットを前記コードアセンブリに関連付けるランタイム呼出しスタックと、
前記許可交付セットがオペレーションに関連する許可要件を満たす場合、前記オペレーションを行うように前記コードアセンブリを実行する仮想マシンと
を含むことを特徴とするコンピュータシステム。
【請求項４５】  前記ポリシーマネージャが、前記コードグループ集合との関係で前記証拠を評価して、前記コードグループ集合の１つまたは複数のコードグループにおける前記コードアセンブリのメンバシップを判定するメンバシップエバリュエータをさらに含むことを特徴とする請求項４４に記載のコンピュータシステム。
【請求項４６】  前記ポリシーマネージャが、前記コードアセンブリがメンバであるコードグループにそれぞれが関連する１つまたは複数のコードグループ許可セットに基づいて前記許可交付セットを生成する許可セット生成器をさらに含むことを特徴とする請求項４５に記載のコンピュータシステム。
【請求項４７】  リソースロケーションから受信したコードアセンブリを確認するコンピュータ実行方法であって、
前記コンピュータ実行方法は、
セキュリティポリシーを定義するセキュリティポリシー指定を受信するステップと、
前記コードアセンブリに関連する証拠を受信するステップと、
前記セキュリティポリシーとの関係で前記証拠を評価するステップと、
前記コードアセンブリに対して確認を行うステップと、
確認を行うステップにおける前記コードアセンブリの確認の失敗を検出するステップと、
前記評価するステップに応答して、前記確認の失敗にも関わらず、前記コードアセンブリを実行することができるかどうかを判定するステップと
を含むことを特徴とする方法。
【請求項４８】  前記証拠を受信するステップが、前記コードアセンブリのクラスに関連する証拠を受信するステップをさらに含むことを特徴とする請求項４７に記載の方法。
【請求項４９】  前記証拠を受信するステップが、前記コードアセンブリのモジュールに関連する証拠を受信するステップをさらに含むことを特徴とする請求項４７に記載の方法。
【請求項５０】  前記証拠を受信するステップが、前記コードアセンブリのメソッドに関連する証拠を受信するステップをさらに含むことを特徴とする請求項４７に記載の方法。
【請求項５１】  リソースロケーションから受信したコードアセンブリを確認するコンピュータ実行方法であって、
前記コンピュータ実行方法は、
セキュリティポリシーを定義するセキュリティポリシー指定を受信するステップと、
前記コードアセンブリに関連する証拠を受信するステップと、
前記セキュリティポリシーとの関係で前記証拠を評価するステップと、
前記評価するステップに応答して許可交付セットを生成するステップと、
前記許可交付セットに基づき、確認プロセスのステップが不必要であると判定するステップと、
前記確認プロセスの前記ステップをバイパスできることを確認モジュールに伝えるステップと、
前記確認モジュールを使用して前記コードアセンブリに対して前記確認プロセスを行うステップと、
前記伝えるステップに応答して前記確認プロセスのステップをバイパスするステップと
を含むことを特徴とする方法。
【請求項５２】  前記生成するステップが、前記評価するステップに応答して、前記コードアセンブリのモジュールに関連して前記許可交付セットを生成するステップをさらに含むことを特徴とする請求項５１に記載の方法。
【請求項５３】  前記生成するステップが、前記評価するステップに応答して、前記コードアセンブリのクラスに関連して前記許可交付セットを生成するステップをさらに含むことを特徴とする請求項５１に記載の方法。
【請求項５４】  前記生成するステップが、前記評価するステップに応答して、前記コードアセンブリのメソッドに関連して前記許可交付セットを生成するステップをさらに含むことを特徴とする請求項５１に記載の方法。