JP2017510013A - ジャスト・イン・タイムでプロビジョニングされるアカウントによってネットワーク・セキュリティを設ける技法 - Google Patents

ジャスト・イン・タイムでプロビジョニングされるアカウントによってネットワーク・セキュリティを設ける技法 Download PDF

Info

Publication number
JP2017510013A
JP2017510013A JP2017501088A JP2017501088A JP2017510013A JP 2017510013 A JP2017510013 A JP 2017510013A JP 2017501088 A JP2017501088 A JP 2017501088A JP 2017501088 A JP2017501088 A JP 2017501088A JP 2017510013 A JP2017510013 A JP 2017510013A
Authority
JP
Japan
Prior art keywords
account
client
jit
access
violation
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
Application number
JP2017501088A
Other languages
English (en)
Other versions
JP2017510013A5 (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 JP2017510013A publication Critical patent/JP2017510013A/ja
Publication of JP2017510013A5 publication Critical patent/JP2017510013A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • 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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection

Abstract

ジャスト・イン・タイム(JIT)でプロビジョニングされたアカウントによる攻撃者の横方向移動を抑える技法であって、第1アカウントから、クライアント・デバイスを介して、1組のサーバー・デバイスにおけるサーバー・デバイスにアクセスするための第2アカウントを求める要求を受けるアカウント管理コンポーネントと、少なくとも部分的に第1アカウントに関連付けられたアカウント情報に基づいて、第2アカウントを求める要求を許可するアカウント許可コンポーネントと、クライアントがサーバー・デバイスにアクセスすることを可能にするために、第2アカウントをプロビジョニングするアカウント・プロビジョニング・コンポーネントと、第2アカウントに関連付けられたアカウント情報を、クライアント・デバイスを介してクライアントに提供するアカウント通知コンポーネントとを含む。他の実施形態についても記載し、特許請求する。【選択図】図1

Description

[0001] 今日、サービスとしてのソフトウェア(SaaS)システムを設計するために利用可能な種々の方法が速いペースで開発されるため、多数のユーザー(例えば、検査技師、設計者、請負人、内部顧客、および/または外部顧客)が、これらのサービスを日毎に検査、アップグレード、デバッグ、開発、展開、および/または維持するために、SaaSシステムの1つ以上のサービスをホストするサーバーにアクセスすることが必要となると考えられる。多数のユーザーがサーバーへのアクセスを要求するため、各ユーザーにはこれらのサーバーにアクセスするために1つ以上のユーザー・アカウントが付与される場合がある。しかしながら、ユーザー・アカウントの数が増えるに連れて、それに伴うセキュリティ・リスクも増大する。これは、追加のユーザー・アカウント毎に、潜在的なエントリ・ポイントを攻撃者に露出するおそれがあり、その結果攻撃者が不正アクセスを取得するための攻撃表面またはベクトルが増大するからである。これら潜在的なエントリ・ポイントは、あるユーザー・アカウントが、彼らの日々のタスクを実行するために、昇格された特権(elevated privilege)(例えば、管理者特権)を有することができるときに、特に問題となる。攻撃者が最初は昇格された特権を有するユーザー・アカウントへのアクセスができなくても、攻撃者は、例えば、「パス・ザ・ハッシュ攻撃」(pass the hash attack)というような技法を採用して、SaaSシステムのサービスを崩壊させるために、昇格された特権があるユーザー・アカウントへのアクセスを取得する虞がある。
このような攻撃者による不正アクセスは、業務に著しい危害を生ずる原因となり、顧客にとって深刻なセキュリティおよびプライバシーの問題が発生する虞がある。
[0002] 以下に導入するのは、本明細書において説明する新規な実施形態の基本的な理解を得るための簡略化した摘要である。この摘要は、広範な全体像ではなく、主要な/肝要なエレメントを識別することや、その範囲を明確に定めることを意図するのではない。その唯一の目的は、以下で提示する更に詳細な説明に対する序文として、一部の概念を簡略化した形態で紹介することである。
[0003] 一般に、種々の実施形態は、ジャスト・イン・タイム・プロビジョニング・アカウント即ちJITアカウントによって、攻撃者の横方向移動(lateral movement)を抑える(contain)ことによりネットワーク・セキュリティを強化する技法を対象とする。ある実施形態は、特に、JITアカウントを管理する技法を対象とする。例えば、一実施形態では、装置が、プロセッサー回路と、このプロセッサー回路による実行のためのサーバー・アプリケーションとを含むことができる。サーバー・アプリケーションは、1組のサーバー・デバイスにおける1つのサーバー・デバイスにアクセスするための第2アカウントを求める第1アカウントからの要求を、クライアント・デバイスを介して受けるアカウント管理コンポーネントと、少なくとも部分的に第1アカウントに関連付けられたアカウント情報に基づいて、第2アカウントを求める要求を許可するアカウント許可コンポーネントと、クライアントがサーバー・デバイスにアクセスすることを可能にするために第2アカウントをプロビジョニングするアカウント・プロビジョニング・コンポーネントと、第2アカウントに関連付けられたアカウント情報をクライアントに、クライアント・デバイスを介して、提供するアカウント通知コンポーネントとを含む。他の実施形態についても説明し、特許請求する。
[0004] 以上の目的および関連する目的の遂行のために、本明細書では、以下の詳細な説明および添付図面に関連付けて、ある種の例示的態様(certain illustrative aspect)について説明する。これらの態様は、本明細書において開示する原理を実施することができる種々の方法を示し、その全ての態様および均等物が、特許請求する主題の範囲に該当することを意図している。他の利点および新規な特徴も、以下の詳細な説明を図面と併せて検討することから明白になるであろう。
図1は、JITアカウントをプロビジョニングするJITアカウント・プロビジョニング・システムの実施形態を示す。 図2は、1つ以上のリソースおよび/またはアセット(asset)を1つ以上の違反境界(breach boundary)にセグメント化、プロビジョニング、および/または構成するJITアカウント・プロビジョニング・システムの他の実施形態を示す。 図3は、クライアントを許可しJITアカウントに関連付けられた認証トークンを管理するJITアカウント・プロビジョニング・システムの更に他の実施形態を示す。 図4Aは、JITアカウントをプロビジョニングする論理フローの実施形態を示す。 図4Bは、昇格されたアクセス許可(elevated access permission)を有するJITアカウントを求める要求を受けたときに、この要求を許可する論理フローの実施形態を示す。 図4Cは、プロビジョニングされたJITアカウントをイネーブルする論理フローの実施形態を示す。 図4Dは、JITアカウントに関連付けられたアクセス許可を構成する(configure)論理フローの実施形態を示す。 図4Eは、JITアカウントに関連付けられた存続期間を管理する論理フローの実施形態を示す。 図5は、計算アーキテクチャの実施形態を示す。
[0014] 種々の実施形態は、違反境界(breach boundaries)および資格証明書(credential)の分割を実施することによって、アイデンティティ(identity)のセグメンテーションを設けるように構成されたネットワーク・アカウント・プロビジョニング・システムを対象とする。違反境界を利用し、SaaSシステムに関連付けられた1つ以上のリソースおよび/またはアセットをサービスし、管理し、および/または利用するクライアントにジャスト・イン・タイム(JIT)アカウントを与えることによって、SaaSシステムのセキュリティおよびプライバシーを著しく高めることができる。これらおよびその他の改良を達成するために、ネットワーク・アカウント・プロビジョニング・システムは、大まかには、SaaSシステムの少なくとも一部(例えば、ドメイン)を、2つ以上の違反境界に分割またはセグメント化するように構成することができる。ここで、各違反境界には、1つ以上のリソースおよび/またはアセット(例えば、サーバー、ワークステーション、計算デバイス、移動体デバイス、アプリケーション、サービス、および/またはソフトウェア/ハードウェア・コンポーネント)と関連付けることができ、更に違反境界内においてこれらのリソースに対するアクセス許可を管理するように構成されたセキュリティ・グループにも関連付けることができる。
[0015] これらのリソースおよび/またはアセットに対するクライアント(例えば、ユーザー、技術者、請負人、顧客、および/またはソフトウェア/ハードウェア・コンポーネント)のアクセスを可能にするために、JITアカウント・プロビジョニング・システムは、更に、これらのリソースおよび/またはアセットを含む違反境界に関連付けられたセキュリティ・グループにおけるメンバーとして、1つ以上のJITアカウントを追加するように構成することができる。このように、JITアカウントは、低い方または最も低い特権および/または許可を有する既存のアカウントを持つクライアントが、実行するためには昇格された特権を必要とする可能性がある1つ以上のサービス(例えば、SaaSシステムの1つ以上のリソースを検査、アップグレード、デバッグ、開発、展開、および/または管理する)を実行するために、昇格された特権のJITアカウントを得ることを可能にすることができる。
[0016] SaaSシステムにおいて1つ以上のリソースおよび/またはアセットに対して1つ以上のサービスを実行するために昇格された特権のJITアカウントを得るために、JITアカウント・プロビジョニング・システムは、SaaSシステムのリソースおよび/またはアセットにアクセスするために昇格アクセス許可(elevated access permission)を求めるクライアントからの要求を受けるように構成することができる。これに応答して、JITアカウント・プロビジョニング・システムは、昇格アクセス許可を求める要求の一部として、JITアカウントをプロビジョニングするように構成することができる。更に、各要求には、クライアントによって供給される、要求役割/範囲(required role and scope)と関連付けることができるので、JITアカウント・プロビジョニング・システムは、クライアントによって要求されたタスクまたはサービスを実行するために必要とされる最小範囲の許可を、各JITアカウントにプロビジョニングすることができる。
[0017] 一旦要求が他のクライアントによって承認されたなら、および/または、自動的にJITアカウント・プロビジョニング・システムによって認証されたなら、JITアカウント・プロビジョニング・システムは、更に、この承認に応答して、要求役割/範囲に合わせたJITアカウントを作成するように構成することができる。クライアントに関連付けられたJITアカウントが既に存在する場合、JITアカウント・プロビジョニング・システムは、クライアントによって要求されたのと同じまたは実質的に同様の役割および範囲に合わせて既に作成されている既存のJITアカウントを再利用するように構成することができる。以前に作成されたJITアカウントの再利用と合わせて、JITアカウントをプロビジョニングするのを省略する(lazy provisioning)ことによって、JITアカウント・プロビジョニング・システムが管理することを要求される可能性があるJITアカウントの数を大幅に減らすことができる。
[0018] 要求が認証されたか、承認されたか、および/または拒否されたか否かクライアントに知らせるために、JITアカウント・プロビジョニング・システムは、更に、アクセス許可が昇格されたJITアカウントを求めた要求が認証されたか、承認されたか、および/または拒否されたかの通知をクライアントに供給するように構成することができる。アクセス許可が昇格されたJITアカウントを求めた要求が認証されたおよび/または承認された場合、JITアカウント・プロビジョニング・システムは、更に、承認に関してクライアントに通知し、プロビジョニングされたJITアカウントに関連付けられたJITアカウント情報を提供することができる。次いで、クライアントは、このJITアカウント情報を使用して、昇格アクセス許可によって、プロビジョニングされたJITアカウントの役割および範囲内で1つ以上のリソースおよび/またはアセットにアクセスするおよび/またはサービスすることができる。
[0019] SaaSシステムのセキュリティおよびプライバシーを更に確保するために、JITアカウント・プロビジョニング・システムは、更に、各JITアカウントを存続期間(例えば、4時間)と関連付け、各JITアカウントがそれらに関連付けられた存続期間の終了時にはディスエーブルされることが可能となるように構成することができる。各アカウントに関連付けられる存続期間は、クライアントによって、それらのJITアカウントを求める要求において、明示的に示すことができる。これに加えて、またはその代わりに、存続期間は、特定のJITアカウントに関連付けられた範囲および役割に対して内在的であってもよい。長い時間期間(例えば、1か月)にわたってインアクティブのままであった1つ以上のJITアカウントに対して、JITアカウント・プロビジョニング・システムは、更に、これらのインアクティブなJITアカウントをJITアカウント・プロビジョニング・システムから削除または放出する(destroy)ように構成することもできる。
[0020] その結果、JITアカウント・プロビジョニング・システムは、攻撃者の違反境界間における横方向移動を制限し、攻撃者を1つの違反境界に閉じ込めて、攻撃者がJITアカウントを漏洩する(compromise)ことによって行うことができる最良のことが、同じ影響の範囲内におけるリソースおよび/またはアセット間の横方向移動となるようにすることによって、SaaSシステムのセキュリティおよびプライバシーを高めることができる。また、JITアカウント・プロビジョニング・システムは、クライアントに関連付けられた既存のクライアント・アカウントをいずれも、攻撃者にとって興味をそそらないものにする。これは、既存のクライアント・アカウントが一般に低い方または最も低いレベルのアクセス許可に制限され、アクセス許可が昇格されたJITアカウントを求める要求は、いずれも事前の承認を必要とするかもしれないからである。アクセス許可が昇格されたJITアカウントが漏洩した場合であっても、攻撃者は1つの違反境界に閉じ込められ、彼らのアクセスは、JITアカウントがディスエーブルされるまでの限定された存続期間しかない。このように、SaaSシステムのセキュリティおよびプライバシーを大幅に高めることができる。
[0021] 本明細書において使用される観念および用語について概略的に参照したので、以下に続く詳細の説明では、コンピューターまたはコンピューターのネットワークにおいて実行されるプログラム手順について紹介することができよう。これらの手順についての説明および表現は、当業者が彼らの作業の実体(substance)を最も効果的に他の当業者に伝えるために使用される。
[0022] ここでは、手順とは、一般に、所望の結果に至る動作の自己無撞着な(self-consistent)シーケンスであると考える。これらの動作は、物理量の物理的操作を必要とするものである。必ずという訳ではないが、大抵の場合、これらの量は、格納、転送、組み合わせ、比較、およびそれ以外の操作をすることができる電気、磁気、または光信号の形態をなす。これらの信号をビット、値、エレメント、シンボル、キャラクター、用語(terms)、数値等と呼ぶことが、主に共通使用の理由のために、ときには便利であることが分かる。しかしながら、注記すべきは、これらおよび同様の用語は全てしかるべき物理量と関連付けられるはずであり、これらの量に適用される便利な呼称に過ぎないということである。
[0023] 更に、実行される操作は、多くの場合、加算または比較というような用語で引用されるが、一般に、人の操作者によって実行される精神的動作に関連付けられる。本明細書において説明される動作が1つ以上の実施形態の一部をなすときはいずれも、殆どの場合、このような人の操作者の能力は必要ではなく、望ましくもない。むしろ、これらの動作は機械動作である。種々の実施形態の動作を実行する有用な機械には、汎用ディジタル・コンピューターまたは同様のデバイスが含まれる。
[0024] また、種々の実施形態は、これらの動作を実行する装置またはシステムにも関する。この装置は、必要とされる目的に合わせて特別に組み立てることができ、または汎用コンピューターを含み、このコンピューターに格納されたコンピューター・プログラムによって選択的に作動させる(activate)または再構成することもできる。本明細書において紹介する手順は、本質的に、特定のコンピューターや他の装置に関係がない。種々の汎用マシンを、本明細書における教示にしたがって書かれたプログラムと共に使用することもでき、また、必要とされる方法ステップを実行するように、更に特殊化された装置を組み立てることも便利な場合もある。種々のこれらのマシンに必要とされる構造は、以下で行う説明に現れるであろう。
[0025] これより図面を参照するが、図面においては、同様のエレメントを指すために同様の参照番号が全体を通じて使用される。以下の説明では、説明の目的に限って、完全な理解を得るために多数の具体的な詳細について明記する。しかしながら、新規な実施形態はこれらの具体的な詳細がなくても実施可能であることは明白であろう。他方で、周知の構造およびデバイスは、その説明を容易にするために、ブロック図形状で示される。その意図は、特許請求する主題と一致する全ての変更、均等、および代替を範囲に含めることである。
[0026] 図1は、JITアカウント・プロビジョニング・システム100の実施形態を示す。種々の実施形態において、JITアカウント・プロビジョニング・システム100は、1つ以上のクライアント102−a(例えば、ユーザー、技術者、請負人、顧客、および/またはソフトウェア/ハードウェア・コンポーネント)を含む企業用計算環境150(例えば、クラウド・ストレージ・システム、データー・センター等)において、またはこれらと共に実現することができる。ここで、各クライアント(例えば、クライアント102−1または102−2)には1つ以上のクライアント・アカウントを関連付けることができ、1つ以上のクライアント・アカウントの各クライアント・アカウントに更にクライアント・アカウント情報を関連付けることができる。クライアント・アカウント情報は、限定ではなく、クライアント・アカウント認証情報(例えば、ユーザー・プリンシパル名(UPN:user-principal-name)、アカウント識別子、アカウント・パスワードあるいはそのハッシュおよび/またはソルトされた派生物、アカウント・ドメイン、スマート・カード証明書、生物計量(biometrics)等)、クライアント・アカウント許可情報(例えば、クライアント・アカウント役割/範囲情報、アクセス許可、関連グループ等)、および/または1つ以上のクライアント102−aの認証および許可に関連する任意のその他の情報を含むことができる。
[0027] 1つ以上のクライアント102−aは、例えば、1つ以上のSaaSシステムの1つ以上のサービスを提供するように構成されたサーバー・デバイス140−i−j(例えば、MICROSOFT Office 365、MICROSOFT Exchange Online,MICROSOFT SharePoint Online、MICROSOFT Dynamics CRM等)のような、1つ以上のリソースおよび/またはアセットをサービスするための昇格アクセス許可を有するJITアカウントを要求するために、1つ以上のクライアント・アカウントを利用することができる。サーバー・デバイス140−i−jは、更に、互いの間で、ネットワーク相互接続112を介して、SaaSシステムのサービスを提供するために、相互接続されることも可能である。尚、サーバー・デバイス140−i−jは、種々の実施形態では、限定ではなく単なる例示のために引用されるに過ぎないことは認めることができよう。したがって、種々の実施形態におけるサーバー・デバイス140−i−jの内任意のものまたは全てを、例えば、仮想デバイス、ワークステーション、計算デバイス、移動体デバイス、アプリケーション、サービス、および/または他のソフトウェア/ハードウェア・コンポーネントのような任意の他のリソースおよび/またはアセットと交換してもよい。
[0028] また、「a」および「b」および「c」ならびに同様の符号(designator)は、本明細書において使用される場合、任意の正の整数を表す変数であることを意図することも注記するに値する。つまり、例えば、ある実施態様がa=2と値を設定した場合、完全な1組のクライアント102−aは、クライアント102−1および102−2を含むことができる。他の例では、ある実施態様がi=1およびj=6と値を設定した場合、完全な1組のサーバー・デバイス140−i−jは、サーバー・デバイス140−1−1、140−1−2、140−1−3、140−1−4、140−1−5、および140−1−6を含むことができる。実施形態はこの文脈において限定されることはない。
[0029] JITアカウント・プロビジョニング・システム100は、ネットワーク相互接続112を介して1つ以上のSaaSシステムのサーバー・デバイス140−i−jにサービスするために(例えば、SaaSシステムの1つ以上のリソースおよび/またはアセットを検査、アップグレード、デバッグ、開発、展開、および/または維持する)、クライアント102−aによって使用される1つ以上のクライアント・デバイス104−b(例えば、ラップトップ、コンピューター、電話機、ワークステーション、または任意の他の計算デバイス)を含むことができる。更に、企業用計算環境150におけるネットワーク相互接続112は、種々のデバイス、コンポーネント、アプリケーション、サーバー、リソース、および/またはアセット間において、1つ以上のネットワーク(例えば、イントラネットおよび/またはインターネット)を通じて、1つ以上のネットワーク・デバイス(例えば、リピーター、ブリッジ、ハブ、スイッチ、ルーター、ゲートウェイ、ロード・バランサー等)を利用して、ネットワーク接続を設けるように構成することができる。
[0030] JITアカウント・プロビジョニング・システム100は、1つ以上のディレクトリ・サービス・サーバー・デバイス130−lを含むか、またはこれと統合されてもよい。ディレクトリ・サービス・サーバー・デバイス130−lは、大まかには、サーバー・デバイス140−i−jを1つ以上の論理グループ、論理サブグループ、および/または論理サブ・サブグループ(例えば、フォーレスト132−k、ドメイン136−d、および/または組織的ユニット134−e−f)の階層に編成するために、アプリケーションの中でもとりわけディレクトリ・サービス・アプリケーション(図示せず)を実行するように構成することができる。また、ディレクトリ・サービス・サーバー・デバイス130−lは、ディレクトリ・サービス情報を含む1つ以上のディレクトリ・サービス・データーストア(図示せず)において階層を格納するように構成することもできる。
[0031] 1つ以上のディレクトリ・サービス・サーバー・デバイス130−lが、1つ以上のリソースおよび/またはアセットにアクセスするためのJITアカウントを使用して、1つ以上のクライアント102−aからのアクセス要求を認証することができるように、ディレクトリ・サービス情報は、1つ以上のJITアカウントに関連付けられたJITアカウント情報を含むとよい。JITアカウント情報は、限定ではなく、JITアカウント認証情報(例えば、ユーザー・プリンシパル名(UPN)、アカウント識別子、アカウント・パスワードあるいはそのハッシュおよび/またはソルトされた派生物、アカウント・ドメイン、スマート・カード証明書、生物計量等)、JITアカウント許可情報(例えば、JITアカウント役割/範囲情報、JITアカウント・アクセス許可、JITアカウント関連グループ等)、JITアカウント存続期間情報(例えば、JITアカウントの存続期間)、ディレクトリ・サービス情報(例えば、JITアカウントに関連付けられたディレクトリ・サービス・サーバー・デバイス)、および/または1つ以上のJITアカウントの認証、許可、および存続期間に関連する任意の他の情報を含むことができる。
[0032] 種々の実施形態において、各ディレクトリ・サービス・サーバー・デバイス(例えば、ディレクトリ・サービス・サーバー・デバイス130−1)は、ディレクトリ・サービス・アプリケーション(図示せず)を含むまたは実装することができる。ディレクトリ・サービス・アプリケーションの具体例には、MICROSOFT Active Directory、NOVELL eDirectory、APPLE Open Directory、ORACLE Internet Directory(OID)、IBM Tivoli Directory Server、あるいはDirectory Access Protocol(DAP)、軽量Directory Access Protocol(LDAP)、および/または国際通信連合(ITU)電気通信標準化部門(ITU−T)によって公表されたX.500規格を実施する任意の他のアプリケーションを含むことができるが、これらに限定されるのではない。
[0033] 例示として、ディレクトリ・サービス・サーバー・デバイス130−1は、MICROSOFT Active Directoryの少なくとも一部(例えば、Active Directory Domain Service、Active Directory Domain Controller、Active Directory Datastore等)を含むか、または実装することができる。1つ以上のディレクトリ・サービス・サーバー・デバイス130−lの各ディレクトリ・サービス・サーバー・デバイス(例えば、ディレクトリ・サービス・サーバー・デバイス130−1)は、例えば、フォーレスト132−1のような最上位の論理グループを管理するように構成することができる。1つ以上のフォーレスト132−kは、1つ以上のそれよりも低い論理グループ、例えば、ドメイン136−dのような、例えば、論理サブグループを含むことができる。1つ以上のドメイン136−dの各ドメイン(例えば、ドメイン136−1)は、それよりも低いレベルの論理グループ、例えば、編成ユニット134−e−fのような、例えば、論理サブ・サブグループを管理するように構成することができる。随意に、ドメイン130−dは、更に、例えば、ツリー(図示せず)のような、フォーレスト132−kとドメイン136−dとの間において1つ以上の中間論理グループに論理的にグループ化されてもよい。1つ以上の編成ユニット134−e−fの各編成ユニット(例えば、編成ユニット134−1−1)は、例えば、サーバー・デバイス140−g−hのような、1つ以上のリソースおよび/またはアセットを含むことができる。
[0034] 尚、種々の実施形態において、フォーレスト132−k、ドメイン136−d、および/または編成ユニット134−e−fは、限定ではなく例示の目的で引用されるに過ぎないことは認めることができよう。したがって、種々の実施形態において、フォーレスト132−k、ドメイン136−d、および/または編成ユニット134−e−fの内任意のもの、または全ては、所与の実施態様に合わせたそれらの実質的な均等物と置き換えられてもよい。例えば、ディレクトリ・サービス・サーバー・デバイス130ーlがNOVELL eDirectoryの少なくとも一部を含むまたは実装する一実施態様では、フォーレスト132−k、ドメイン136−d、および編成ユニット134−e−fは、それぞれ、NOVELL eDirectoryにおいて実施されるように、ツリー、パーティション、および編成ユニットと置き換えることができる。実施形態はこの文脈において限定されることはない。
[0035] 攻撃者の横方向移動を抑える(contain)ために、JITアカウント・プロビジョニング・システム100の各ドメイン(例えば、ドメイン136−1)は、更に、1つ以上の違反境界138−g−hを含むことができる。例えば、ドメイン136−1は、違反境界138−1−1および138−1−2を含むことができる。加えて、ある実施態様では、違反境界138−g−hは、1つ以上の編成ユニット134−e−fとは独立であることもできる。例えば、ドメイン136−1において、編成ユニット134−1−1、134−1−2、134−1−3が、違反境界138−1−1および138−1−2の間に広がることができ、違反境界138−1−1のような1つの違反境界が、3つの全ての編成ユニット134−1−1、134−1−2、134−1−3からの、例えば、サーバー・デバイス140−1−1、140−1−2、140−2−3のようなリソースおよび/またはアセットを含むようにすることができる。例えば、ドメイン136−dのような他のドメインでは、例えば、違反境界138−g−lのような1つの違反境界が、1つの編成ユニット134−e−lからの、例えば、サーバー・デバイス140−i−1、140−i−4のような、リソースおよび/またはアセットを含むように、違反境界138−g−1のような違反境界138−g−hが、例えば、編成ユニット134−e−lのような編成ユニット134−e−fと共存することができる。
[0036] 1つ以上の違反境界138−g−hは、一般に、1つ以上のディレクトリ・サービス・サーバー・デバイス130−lによって管理され、セキュリティ境界に関連付けることができる1つ以上のJITアカウントに対する1組のアクセス許可を付与しまたは与えて、1つ以上のJITアカウントがこのセキュリティ境界内において1つ以上のリソースおよび/またはアセットにアクセスできるように構成することができる。更に、JITアカウントにアクセスできる攻撃者が「パス・ザ・ハッシュ攻撃」を利用して1つ以上の違反境界138−g−hの間で移動できないことを確保するために、1つ以上の違反境界138−g−hの各違反境界(例えば、違反境界138−1−1および138−1−2)は、更に、相互に排他的な、即ち、重複しない1組のリソースおよび/またはアセットを含み、いずれの違反境界138−g−hの間にも重複がないように構成することができる。
[0037] JITアカウント・プロビジョニング・システム100は、サーバー・デバイス108を含むことができる。サーバー・デバイス108は、大まかには、アプリケーションの中でもとりわけディレクトリ・サービス・アプリケーション110を実行するように構成することができる。ディレクトリ・サービス・アプリケーション110は、大まかには、クライアント102−aの1つ以上のクライアント・アカウントに関連付けられたクライアント・アカウント情報を格納し提供するように構成することができる。また、ディレクトリ・サービス・アプリケーション110は、組織階層情報を格納するように構成することもできる。組織階層情報は、1つ以上のクライアント102−aがメンバーまたは会員(例えば、会社)となることができる組織の階層構造を含むことにより、1つ以上のクライアント102−aの任意のスーパーバイザーおよび/またはマネージャを識別することができる。ディレクトリ・サービス・アプリケーション110は、更に、admin管理アプリケーション114を介して、昇格アクセス許可を有するJITアカウントを要求する1つ以上のクライアント104−aを認証するように、または認証を補助するように構成することもできる。ディレクトリ・サービス・アプリケーションの具体例または実施態様には、ディレクトリ・サービス・サーバー・デバイス130−lに関して先に論じたものを含むことができるが、それらに限定されるのではない。
[0038] 昇格アクセス許可を有するJITアカウントを要求する1つ以上のクライアント102−aを認証するため、またはその認証を容易にするために、ディレクトリ・サービス・アプリケーション110は、昇格アクセス許可を要求する1つ以上のクライアント102−aを認証するために、admin管理アプリケーション114に対して1つ以上のアプリケーション・プログラム・インターフェース(API)を露出および/または実装することもできる。例えば、admin管理アプリケーション114は、ネットワーク相互接続112を介して、1つ以上のAPI、および/または1つ以上のローカル手順コール(LPC)、および/またはディレクトリ・サービス・アプリケーション110のリモート手順コール(RPC)メカニズムを利用することによって、昇格アクセス許可を要求する1つ以上のクライアント102−aを認証することができる。APIの具体例には、ADP API、LADP API、MICROSOFT Active Directory Service Interface(ADSI) API、MICROSOFT Messaging API(MAPI)、MICROSOFT Directory System Agent(DSA)API、および/またはクライアント102−aの認証を可能にする任意の他のAPIを含むことができるが、これらに限定されるのではない。
[0039] JITアカウント・プロビジョニング・システム100は、サーバー・デバイス106を含むことができる。サーバー・デバイス106は、大まかには、アプリケーションの中でもとりわけadmin管理アプリケーション114を実行するように構成することができる。admin管理アプリケーション114は、大まかには、1つ以上のクライアント102−aからのアクセス許可を高めるための要求を受け、クライアント102−aから受けた1つ以上の要求を認証するように構成することができる。加えて、admin管理アプリケーション114は、更に、クライアント102−aによって要求された、昇格アクセス許可を有する1つ以上のJITアカウントを管理、許可、およびプロビジョニングし、プロビジョニングされるJITアカウントに関連付けられたJITアカウント情報をクライアント102−aに通知するように構成することができる。
[0040] 種々の実施形態では、admin管理アプリケーション114はアカウント管理コンポーネント116を含むことができる。アカウント管理コンポーネント116は、大まかには、昇格アクセス許可を有するJITアカウントを要求する1つ以上のクライアント102−aを認証し、リソースおよび/またはアセットにおいて1つ以上のアクションまたはタスクを実行するためにアクセス許可を高めるための1つ以上の要求を、クライアント・デバイス104−bを介して1つ以上のクライアント102−aから受けるように構成することができる。
[0041] 例示として、アカウント管理コンポーネント116は、クライアント102−1が昇格アクセス許可を有するJITアカウントを要求することを可能にする前に、クライアント102−1がadmin管理アプリケーション114に対して認証することを可能にすることができる。クライアント102−1を認証することを可能にするために、アカウント管理コンポーネント116は、クライアント・アカウント情報の少なくとも一部(たとえば、アカウント識別子および/またはアカウント・パスワード)をクライアント102−1に要求する、および/またはクライアント102−1から受けることができる。受けたクライアント・アカウント情報をクライアント102−1のクライアント・アカウントと関連付けることもできる。アカウント管理コンポーネント116は、クライアント・アカウント情報(例えば、UPN、アカウント識別子、および/またはパスワード)を、クライアント・デバイス104−1の1つ以上のアプリケーションおよび/またはコンポーネント(例えば、計算デバイスのウェブ・ブラウザー)を介して受けることができる。受けたクライアント・アカウント情報に応答して、アカウント管理コンポーネント116は、少なくとも部分的に受けたクライアント・アカウント情報、および既に格納されておりディレクトリ・サービス・アプリケーション110によってアクセス可能なクライアント・アカウント情報に基づいて、クライアント102−1を認証することができる。更に、既に格納されておりディレクトリ・サービス・アプリケーション110によってアクセス可能なクライアント・アカウント情報に少なくとも部分的に基づいてクライアント102−1を認証するために、アカウント管理コンポーネント116は、ネットワーク相互接続112およびディレクトリ・サービス・アプリケーション110の1つ以上のAPIを介して利用するように構成することができる。
[0042] 以上の例を続けると、一旦クライアント102−1が認証されたなら、アカウント管理コンポーネント116は、クライアント102−1がJITアカウント要求情報を入力することを可能にするように構成することができる。JITアカウント要求情報は、実行される1つ以上のアクションまたはタスク、1つ以上のサーバー・デバイス140−i−j、および1つ以上のアクションまたはタスクに関連付けられた要求存続期間情報(requested lifetime information)を含むことができるが、これらに限定されるのではない。要求存続期間情報は、JITアカウントが失効しディスエーブルされるときの具体的な時刻または時間の経過(elapse of time)、および/またはJITアカウントが削除されるときの具体的な時刻または時間の経過を含むことができるが、これに限定されるのではない。
[0043] 加えてまたは代わりに、アカウント管理コンポーネント116は、JITアカウントに関連付けられた存続期間が所定の時間量(例えば、分、時間、日、週、年等の単位)を超えることができないように、1つ以上のクライアント102−aから受ける要求存続期間情報を上限値に制限するように構成することもできる。一実施形態例では、アカウント管理コンポーネント116は、72時間(例えば、4日)よりも長い存続期間のJITアカウントを求めるいずれの要求も72時間即ち3日に制限されるように、昇格アクセス許可を有するJITアカウントに対して要求される存続期間情報を72時間即ち3日の上限値に制限することができる。実施形態は、この文脈において限定されることはない。
[0044] 加えてまたは代わりに、アカウント管理コンポーネント116は、企業用計算環境150に関連付けられた1つ以上の既定の役割および範囲を設け、実行されるアクションまたはタスク、およびこれらのアクションまたはタスクが実行されることになるリソースおよび/またはアセットに基づいて、1つ以上のクライアント102−aが1つ以上の既定の役割および範囲を選択することを可能にするように構成することもできる。
[0045] 実行されるアクションまたはタスクの例には、リモート・アプリケーション・デバッグ、アプリケーションのバックアップ、アプリケーションのアップグレードおよび/または保守、サーバーのアップグレードおよび/または保守、検査、および/または1つ以上のリソースおよび/またはアセットのアクセスおよび/または変更を必要とするかもしれない任意の他のアクションまたはタスクを含むことができるが、これらに限定されるのではない。要求存続期間情報の例には、JITアカウントがイネーブルされたままでいることができる日数、分数、時間数、および/または秒数、および/またはJITアカウントがイネーブルされたままでいることができる前の具体的な時間および日付けを含むことができるが、これに限定されるのではない。
[0046] 種々の実施形態において、admin管理アプリケーション114は、更に、アカウント許可コンポーネント118も含むことができる。アカウント許可コンポーネント118は、大まかには、要求役割/範囲情報、ならびにクライアント・アカウント役割/範囲情報を判定するように構成することができる。更に、アカウント許可コンポーネント118は、クライアント・アカウント役割/範囲情報をクライアントに提供し、要求役割/範囲情報ならびにクライアント・アカウント役割/範囲情報に基づいて、アクセス許可を高める要求を許可するように構成することができる。
[0047] 一実施形態では、アカウント許可コンポーネント118は、受けたJITアカウント要求情報、およびディレクトリ・サービス・サーバー・デバイス130−lによって提供されるディレクトリ・サービス情報に少なくとも部分的に基づいて、要求役割/範囲情報を判定するように構成することができる。要求役割/範囲情報を判定するために、アカウント管理コンポーネント116は、1つ以上のクライアント・デバイス104−bを介して1つ以上のクライアント102−aによって与えられる要求アクションまたはタスクに基づいて、1つ以上の要求される役割を識別するように構成することができる。
[0048] 要求範囲を判定するために、アカウント許可コンポーネント118は、更に、ディレクトリ・サービス・サーバー・デバイス130−lと通信して、クライアント102−aがアクションまたはタスクを実行するために要求したリソースおよび/またはアセットを含むセキュリティ境界を識別するように構成することができる。要求役割の例には、アドミニストレーター、バックアップ・オペレーター、デバッガー、リモート・ユーザー、テスター等を含むことができるが、これらに限定されるのではない。尚、各役割には、更に、1つ以上のリソースおよび/またはアセット、および/または1つ以上のリソースおよび/またはアセットのコンポーネントに対するアクセスを付与および/または拒否することができる1組のアクセス許可を関連付けることもできることは認めることができよう。要求範囲の例には、1つ以上のサーバー・デバイス140−1−1、140−1−2、140−1−3、あるいは他のリソースおよび/またはアセット、および/またはリソースおよび/またはアセットのコンポーネントを含むことができるが、これらに限定されるのではない。
[0049] 例示として、クライアント102−1がサーバー・デバイス140−1−1においてリモート・アプリケーション・デバックを実行することを要求すると、アカウント許可コンポーネント118によって判定され更に要求されたアクションまたはタスクに関連付けられた要求役割/範囲情報は、リモート・ユーザーおよびデバッガーという役割を含むことができ、範囲は違反境界138−1−1を含むことができる。加えてまたは代わりに、アカウント管理コンポーネント116が簡単にそして容易に、受けたJITアカウント要求情報に基づいて、要求役割/範囲情報を判定できるように、クライアント102−1から受けたJITアカウント要求情報が、アカウント管理コンポーネント116に関して先に論じた1つ以上の既定の役割および範囲のクライアントの選択を含むこともできる。
[0050] 一実施形態では、アカウント許可コンポーネント118は、更に、ネットワーク相互接続112およびディレクトリ・サービス・アプリケーション110の1つ以上のAPIを介して利用することによってクライアント・アカウント役割/範囲情報を判定し、アクセス許可が昇格されたJITアカウントを要求する1つ以上のクライアント102−aに関連付けられたクライアント・アカウント役割/範囲情報を引き出すように構成することができる。これに加えてまたはその代わりに、アカウント許可コンポーネント118は、更に、クライアント・デバイス104−bを介して1つ以上のクライアント102−aから要求役割およびクライアント情報を受ける前に、アカウント通知コンポーネント122を介して、1つ以上のクライアント102−aに関連付けられた、引き出されたクライアント・アカウント役割/範囲情報を提供するように構成することもできる。これによって、1つ以上のクライアント102−aが、それらのクライアント・アカウント役割/範囲情報の範囲内である、またはこれと適合する(in comport with)要求役割/範囲情報を提供することを可能にすることができる。
[0051] 一旦クライアント・アカウント役割/範囲情報がディレクトリ・サービス・アプリケーション110から引き出されたなら、アカウント許可コンポーネント118は、少なくとも部分的に、要求された役割および範囲が、JITアカウントを要求したクライアント102−aに関連付けられたクライアント・アカウント役割の範囲内か、またはこれと適合するか否かに基づいて、自動的に、昇格アクセス許可を求める要求を許可することができる。クライアントによって要求された役割および範囲が、このクライアントに関連付けられたクライアント・アカウント役割および範囲と同等またはその範囲内である場合、アカウント許可コンポーネント118は、昇格アクセス許可を有するJITアカウントを求める要求を許可するように構成することができる。そうでない場合、アカウント許可コンポーネント118は、昇格アクセス許可を有するJITを求める要求を拒否することができる。
[0052] 例示として、クライアント102−1がサーバー・デバイス140−1−1においてリモート・アプリケーション・デバッグを実行することを要求するとき、要求役割/範囲情報は、リモート・ユーザーおよびデバッガーの役割を含むことができ、範囲は違反境界138−1−1を含むことができる。クライアント102−1のクライアント・アカウントに関連付けられ、ディレクトリ・サービス・アプリケーション110から引き出されたクライアント・アカウント役割/範囲情報は、リモート・ユーザーおよびデバッガーの役割を含むことができ、範囲はフォーレスト132−1を含むことができる。要求役割/範囲情報ならびにクライアント・アカウント役割/範囲情報に基づいて、アカウント許可コンポーネント118は、JITアカウントを求める要求を許可することができる。何故なら、クライアント102−1によって要求された役割(例えば、リモート・ユーザーおよびデバッガー)は、クライアント・アカウントの役割(例えば、リモート・ユーザーおよびデバッガー)と同等であり、クライアントによって要求された範囲(例えば、違反境界138−1−1)は、クライアント・アカウントの範囲内にある(例えば、フォーレスト132−1)からである。
[0053] 他の例示では、要求役割/範囲情報がリモート・ユーザーおよびデバッガーの役割を含むと判定されることもあり、範囲が違反境界138−1−1を含むと判定されることもある。ディレクトリ・サービス・アプリケーション110から引き出されたクライアント102−1のクライアント・アカウント役割/範囲情報は、デバッガーの役割を含むがリモート・ユーザーを含まないこともあり、範囲はフォーレスト132−2(図示せず)を含むこともある。アカウント許可コンポーネント118は、この要求を拒否することができる。何故なら、クライアント102−1によって要求された役割(例えば、リモート・ユーザーおよびデバッガー)が、クライアント・アカウントの役割(例えば、デバッガーであるがリモート・ユーザーを含まない)と同等でもなく、その範囲内にあるのでもなく、更にクライアントによって要求された範囲(例えば、違反境界138−1−1)も、クライアント・アカウントの範囲(例えば、フォーレスト132−2)内でもないからである。
[0054] 加えてまたは代わりに、SaaSシステムのセキュリティおよびプライバシーを確保するために、クライアントが要求できる要求役割/範囲の数およびタイプを限定することにより、要求役割/範囲情報を制限ために、クライアント・アカウント役割/範囲情報を更に限定することもできる。このように、ある実施形態では、クライアント・アカウント役割/範囲情報は、更に、要求される役割の数を1つの役割に限定し、役割のタイプを特定の役割の集合体(例えば、リモート・ユーザー、デバッグ、および/または検査)に限定し、範囲を1つの違反境界に限定して、クライアントから受けた要求役割/範囲がこれらの制約の範囲内に収まらない場合、許可コンポーネント118によって拒否されるようにすることができる。その結果、アカウント・プロビジョニング・コンポーネント120によってプロビジョニングされるJITアカウントはいずれも、更にそれらの役割および範囲が限定される。
[0055] 例示として、要求役割/範囲情報がリモート・ユーザーおよびデバッガーの役割を含むと判定されることもあり、範囲が違反境界138−1−1を含むと判定されることもある。クライアント102−1に関連付けられたクライアント・アカウント役割/範囲情報が、リモート・ユーザーおよびデバッガーの役割を含むこともあるが、クライアント・アカウント役割/範囲情報が更に役割を1つの役割(例えば、リモート・ユーザーまたはデバッガーはよいが、双方はいけない)に限定することもあり、範囲が1つの違反境界に限定されることもある。アカウント許可コンポーネント118は、この要求を拒否することができる。何故なら、クライアント102−1によって要求された役割(例えば、リモート・ユーザーおよびデバッガーの双方)は1つの役割という制限(例えば、リモート・ユーザーまたはデバッガーはよいが、双方はいけない)の範囲内ではないからである。
[0056] クライアント・アカウントの役割および範囲を更に限定することによって実現される少なくとも1つの技術的利点は、許可され後にアカウント・プロビジョニング・コンポーネント120によってプロビジョニングされるいずれのJITアカウントも、各JITアカウントにはクライアントに要求されたタスクまたはサービスを実行するために必要とされる最小限の範囲に設定された許可がプロビジョニングされることを確保するために、役割および範囲が限定されることである。このように、攻撃表面または攻撃ベクトルがJITアカウント数の増大と共に増えるが、その影響は、プロビジョニングされる各JITアカウントは役割および範囲が限定されるので、軽減される。
[0057] 加えてまたは代わりに、SaaSシステムのセキュリティおよびプライバシーを更に確保するために、アカウント許可コンポーネント118は、更に、ネットワーク相互接続112およびディレクトリ・サービス・アプリケーション110の1つ以上のAPIを介して利用することにより、ディレクトリ・サービス・アプリケーション110によってアクセス可能な編成階層情報に基づいて、1つ以上のクライアント102−aのスーパーバイザーまたはマネージャを識別することによって、昇格アクセス許可を要求する1つ以上のクライアント102−aのスーパーバイザーまたはマネージャを決定するように構成することができる。一旦1つ以上のクライアント102−aのスーパーバイザーまたはマネージャが決定されたなら、アカウント許可コンポーネント118は、アカウント通知コンポーネント122を介して、スーパーバイザーまたはマネージャに監督承認情報を通知し提供するように構成することができる。監督承認情報は、JITアカウントを要求した1つ以上のクライアント102−aについての要求役割/範囲アカウント情報、要求存続期間情報、ならびにクライアント・アカウント役割/範囲情報を含むことができる。また、アカウント許可コンポーネント118は、要求を許可する前に、1つ以上のクライアント102−aのスーパーバイザーまたはマネージャの承認を要求し受けるように構成することもできる。
[0058] 例示として、アクセス許可が昇格されたJITアカウントを求める要求をクライアント102−1に対して許可する前であるが、要求役割/範囲情報ならびにクライアント・アカウント役割/範囲情報を判定した後において、アカウント許可コンポーネント118は、スーパーバイザーまたはマネージャがクライアント102−2であることを決定することができ、クライアント102−2に、要求役割/範囲情報ならびにクライアント102−1のクライアント・アカウント役割/範囲情報を、アカウント通知コンポーネント122を介して通知し提供することができる。アカウント許可コンポーネント118は、更に、要求を許可する前に、クライアント102−2に承認を要求し、受けることができる。
[0059] 種々の実施形態において、admin管理アプリケーション114は、更に、JITアカウント・データーストア126に通信可能に結合されたアカウント・プロビジョニング・コンポーネント120も含むことができる。JITアカウント・データーストア126は、大まかには、1つ以上のJITアカウントに関連付けられたJITアカウント情報を格納するように構成することができる。アカウント・プロビジョニング・コンポーネント120は、大まかには、JITアカウントを求める要求が許可された後に、JITアカウントをプロビジョニングするように構成することができる。アカウント・プロビジョニング・コンポーネント120は、更に、同じまたは実質的に同様の要求役割/範囲を有するJITアカウントが既にクライアントのために存在するか否か判定するように構成することもできる。アカウント・プロビジョニング・コンポーネント120は、同じまたは実質的に同様の要求役割/範囲を有するJITアカウントが既にそのクライアントのために存在するとき、このクライアントに関連付けられた既存のJITアカウントを引き出すように構成することができる。あるいは、同じまたは実質的に同様の要求役割/範囲を有するJITアカウントが未だクライアントのために存在しないとき、アカウント・プロビジョニング・コンポーネント120は、通常、新たなJITアカウントを作成するように構成することができる。JITアカウントを作成しおよび/または引き出した後、アカウント・プロビジョニング・コンポーネント120は、更に、JITアカウントをイネーブルするように構成することができる。
[0060] 一実施形態では、アカウント・プロビジョニング・コンポーネント120は、クライアントによって要求された役割および範囲と同等または実質的に同様である役割および範囲を有するJITアカウントが、JITアカウント・データーストア126において、そのクライアントに既のために存在するか否か判定するように構成することができる。アカウント・プロビジョニング・コンポーネント120は、JITアカウント・データーストア126を検索および/またはスキャンし、要求役割/範囲情報を、既存のJITアカウントのJITアカウント役割/範囲情報と比較し照合することによって、既に作成されているJITアカウントの存在を判定することができる。アカウント・プロビジョニング・コンポーネント120が、要求された役割および範囲を有するJITアカウントが既にそのクライアントのために存在すると判定したとき、アカウント・プロビジョニング・コンポーネント120は、既に作成されているJITアカウントに関連付けられた、そのクライアントについてのJITアカウント情報をJITアカウント・データーストア126から引き出すように構成することができる。
[0061] あるいは、アカウント・プロビジョニング・コンポーネント120が、要求された役割および範囲を有するJITアカウントがそのクライアントには存在しないと判定したとき、アカウント・プロビジョニング・コンポーネント120は、自動的にそのクライアントに新たなJITアカウントを作成するように構成することができる。これは、言い換えると、JITアカウントのレイジ・プロビジョニング(lazy provisioning)としても知られており、アカウント・プロビジョニング・コンポーネント120は、役割および範囲が同等または実質的に同様である以前のJITアカウントが未だそのクライアントのために存在しないときにのみ、JITアカウントを作成するように構成することができる。
[0062] 一実施形態において、アカウント・プロビジョニング・コンポーネント120は、少なくとも部分的に、JITアカウント要求情報(例えば、要求役割/範囲情報、要求存続期間情報等)およびクライアント・アカウント情報に基づいて、新たなJITアカウントおよびその関連するJITアカウント情報を作成することができる。例えば、クライアント102−1についてのクライアント・アカウント情報がUPN "EllenAdams@domainl36-l.contoso.com"を含むことができ、要求された役割がリモート・ユーザーおよびデバッガーを含み、要求された範囲が違反境界138−1−1を含むと仮定する。アカウント・プロビジョニング・コンポーネント120は、クライアント102−1が少なくとも部分的にUPNに基づいてJITアカウントに対する1つ以上の役割および範囲を識別できるように、UPN"EllenAdams_RemoteDebugger_Boundaryl38-l-l@domainl36-1.contoso.com" を含むJITアカウント情報によって新たなJITアカウントを作成することができる。加えて、アカウント・プロビジョニング・コンポーネント120は、更に、新たに作成したJITアカウントをJITアカウント・データーストア126に格納し、この新たに作成したJITアカウントを、そのクライアントのクライアント・アカウントと関連付けることもできる。
[0063] 1つ以上のディレクトリ・サービス・サーバー・デバイス130ーlによって管理されるリソースおよび/またはアセットが、新たに作成されたJITアカウントを使用して1つ以上のクライアント102−aによってアクセス可能および/またはサービス可能であることを確保するために、アカウント・プロビジョニング・コンポーネント120は、更に、クライアントがアクセスおよび/またはサービスすることを要求した1つ以上のリソースおよび/またはアセットを含む1つ以上の違反境界138−g−hを管理する、該当のディレクトリ・サービス・サーバー・デバイスを識別するように構成することができる。一旦該当するディレクトリ・サービス・サーバー・デバイスを識別したなら、アカウント・プロビジョニング・コンポーネント120は、更に、JITアカウントを作成するために、ネットワーク相互接続112および識別したディレクトリ・サービス・サーバー・デバイスの1つ以上のAPIを介して、識別したディレクトリ・サービス・サーバー・デバイスと通信するように構成することができる。加えて、アカウント・プロビジョニング・コンポーネント120は、新たに作成したJITアカウントおよび関連するJITアカウント情報をJITアカウント・データーストア126に格納し、それを引き出して再利用できるように、この新たに作成したJITアカウントおよび関連するJITアカウント情報をクライアント・アカウントと関連付けるように構成することができる。
[0064] 例示として、クライアント102−1に対して要求された役割がリモート・ユーザーおよびデバッガーを含み、要求された範囲が違反境界138−1−1を含み、要求がアカウント許可コンポーネント118によって許可されたと仮定すると、アカウント・プロビジョニング・コンポーネント120は、最初に、リモート・ユーザーおよびデバッガーの役割と、違反境界138−1−1を含む範囲とを有するJITアカウントが以前に作成されたか否か判定することができる。以前に作成されたJITアカウントがJITアカウント・データーストア126において発見され、その関連するJITアカウント情報がリモート・ユーザーおよびデバッガーの役割を含み、範囲が違反境界138−1−1を含むとき、アカウント・プロビジョニング・コンポーネント120は、JITアカウントに関連付けられ、以前に作成されおよび/または格納されているJITアカウント情報を引き出すことができる。
[0065] 上記例示を続けると、クライアント102−1に関連付けられたJITアカウントがJITアカウント・データーストア126において発見されなかったとき、アカウント・プロビジョニング・コンポーネント120は、新たなJITアカウントの作成のために、ディレクトリ・サービス・サーバー・デバイス130−1を識別してもよい。何故なら、要求された範囲が、ディレクトリ・サービス・サーバー・デバイス130−1によって管理されている違反境界138−1−1を含むからである。次いで、アカウント・プロビジョニング・コンポーネント120は、新たなJITアカウントを作成するために、ディレクトリ・サービス・サーバー・デバイス130−1と通信することができる。アカウント・プロビジョニング・コンポーネント120は、更に、引き出しおよび再利用のために、新たに作成したJITアカウントおよび関連するJITアカウント情報をJITアカウント・データーストア126に格納することができる。
[0066] 一旦JITアカウントが引き出されたならまたは作成されたなら、アカウント・プロビジョニング・コンポーネント120は、更に、引き出されたまたは作成されたJITアカウントが、クライアントによって要求されたのと同じ役割および範囲を有するように、少なくとも部分的に要求役割/範囲情報に基づいて、JITアカウントをイネーブルするように構成することができる。また、これは、作成された、または引き出された各JITアカウントが、クライアントに要求された通りにリソースおよび/またはアセットにおいてサービスにアクセスするまたはサービスを実行するために必要とされる、1組の最小限の範囲に設定された昇格アクセス許可を含むことも確保する。JITアカウントをイネーブルするために、アカウント・プロビジョニング・コンポーネント120は、更に、少なくとも部分的に要求役割/範囲情報に基づいて、1組のアクセス許可をJITアカウントに付与する、即ち、与えるように構成することができる。
[0067] 種々の実施形態では、admin管理アプリケーション114は、更に、アカウント通知コンポーネント122も含むことができる。アカウント通知コンポーネント122は、大まかには、1つ以上のクライアント・デバイス104−bを介して、1つ以上のクライアント102−aにクライアント・アカウント情報(例えば、クライアント・アカウント役割および範囲)、要求承認情報(例えば、アクセス許可を高める要求が承認されたかまたは拒否されたか)、監督承認情報、およびJITアカウント情報を通知し、1つ以上の通知メッセージにおいてこれらの情報を提供するように構成することができる。通知メッセージの例には、移動体SMSメッセージング、自動音声コール、電子メール、インタラクティブ・ウェブ・ベースの形式(form)、ウェブ警報、インターネットおよび/またはイントラネット・ベースのメッセージング・アプリケーション、あるいは昇格アクセス許可の承認および/または拒否に関して1つ以上のクライアント102−aに通知し、1つ以上のクライアント102−aに要求承認情報、監督承認情報、および/またはJITアカウント情報を提供する任意の他の手段を含むことができるが、これらに限定されるのではない。
[0068] 一実施形態では、アクセス許可を高める要求が拒否された後、アカウント通知コンポーネント122は、1つ以上のクライアント・デバイス104−bの1つ以上のアプリケーションおよび/またはコンポーネントを介して、1つ以上の通知メッセージにおいて、要求が拒否されたことをクライアント(例えば、クライアント102−1)に通知するように構成することができる。加えて、1つ以上の通知メッセージは、拒否に対する1つ以上の理由を示すことができるJITアカウント拒否情報も含むことができる(例えば、要求がクライアント・アカウントの役割および/または範囲を超過する)。
[0069] アクセス許可が昇格されたJITアカウントを求める要求が承認され、JITアカウントがプロビジョニングされた後、アカウント通知コンポーネント122は、クライアント・デバイス(例えば、クライアント・デバイス104−1)を介して、1つ以上の通知メッセージにおいて要求が承認されたことをクライアント(例えば、クライアント102−1)に通知するように構成することができる。また、アカウント通知コンポーネント122は、JITアカウントの役割および範囲に適合した1つ以上のリソースおよび/またはアセット(例えば、サーバー・デバイス140−1−1)に、クライアント(例えば、クライアント・デバイス104−1)がアクセスするおよび/またはサービスすることを可能にするのに十分な昇格アクセス許可を有しプロビジョニングされたJITアカウントに関連付けられたJITアカウント情報を提供するように構成することができる。
[0070] 他の実施形態では、アクセス許可が昇格されたJITアカウントをクライアント(例えば、クライアント102−1)のために求める要求を許可する前で、要求役割/範囲情報ならびにそのクライアントについてのクライアント・アカウント役割/範囲情報を判定した後に、アカウント通知コンポーネント122は、更に、アクセス許可が昇格されたJITアカウントを求める要求を許可する前に、1つ以上の通知メッセージによって、そのクライアント(例えば、クライアント102−1)のスーパーバイザーまたはマネージャ(例えば、クライアント102−2)に承認を要求するように構成することができる。1つ以上の要求を承認するかまたは拒否するときにスーパーバイザーまたはマネージャ(例えば、クライアント102−2)を更に補助するために、アカウント通知コンポーネント122は、更に、監督承認情報(例えば、要求役割/範囲アカウント情報、要求存続期間情報、ならびに昇格アクセス許可を要求したクライアント102−1に関連付けられたクライアント・アカウント役割/範囲情報)を、1つ以上の通知メッセージにおいてスーパーバイザーまたはマネージャ(例えば、クライアント102−2)に提供するように構成することができる。
[0071] 図1に示すJITアカウント・プロビジョニング・システムは、ある種のトポロジーではエレメント数が限定されていたが、JITアカウント・プロビジョニング・システム100は、代わりのトポロジーでは、所与の実施態様に合わせて望まれる通りに、もっと多いまたは少ないエレメントを含むこともできることは認めることができよう。同様に、種々の実施形態は、1つ以上のクライアント・デバイス104−b、サーバー・デバイス108、サーバー・デバイス106、および1つ以上のフォーレスト132−kを内包する企業用計算環境150を示すことができるが、クライアントおよび/またはサーバー・デバイスの内少なくとも一部は、所与の実施態様に合わせて、企業用計算環境150の外部にあってもよいことは認めることができよう。
[0072] 図2は、JITアカウント・プロビジョニング・システム100の他の実施形態を示す。JITアカウント・プロビジョニング・システム100の種々の実施形態では、更に、サーバー・デバイス202を含むことができる。サーバー・デバイス202は、大まかには、アプリケーションの中でもとりわけリソースおよびアセット管理アプリケーション204を実行するように構成することができる。ディレクトリ・サービス・サーバー・デバイス130−lは、更に、1つ以上の関連するセキュリティ・グループを利用して、1つ以上のセキュリティ境界138−g−hを実施する(implement)ように構成することができ、各セキュリティ・グループは、各セキュリティ・グループの1つ以上のメンバーに対する1つ以上のリソースおよび/またはアセットの1組のアクセス許可を管理するように構成することができる。
[0073] アセット管理アプリケーション204は、大まかには、ネットワーク相互接続112と、1つ以上のディレクトリ・サービス・サーバー・デバイス130−lのディレクトリ・サービス・アプリケーション(図示せず)の1つ以上のAPIとを介して、1つ以上のリソースおよび/またはアセットを1つ以上のセキュリティ・グループに構成する、即ち、分離するように構成することができる。一実施形態では、アセット管理アプリケーション204は、1つ以上の違反境界セキュリティ・グループ210−m−nを作成することによって、1つ以上のセキュリティ境界138−g−hを実施するように構成することができる。更に、漏洩したJITアカウントに対するアクセスを獲得した攻撃者の横方向移動を抑えるために、ある実施形態では、アセット管理アプリケーション204は、更に、1つのリソースおよび/またはアセットが、2つの異なる違反境界セキュリティ・グループのメンバーであるJITアカウントからアクセス可能またはサービス可能とならないように、1つ以上のリソースおよび/またはアセットを1つ以上の相互に排他的な、即ち、重複しない違反境界セキュリティ・グループ210−m−nに構成する、即ち、分離するように構成することができる。
[0074] 他の実施形態では、アセット管理アプリケーション204は、更に、1つ以上の違反境界セキュリティ・グループ210−m−nの各違反境界セキュリティ・グループに、1つ以上のリソースおよび/またはアセットに対する1組のアクセス許可を割り当てて(assign)、違反境界セキュリティ・グループに追加された任意のメンバー(例えば、1つ以上のJITアカウント)が、1組のアクセス許可にしたがってそのセキュリティ・グループによって管理される1つ以上のリソースおよび/またはアセットにアクセスできるように構成することができる。加えてまたは代わりに、1つ以上のリソースおよび/またはアセットが仮想デバイス(例えば、1つ以上の仮想機械を使用して実装される仮想サーバー・デバイス)を含む実施態様では、アセット管理アプリケーション204は、更に、プロビジョニングされる各リソースおよび/またはアセットが違反境界セキュリティ・グループと関連付けられるように、1つ以上のリソースおよび/またはアセットをプロビジョニングまたは展開するように構成することもできる。
[0075] 例示として、アセット管理アプリケーション204は、ネットワーク相互接続112とディレクトリ・サービス・サーバー・デバイス130−lのディレクトリ・サービス・アプリケーション(図示せず)の1つ以上のAPIとを利用して、関連する違反境界セキュリティ・グループ210−1−1および210−1−2をそれぞれ作成することによって、セキュリティ境界138−1−1および138−1−2を実施することができる。加えて、アセット管理アプリケーション204は、サーバー・デバイス140−1−1、140−1−2、140−1−3が違反境界セキュリティ・グループ138−1−1によって管理され、サーバー・デバイス140−1−4、140−1−5、140−1−6がセキュリティ・グループ138−1−2によって管理されるように構成することもできる。
[0076] 以上の例示を続けると、アセット管理アプリケーション204は、更に、違反境界セキュリティ・グループ210−1−1を、1組のアクセス許可をサーバー・デバイス140−1−1、140−1−2、140−1−3に付与する即ち与えるように構成することができる。1組のアクセス許可は、JITアカウントが違反境界セキュリティ・グループ210−1−1に追加されたときに、そのJITアカウントが、セキュリティ・グループ210−1−1に関連付けられた1組のアクセス許可にしたがって、サーバー・デバイス140−1−1、140−1−2、140−1−3にアクセスすることを可能にすることができる。
[0077] 以上の例示を更に続けると、アセット管理アプリケーション204は、違反境界セキュリティ・グループ210−1−2のメンバーであるJITアカウントが、違反境界セキュリティ・グループ210−1−2に関連付けられた1組のアクセス許可にしたがって、サーバー・デバイス140−1−4、140−1−5、140−1−6にアクセスできるように、違反境界セキュリティ・グループ210−1−1に関して論じたのと同様に、違反境界セキュリティ・グループ210−1−2も構成することができる。サーバー・デバイス140−1−1から140−16までが、サーバー・デバイス140−i−j上に存在する1つ以上の仮想機械を使用して実装された仮想サーバー・デバイスである実施態様では、アセット管理アプリケーション204は、仮想サーバー・デバイスのプロビジョニング・プロセス(例えば、作成および/または展開)の間に自動的に仮想サーバー・デバイスを構成することができる。
[0078] 尚、種々の実施形態では、2つの違反境界セキュリティ・グループ210−1−1および210−1−2のみを例示したが、アセット管理アプリケーション204は、1つ以上の役割に対して複数のグループ(例えば、リモート・アクセス・グループ、デバッガーグループ等)を作成するように構成することもでき、JITアカウントが役割に基づくアクセス制御(RBAC)を達成するために、ネスト状で多数のグループのメンバーになることができるように、各グループには、役割に関連付けられた1組のアクセス許可(例えば、1つ以上のリソースおよび/またはアセットへのリモート・アクセス、1つ以上のリソースおよび/またはアセットのデバッグ等)を関連付けることができることは認めることができよう。実施形態はこの文脈に限定されるのではない。
[0079] 適正な1組のアクセス許可が、プロビジョニングされたJITアカウントに付与される即ち与えられることを確保するために、admin管理アプリケーション114のアカウント・プロビジョニング・コンポーネント120は、更に、ネットワーク相互接続112と1つ以上のディレクトリ・サービス・サーバー・デバイス130−lのディレクトリ・サービス・アプリケーション(図示せず)の1つ以上のAPIとを利用することによって、該当する違反境界セキュリティ・グループ210−m−nを実施するディレクトリ・サービス・サーバー・デバイスを識別し、更に、1つ以上のリソースおよび/またはアセットへのアクセスを付与するように構成された1つ以上の違反境界セキュリティ・グループ210−m−nを識別するように構成することができる。一旦該当するディレクトリ・サービス・サーバー・デバイスおよび1つ以上の違反境界セキュリティ・グループ210−m−nが識別されたなら、アカウント・プロビジョニング・コンポーネント120は、プロビジョニングしたJITアカウントを、識別した違反境界セキュリティ・グループと関連付けるように構成することができる。
[0080] 一実施形態では、アカウント・プロビジョニング・コンポーネント120は、違反境界セキュリティ・グループに関連付けられた違反境界内の1つ以上のリソースおよび/またはアセットにアクセスするための1組のアクセス許可をJITアカウントに付与できるように、JITアカウントを1つ以上の違反境界セキュリティ・グループ210−m−nにメンバーとして追加することによって、JITアカウントを違反境界セキュリティ・グループ210−m−nと関連付けることができる。ある実施形態では、アカウント・プロビジョニング・コンポーネント120は、更に、攻撃者が漏洩したJITアカウントを使用して起こすおそれがある影響の範囲を更に限定するために、JITアカウントに関連付けることができる違反境界セキュリティ・グループ210−m−nの数を限定するように構成することができる(例えば、各JITアカウントには1つの違反境界セキュリティ・グループしか関連付けることができない)。
[0081] 例示として、アクセス許可が昇格されたJITアカウントに対してクライアント102−1から受けた要求役割/範囲情報が、違反境界138−1−1に対してリモート・ユーザーおよびデバッガーを含み、JITアカウントが既にプロビジョニングされていると仮定すると、アカウント・プロビジョニング・コンポーネント120は、最初に、違反境界セキュリティ・グループ210−1−1を利用して、1つ以上のディレクトリ・サービス・サーバー・デバイス130−lの中から、違反境界138−1−1を実施しているディレクトリ・サービス・サーバー・デバイス130−lを識別することができる。また、アカウント・プロビジョニング・コンポーネント120は、違反境界セキュリティ・グループ210−1−1を、1組のアクセス許可をサーバー・デバイス140−1−1、140−1−2、140−1−3に付与するように構成された違反境界セキュリティ・グループとして識別することができる。更に、アカウント・プロビジョニング・コンポーネント120は、プロビジョニングされたJITアカウントに、サーバー・デバイス140−1−1、140−1−2、140−1−3に対する1組のアクセス許可を付与するために、プロビジョニングされたJITアカウントを少なくとも識別された違反境界セキュリティ・グループ210−1−1に追加することによって関連付けることができる。尚、アカウント・プロビジョニング・コンポーネント120は、サーバー・デバイス140−1−1、140−1−2、140−1−3においてリモート・デバッグを実行するために、プロビジョニングしたJITアカウントがクライアント102−1によって使用できるように、リモート・ユーザーおよびデバッガーとしてアクセス許可を付与するために、プロビジョニングしたJITアカウントを他のグループ(例えば、リモート・ユーザー・グループ、デバッガーグループ等)に追加することによって関連付けることもできることは認めることができよう。
[0082] 種々の実施形態では、admin管理アプリケーション114が、更に、アカウント存続期間コンポーネント124も含むことができる。アカウント存続期間コンポーネント124は、大まかには、JITアカウント存続期間情報または既定のJITアカウント存続期間情報に基づいて、各JITアカウントに関連付けられた存続期間を管理するように構成することができる。アカウント存続期間コンポーネント124は、更に、ある時間期間が経過した後、1つ以上のJITアカウントをディスエーブルするおよび/または削除するように構成することができる。JITアカウント存続期間情報は、JITアカウントが失効しディスエーブルされるときの具体的な時刻または経過時間、およびJITアカウントが削除される具体的な時刻または経過時間を含むことができるが、これらに限定されるのではない。
[0083] 尚、ある実施形態では、JITアカウント存続期間情報は、所与の実施態様に合わせて、クライアント・デバイス104−bを介して1つ以上のクライアント102−aから受けたJITアカウント要求情報に基づいて判定されるおよび/または導き出されるのでもよいことは認めることができよう。他の実施形態では、JITアカウント要求情報は、JITアカウント役割/範囲情報によって示される1つ以上の役割に基づいて判定されるおよび/または導き出されてよく、ある役割(例えば、リモート・ユーザーおよびデバッガー)が2時間という関連JITアカウント存続期間を有するのでもよく、一方他の役割(例えば、バックアップ・オペレータ)が4時間という関連存続期間を有するのでもよい。実施形態はこの文脈において限定されるのではない。
[0084] 一実施形態では、アカウント存続期間コンポーネント124は、更に、1つ以上のクライアント102−aが、1つ以上のディレクトリ・サービス・サーバー・デバイス130−lによって管理される1つ以上のリソースおよび/またはアセットにアクセスするとき、ネットワーク相互接続112を介して1つ以上のディレクトリ・サービス・サーバー・デバイス130−lから1つ以上のアクセス承認要求を受けるように構成することができる。更に、アカウント存続期間コンポーネント124は、JITアカウントの存続期間が未だ終わっていないとき、それぞれのディレクトリ・サービス・サーバー・デバイス130−lによって管理される1つ以上のリソースおよび/またはアセットにアクセスすることを、自動的に1つ以上のクライアント102−aに承認するまたは許可するように構成することができる。
[0085] あるいは、アカウント存続期間コンポーネント124は、JITアカウントの存続期間が既に経過しているとき、それぞれのディレクトリ・サービス・サーバー・デバイス130−lによって管理される1つ以上リソースおよび/またはアセットに対するあらゆる1つ以上のクライアント102−aのアクセスを自動的に否認(deny)するように構成することができる。加えて、一実施形態では、アカウント存続期間コンポーネント124は、JITアカウントをディスエーブルする、および/またはJITアカウントを1つ以上の違反境界セキュリティ・グループから離脱させる(disassociate)ように構成することもできる。例えば、アカウント存続期間コンポーネント124は、全てのアクセス承認要求を否認することによってJITアカウントをディスエーブルし、新たな認証トークンを生成するが、この新たに生成した認証トークンをクライアント102−aに供給しないのでもよい。また、アカウント存続期間コンポーネントは、1つ以上の違反境界セキュリティ・グループにおけるメンバーシップからJITアカウントを削除することによって、JITアカウントを離脱させることもできる。
[0086] 一実施形態例では、JITアカウントの存続期間は、JITアカウントがプロビジョニングされた時点(例えば、アカウント・プロビジョニング・コンポーネント120によってプロビジョニングされた)から開始するのでもよく、JITアカウント存続期間情報に基づいて指定された時刻または経過時間において終了する。あるいは、JITアカウントの存続期間は、JITアカウントが最初に利用された(例えば、クライアントがリソースおよび/またはアセットにアクセスしようとした)時点から開始するのでもよく、JITアカウント存続期間情報に基づいて指定された時刻または経過時間において終了する。実施形態例は、この文脈において限定されるのではない。
[0087] 加えてまたは代わりに、アカウント存続期間コンポーネント124は、更に、任意のイネーブルされたJITアカウントを求めてJITアカウント・データーストア124を周期的にスキャンし、JITアカウント存続期間情報に基づいて、存続期間が既に経過したJITアカウントをいずれもディスエーブルするように構成することもできる。ある実施形態では、ディスエーブルされたJITアカウントは、直ちに、現在使用中のあらゆるJITアカウントおよびそれらの関連するアクティブなアクションまたはタスクも終了させる(例えば、強制ログオフ)。1つ以上のリソースおよび/またはアセットを管理する1つ以上のディレクトリ・サーバー・デバイス130−lが適正にJITアカウント・データーストア126と同期されることを確保するために、アカウント存続期間コンポーネント124は、更に、JITアカウントのJITアカウント存続期間情報を更新するためおよび/または存続期間が経過したJITアカウントをいずれもディスエーブルするために、ネットワーク相互接続112とディレクトリ・サービス・アプリケーション110の1つ以上のAPIとを介して通信するように構成することができる。
[0088] 加えてまたは代わりに、アカウント存続期間コンポーネント124は、更に、あらゆるディスエーブルされたJITアカウントを捜してJITアカウント・データーストア124を周期的にスキャンし、JITアカウント存続期間情報に基づいて、既定の時間期間にわたって利用されずにディスエーブルされたJITアカウント(例えば、インアクティブなJITアカウント)をいずれも削除するように構成することもできる。1つ以上のリソースおよび/またはアセットを管理する1つ以上のディレクトリ・サーバー・デバイス130−lが適正に同期されることを確保するために、アカウント存続期間コンポーネント124は、更に、ネットワーク相互接続112と1つ以上のディレクトリ・サーバー・デバイス130−lの1つ以上のディレクトリ・サービス・アプリケーション(図示せず)の1つ以上のAPIとを介して通信することによって、これらのディスエーブルされたJITアカウントを削除するように構成することができる。
[0089] 例示として、JITアカウント要求情報が、JITアカウントに対する要求存続期間が4時間であることを示す要求存続期間情報を含むように、クライアント102−1が、アクセス許可が昇格されたJITアカウントを、違反境界138−1−1に対してリモート・ユーザーおよびデバッガーとして要求したと仮定する。更に、JITアカウントが午後12時にクライアント102−1にプロビジョニングされ、このJITアカウントが、プロビジョニングされたJITアカウントの存続期間が4時間であり、プロビジョニングされたJITアカウントの存続期間が、JITアカウントがプロビジョニングされる時刻である午後12時から開始し、JITアカウントの存続期間が午後4時に終了することを示すJITアカウント存続期間情報を有すると仮定する。一実施形態例では、クライアント102−1が、プロビジョニングされたJITアカウントを使用して、クライアント・デバイス104−1およびネットワーク相互接続112を介して、午後4時前に遠方からサーバー・デバイス140−1−1にアクセスしようとしたとき(例えば、リモート・デスクトップ・プロトコル(RDP)を使用して)、アカウント存続期間コンポーネント124は、ディレクトリ・サービス・サーバー・デバイス130−lからのアクセス承認要求を許可する(grant)ことができる。
[0090] 以上の例を続けると、他の実施形態例では、アカウント存続期間コンポーネント124は、クライアント102−1が午後4時以降に、プロビジョニングされたJITアカウントを使用して遠方からサーバー・デバイス140−1−1にアクセスしようとしたとき(例えば、リモート・デスクトップ・プロトコル(RDP)を使用して)、ディレクトリ・サービス・サーバー・デバイス130−lからのアクセス承認要求を拒否することができる。また、アカウント存続期間コンポーネント124は、午後4時以降は、自動的にサーバー・デバイス140−1−1に対するアクセスをいずれも否認し、プロビジョニングされたJITアカウントをディスエーブルすることもできる。加えて、アカウント存続期間コンポーネント124は、プロビジョニングされたJITアカウントのメンバーシップを違反境界セキュリティ・グループ210−1−1から削除することによって、プロビジョニングされたJITアカウントを違反境界セキュリティ・グループ210−1−1から離脱させることもできる。更に、アカウント存続期間コンポーネント124は、連続する不動作期間(例えば、ログオンしない)(例えば、1日、1週間、1月、1年等)の後、ディスエーブルされたJITアカウントがクライアント102−1によって利用されていないとき、ディスエーブルされたJITアカウントを自動的にスキャンし、インアクティブなJITアカウントであると判定し、削除することもできる。
[0091] 各JITアカウントの存続期間との関連付けによって実現することができる少なくとも1つの技術的利点は、攻撃者が、いずれのJITアカウントであってもこれに対するアクセスを取得するのが、JITアカウントが未だイネーブルされているときだけに限られることである。加えて、JITアカウントが未だイネーブルされている時間にJITアカウントが漏洩しても、この漏洩したJITアカウントに関連付けられた存続期間に少なくとも部分的に基づいて、攻撃者が危害を加えることができる時間が限定される。実現することができる他の技術的利点は、「パス・ザ・ハッシュ攻撃」に伴う有効性の低下である。何故なら、攻撃者がJITアカウントの1つ以上の認証トークン(例えば、JITアカウントのハッシュおよび/またはソルトされたパスワード)へのアクセスを獲得しても、更に、現在イネーブルされているJITアカウントも発見しなければならないからである。実現することができる更に他の技術的利点は、1つ以上のインアクティブなJITアカウントの削除による攻撃表面または攻撃ベクトルの減少である。実現することができる更に他の技術的利点は、JITアカウントが存続期間を限定されて(例えば、4時間に制限される)、役割を限定されて(例えば、1つの役割に制限される)、役割のタイプを限定されて(例えば、デバッガーに制限される)、そして範囲を限定されて(例えば、1つの違反境界に制限される)プロビジョニングされると、プロビジョニングされるJITアカウント数の増大に伴う攻撃表面または攻撃ベクトルの増大を全て緩和できることである。加えて、存続期間限定、役割限定、役割タイプ限定、および範囲限定が、相互に排他的である、即ち、重複しないように配列された違反境界と組み合わせられると、漏洩したJITアカウントにアクセスすることができる攻撃者の横方向移動(例えば、違反境界間の移動)はいずれも、大きく制限されるかまたは不可能にさせることさえある。
[0092] 図3は、JITアカウント・プロビジョニング・システム100の他の実施形態を示す。JITアカウント・プロビジョニング・システム100の種々の実施形態では、更に、サーバー・デバイス302および306も含むことができる。これらは、大まかには、アプリケーションの中でもとりわけ、フェデレーテット・アイデンティティ・アプリケーション(federated identity application)304、および認証トークン管理アプリケーション308をそれぞれ実行するように構成することができる。加えて、少なくとも1つのクライアント・デバイスが、更に、JITアカウントに関連付けられた1つ以上の認証トークンを認証トークン・データーストア310に格納するように構成することができる。
[0093] 種々の実施形態において、フェデレーテット・アイデンティティ・アプリケーション304は、大まかには、1つ以上の認証プロトコル(例えば、Kerberosプロトコル)を利用する多要素認証(例えば、スマート・カード、パスワード/ピン、および/または指紋を利用する二要素認証)を行うように構成することができる。また、フェデレーテット・アイデンティティ・アプリケーション304は、大まかには、セキュリティ・トークン・サービスを提供し、1つ以上のセキュリティ・トークン(例えば、セキュリティ・アサーション・マークアップ言語(SAML: Security Assertion Markup Language)トークン)を1つ以上のクライアント102−aおよび/または要求可能化アプリケーション(claim enabled application)に発行して、1つ以上の要求可能化アプリケーションが、1つ以上のクライアント102−aに関連付けられたクライアント・アカウント情報(例えば、ユーザー・プリンシパル名(UPN)、アカウント識別子、アカウント・パスワードまたはそのハッシュ派生物、アカウント・ドメイン、スマート・カード証明書等)を直接受けることなくおよび/または処理することなく、クライアントを識別できるように構成することができる。フェデレーテット・アイデンティティ・アプリケーション304の具体例は、MICROSOFT Active Directory Federation Service(AD FS)、MICROSOFT Federation Gateway、または既に認証されているクライアントのアイデンティティをアサートすることの請求を含むセキュリティ・トークンを発行するように構成された任意の他のフェデレーテット・アイデンティティ・サービス・プロバイダを含むことができるが、これらに限定されるのではない。
[0094] 種々の実施形態において、admin管理アプリケーション114のアカウント管理コンポーネント116は、更に、フェデレーテット・アイデンティティ・アプリケーション304によって発行されたセキュリティ・トークンを1つ以上のクライアント・デバイス104−bから受けて、受けたセキュリティ・トークンに基づいて、昇格アクセス許可を要求する1つ以上のクライアント102−aを識別するように構成することができる。また、受けたセキュリティ・トークンは、1つ以上のクライアント102−aに関連付けられたクライアント・アカウント情報も含み、アカウント許可コンポーネント118が、1つ以上のクライアント102−aについてのクライアント・アカウント役割/範囲情報を判定することを可能にすることもできる。
[0095] 種々の実施形態において、認証トークン管理アプリケーション308は、大まかには、クライアントに関連付けられた1つ以上のJITアカウントの認証トークン(例えば、パスワード)を管理するように構成することができる。一実施形態では、認証トークン管理アプリケーション308は、フェデレーテット・アイデンティティ・アプリケーション304によって発行されたセキュリティ・トークンを1つ以上のクライアント・デバイス104−bから受け、これらの1つ以上のクライアント102−aを識別するように構成することができる。
[0096] 一実施形態では、認証トークン管理アプリケーション308は、更に、1つ以上のクライアント102−aと関連付けられたJITアカウントの集合体を得ることを求める1つ以上のクライアント102−aの要求に応答して、1つ以上のクライアント102−aに、JITアカウントの集合体およびそれらの関連するJITアカウント情報(例えば、JITアカウント存続期間情報、JITアカウント役割/範囲情報、JITアカウント識別子等)を管理のために提供するように構成することができる。更に、認証トークン管理アプリケーション308は、1つ以上のクライアント102−aから受けた1つ以上のJITアカウントに対する認証トークンを関連付けるように構成することができ、または1つ以上のJITアカウントに対する1つ以上の認証トークンを自動的に生成し関連付けるように構成することができる。
[0097] 他の実施形態では、認証トークン管理アプリケーション308は、更に、JITアカウント毎に受けた認証トークンまたは生成した認証トークンをJITアカウント・データーストア126に格納するように構成することができる。認証トークン管理アプリケーション308は、ネットワーク相互接続112およびディレクトリ・サービス・サーバー・デバイス130−lのディレクトリ・サービス・アプリケーション(図示せず)の1つ以上のAPIを利用することによって、1つ以上のクライアント102−aが、ディレクトリ・サービス・サーバー・デバイス130−lによって管理される1つ以上のリソースおよび/またはアセットにアクセスできるのでもよい(may be able to)ように、受けた認証トークンまたは生成した認証トークンによって1つ以上のJITアカウントを更新するように構成することができる。
[0098] 更に他の実施形態では、認証トークン管理アプリケーション308は、1つ以上の安全通信プロトコル(例えば、ハイパーテキスト・トランスファー・プロトコル・セキュア(HTTPS))を利用して、安全な接続(例えば、信頼および暗号化された接続)を介して、ネットワーク相互接続112およびクライアント・デバイス104−bを経由して1つ以上のクライアント102−aに認証トークンを供給することもできる。尚、例えば、クライアント・デバイス104−2のような、クライアント・デバイス104−bの内少なくとも一部が、少なくともJITアカウント識別子およびそれらに関連する認証トークンを暗号化フォーマットで、1つ以上の暗号化アルゴリズム(例えば、Twofish対称鍵ブロック暗号)を利用して、安全に格納するために、通信可能に認証トークン・データーストア310に結合されるとよいことは認めることができよう。このように、ある実施形態では、クライアント・デバイス104−2は、クライアント102−2に供給された任意の認証トークンを自動的に暗号化して認証トークン・データーストア310に格納し、クライアント102−2が、1つ以上のリソースおよび/またはアセットにアクセスするために、以前に格納されたJITアカウント識別子およびそれらに関連する認証トークンを後に引き出すことを可能にするように構成することができる。
[0099] JITアカウントに対する認証トークンが平文パスワードである実施態様では、認証トークン管理アプリケーション308は、例えば、少なくとも2つの異なるキャラクター・クラス(例えば、数値、文字、および/または記号)を最小キャラクター長(例えば、最小8キャラクター)と結合するというような、様々な複雑さの要件を有するランダム・パスワードを生成するように構成することができる。認証トークン管理アプリケーション308は、更に、1つ以上のディレクトリ・サービス・サーバー・デバイス130−lおよび/または1つ以上のリソースおよび/またはアセットが攻撃者によって漏洩したときに、平文パスワードを復元できないように、生成された平文パスワードまたはクライアントによって供給された平文パスワードをハッシュおよび/またはソルトするように構成することができる。しかしながら、平文パスワードがハッシュおよび/またはソルトされても、クライアント102−aは、クライアント102−aに供給された平文パスワードを使用して、1つ以上のリソースおよび/またはアセットにアクセスするためにJITアカウントを利用しつづけることができることは認めることができよう。
[00100] クライアントが認証トークンを設定または生成するのを容易にするために、admin管理アプリケーション114の通知コンポーネント122は、更に、1つ以上の通知メッセージにおいて、1つ以上のクライアント102−aが1つ以上のプロビジョニングされたJITアカウントのために1つ以上の認証トークンを設定および/または生成するために認証管理アプリケーション308にアクセスできるように、認証トークン管理アプリケーション308への参照を与えるように構成することができる。
[00101] 例示として、JITアカウントがクライアント102−2に違反境界138−1−2に対してプロビジョニングされていると仮定すると、通知コンポーネント122は、情報の中でもとりわけ、このプロビジョニングされたJITアカウントに関連付けられたJITアカウント識別子と、トークン管理アプリケーション308のURLとを電子メールによってクライアント102−2に供給することができる。次いで、クライアント102−2はクライアント・デバイス104−2の1つ以上のアプリケーションおよび/またはコンポーネント(例えば、計算デバイスのウェブ・ブラウザー)を利用して、トークン管理アプリケーション308にアクセスして、クライアント102−2に関連付けられてプロビジョニングされたJITアカウントを含む、JITアカウントの集合体を引き出すことができる。更に、クライアント102−2は、プロビジョニングされたJITアカウントに対してランダムな平文パスワードを設定および/または生成し、その後JITアカウント識別子および関連するランダムな平文パスワードを認証トークン・データーストア310に格納することができる。プロビジョニングされたJITアカウントを使用してサーバー・デバイス140−1−4、140−1−5、140−1−6にアクセスまたはサービスするために、クライアント102−2は、次いで、クライアント・デバイス104−2を介して、認証トークン・データーストア310に格納されているJITアカウント識別子および関連するランダムな平文パスワードを引き出し、引き出したJITアカウント識別子および関連するランダムな平文パスワードを使用してサーバー・デバイス140−1−4にアクセスすることができる。
[00102] 本明細書に含まれるのは、開示したアーキテクチャの新規な態様を実行する方法の具体例を表す1組のフロー・チャートである。説明を簡略化する目的のために、ここでは、例えば、フロー・チャートまたは流れ図の形態で示される1つ以上の方法を、一連のアクトとして示し説明するが、これらの方法論は、アクトの順序によって限定されないことは理解されそして認められよう。何故なら、本開示によれば、一部のアクトは、ここで示し説明する順序とは異なる順序で現れること、および/または他のアクトと同時に行われることも可能であるからである。例えば、方法は、代わりに、状態図におけるように、相互に関係付けられた一連の状態またはイベントとして表すことも可能であることは、当業者には理解されそして認められよう。更に、方法に例示される全てのアクトが、新規な実施態様には必要ではない場合もある。
[00103] 図4Aは、論理フロー400の一実施形態を示す。論理フロー400は、本明細書において説明した1つ以上の実施形態によって実行される動作の一部または全部を表すことができる。
[00104] 図4Aに示す例示用実施形態(illustrated embodiment)では、論理フロー400はブロック402において開始することができ、ブロック404において、アクセス許可が昇格されたJITアカウントを要求するクライアントを認証することができる。例えば、アカウント管理コンポーネント116は、関連クライアント・アカウントを有しアクセス許可が昇格された1つ以上のJITアカウントを要求するクライアント102−1を認証することができる。また、アカウント管理コンポーネント116は、クライアント102−1が、このクライアント・アカウントよりも高いアクセス許可を必要とするサーバー・デバイス140−1−1にアクセスするまたはサービスするために、クライアント・デバイス104−1を介して、アクセス許可が昇格されたJITアカウントを要求することを可能にするのでもよい。
[00105] 論理フロー400は、ブロック406において、アクセス許可が昇格されたJITアカウントを求める要求を受けることができる。例えば、アカウント管理コンポーネント116は、サーバー・デバイス140−1−1にアクセスするまたはサービスするために1組の昇格アクセス許可を有するJITアカウントを求める要求を、クライアント・デバイス140−1を介して、関連クライアント・アカウントを有するクライアント102−1から受けることができる。
[00106] 論理フロー400は、ブロック408において、受けた要求を許可するか否か決定することができる。例えば、アカウント許可コンポーネント118は、少なくとも部分的に、クライアント102−1のクライアント・アカウントに関連付けられたクライアント・アカウント情報、およびクライアント・デバイス104−1を介してクライアント102−1に関連付けられたクライアント・アカウントから受けたJITアカウント要求情報に基づいて、JITアカウントを求める要求を許可するか否か決定することができる。
[00107] 論理フロー400は、ブロック412において、要求が許可されたときにJITアカウントをプロビジョニングすることができる。例えば、アカウント・プロビジョニング・コンポーネント120は、JITアカウントを求める要求がアカウント許可コンポーネント118によって許可されたときに、クライアント102−1がサーバー・デバイス140−1−1にアクセスすることを可能にする、アクセス許可が昇格されたJITアカウントをプロビジョニングすることができる。
[00108] 論理フロー400は、ブロック414において、JITアカウント情報を提供するか、またはJITアカウント拒否情報を提供し、ブロック416において終了することができる。例えば、アカウント通知コンポーネント122は、JITアカウントを求める要求が許可されたとき、プロビジョニングされた昇格アクセス許可を有するJITアカウントに関連付けられたJITアカウント情報を、クライアント102−1に提供することができる。あるいは、JITアカウントを求める要求がアカウント許可コンポーネント118によって許可されなかったときは、アカウント通知コンポーネント122は、JITアカウント拒否情報をクライアント102−1に、クライアント・デバイス104−1を介して提供することができ、JITアカウント拒否情報は、拒否に対する1つ以上の理由を示すことができる。実施形態はこれらの例に限定されるのではない。
[00109] 図4Bは、論理フロー420、具体的には図4Aのブロック408の一実施形態を示す。論理フロー420は、本明細書において説明した1つ以上の実施形態において実行される動作の一部または全部を表すことができる。
[00110] 図4Bに示す例示用実施形態では、論理フロー420はブロック422において開始することができ、ブロック424において、要求に関連付けられた役割および範囲を判定することができる。例えば、アカウント許可コンポーネント118は、JITアカウントを求める要求に関連付けられた役割(例えば、リモート・ユーザーおよびデバッガー)および範囲(違反境界138−1−1)を、少なくとも部分的にクライアント・デバイス104−1を介してクライアント102−1から受けたJITアカウント要求情報に基づいて判定することができる。
[00111] 論理フロー420は、ブロック426において、クライアント・アカウントに関連付けられた役割および範囲を判定することができる。例えば、アカウント許可コンポーネント118は、クライアント102−1のクライアント・アカウントに関連付けられた役割(例えば、リモート・ユーザーおよびデバッガー)および範囲(フォーレスト132−1)を、少なくとも部分的にクライアント102−1に関連付けられたクライアント・アカウント情報に基づいて判定することができる。アカウント許可コンポーネント118は、クライアント102−1についてのクライアント・アカウント情報を、ディレクトリ・サービス・アプリケーション110および/またはクライアント102−1によってクライアント・デバイス104−1を介して供給されたセキュリティ・トークンから受けることができる。
[00112] 論理フロー420は、ブロック428において、要求された役割および範囲がアカウントの役割および範囲に該当するか否か判定することができる。例えば、アカウント許可コンポーネント118は、要求された役割(1つまたは複数)および範囲をアカウントの役割(1つまたは複数)および範囲と比較することによって、要求された役割および範囲が、アカウントの役割(1つまたは複数)および範囲に該当するか、または 適合するか否か判定することができる。
[00113] 論理フロー420は、ブロック432において、要求された役割および範囲がアカウントの役割および範囲に該当しないとき、要求を拒否し、ブロック436において終了することができる。例えば、アカウント許可コンポーネント118は、要求された役割がリモート・ユーザーおよびデバッガーを含み、要求範囲が違反境界138−1−1を含み、一方アカウントの役割がデバッガーを含むがリモート・ユーザーを含まず、アカウント範囲がフォーレスト132−2を含むとき、要求を拒否することができる。
[00114] 論理フロー420は、ブロック432において、要求された役割および範囲がアカウントの役割および範囲に該当するとき、要求を許可し、ブロック436において終了することができる。例えば、アカウント許可コンポーネント118は、要求された役割がリモート・ユーザーおよびデバッガーを含み、要求範囲が違反境界138−1−1を含み、一方アカウントの役割もリモート・ユーザーおよびデバッガーを含み、アカウント範囲が違反境界138−1−1を含むフォーレスト132−1を含むとき、要求を許可することができる。実施形態は、これらの例に限定されるのではない。
[00115] 図4Cは、論理フロー440、具体的には、図4Aのブロック412の一実施形態を示す。論理フロー440は、本明細書において説明した1つ以上の実施形態によって実行される動作の一部または全部を表すことができる。
[00116] 図4Cに示す例示用実施形態では、論理フロー440はブロック442において開始し、ブロック444において、要求された役割および範囲を有するJITアカウントの存在を判定することができる。例えば、アカウント・プロビジョニング・コンポーネント120は、JITアカウント・データーストア126を検索および/またはスキャンし、要求役割/範囲情報を既存のJITアカウントのJITアカウント役割/範囲情報と比較することによって、要求された役割および範囲ならびに1組の昇格アクセス許可を有するJITアカウントの存在を判定することができる。アカウント・プロビジョニング・コンポーネント120は、更に、既存のJITアカウントに関連付けられたJITアカウント役割/範囲情報と、クライアント102−1から受けた要求役割/範囲情報との間における実質的な一致を判定することができる。
[00117] 論理フロー440は、ブロック448において、クライアントに要求された役割および範囲を有するJITアカウントが既に存在するときに、既存のJITアカウントを引き出すことができる。例えば、アカウント・プロビジョニング・コンポーネント120が、要求された役割および範囲を有するJITアカウントが既にクライアント120−1のために存在すると判定したとき、アカウント・プロビジョニング・コンポーネント120は、既に作成されているJITアカウントに関連付けられたJITアカウント情報を、クライアント120−1のためにJITアカウント・データーストア126から引き出すことができる。
[00118] 論理フロー440は、ブロック450において、要求された役割および範囲を有するJITアカウントがまだそのクライアントのために存在していないとき、JITアカウントを作成することができる。例えば、アカウント・プロビジョニング・コンポーネント120は、要求の役割および範囲を有する既存のJITがJITアカウント・データーストア126において発見されなかったとき、サーバー・デバイス140−1−1にアクセスするためのJITアカウントをクライアント102−1のために作成することができる。
[00119] 論理フロー440は、ブロック452においてJITをイネーブルし、ブロック454において終了することができる。例えば、一旦JITアカウントが作成されたかまたは引き出されたなら、アカウント・プロビジョニング・コンポーネント120は、クライアント102−2が、イネーブルされたJITアカウントを使用して、サーバー・デバイス140−1−1にアクセスまたはサービスすることを可能にすることができるように、1組の昇格アクセス許可を有するJITアカウントをイネーブルすることができる。実施形態は、これらの例に限定されるのではない。
[00120] 図4Dは、論理フロー470、具体的には、図4Cのブロック452の一実施形態を示す。論理フロー470は、本明細書において説明した1つ以上の実施形態によって実行される動作の一部または全部を表すことができる。
[00121] 図4Dに示す例示用実施形態では、論理フロー470はブロック472において開始することができ、ブロック474において、違反境界へのアクセスを付与するように構成されたセキュリティ・グループを識別することができる。例えば、JITアカウントに対して要求された範囲が違反境界138−1−1を含むと仮定すると、アカウント・プロビジョニング・コンポーネント120は、ネットワーク相互接続112とディレクトリ・サービス・サーバー・デバイス130−lのディレクトリ・サービス・アプリケーション(図示せず)の1つ以上のAPIとを利用することによって、違反境界セキュリティ・グループ210−1−1を、違反境界138−1−1へのアクセスを付与するように構成されているものと識別することができる。
[00122] 論理フロー470は、ブロック476において、JITアカウントを、識別されたセキュリティ・グループと関連付け、ブロック478において終了することができる。例えば、一旦違反境界セキュリティ・グループ210−1−1が識別されたなら、違反境界138−1−1内のサーバー・デバイス140−1−1、140−1−2、140−1−3へのアクセスを可能にするためにJITアカウントに1組のアクセス許可を付与することができるように、このJITアカウントを違反境界セキュリティ・グループ210−1−1にメンバーとして追加することによって、アカウント・プロビジョニング・コンポーネント120はJITアカウントを違反境界セキュリティ・グループ210−1−1と関連付けることができる。実施形態は、これらの例に限定されるのではない。
[00123] 図4Eは、論理フロー480の一実施形態を示す。論理フロー478は、本明細書において説明した1つ以上の実施形態によって実行される動作の一部または全部を表すことができる。
[00124] 図4Eに示す例示用実施形態では、論理フロー480はブロック482において開始することができ、ブロック484においてJITアカウントの存続期間を判定することができる。例えば、アカウント存続期間コンポーネント124は、クライアント102−1からクライアント・デバイス104−1を介して受けたJITアカウント要求情報に基づいて、JITアカウントの存続期間を判定することができる。あるいは、アカウント存続期間コンポーネント124は、JITアカウント役割/範囲情報に基づいて、JITアカウントの存続期間を判定することもできる。
[00125] 論理フロー480は、ブロック484において、JITアカウントの存続期間が終了したか否か判定することができる。例えば、JITアカウント存続期間情報が、アクセス・サーバー・デバイス140−1−1にプロビジョニングされたJITアカウントの存続期間が2時間であり、JITアカウントの存続期間が、JITアカウントがプロビジョニングされた時点である午後1時から開始することを示すと仮定する。アカウント存続期間コンポーネント124は、アカウント存続期間コンポーネント124が午後3時15分にサーバー・デバイス140−1−1にアクセスするためのアクセス承認要求をディレクトリ・サービス・サーバー・デバイス130−lから受けたときには、JITアカウントの存続期間が終了していると判定することができる。あるいは、アカウント存続期間コンポーネント124は、アカウント存続期間コンポーネント124が午後1時30分にサーバー・デバイス140−1−1にアクセスするためのアクセス承認要求をディレクトリ・サービス・サーバー・デバイス130−lから受けたときには、JITアカウントの存続期間が未だ終了していないと判定することができる。
[00126] 論理フロー480は、ブロック490において、JITアカウント存続期間が終了したときにJITアカウントをディスエーブルし、ブロック492において終了することができる。例えば、JITアカウント存続期間情報が、JITアカウントの存続期間が2時間であること、そして2時間が既に経過したのでJITアカウントの存続期間は既に終了していることを示すと仮定する。すると、アカウント存続期間コンポーネント124は、失効したJITアカウントを使用してクライアントがサーバー・デバイス140−1−1にアクセスするときに、ディレクトリ・サービス・サーバー・デバイス130−lから受けたサーバー・デバイス140−1−1に対するあらゆるアクセス承認要求を拒否することによって、JITアカウントを自動的に拒否することができる。実施形態は、これらの例に限定されるのではない。
[00127] 図5は、既に説明した種々の実施形態を実現するのに適した例示用計算アーキテクチャ500の実施形態を示す。一実施形態では、計算アーキテクチャ500は、クライアント・デバイスおよび/またはサーバー・デバイスの一部を含んでもよく、またはその一部として実装されてもよい。実施形態はこの文脈において限定されることはない。
[00128] 本願において使用する場合、「システム」および「コンポーネント」という用語は、ハードウェア、ハードウェアおよびソフトウェアの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかのコンピューター関連エンティティを指すことを意図しており、その例は具体例としての計算アーキテクチャ500によって示される。例えば、コンポーネントは、プロセッサー上で実行するプロセス、プロセッサー、ハード・ディスク・ドライブ、多数の記憶デバイス(光および/または磁気記憶媒体の)、オブジェクト、実行可能ファイル、実行のスレッド、プログラム、および/またはコンピューターであることが可能であるが、これらに限定されるのではない。例示として、サーバー上で実行するアプリケーションおよびサーバーの双方がコンポーネントであることが可能である。1つ以上のコンポーネントがプロセスおよび/または実行のスレッド内に常駐する(reside)ことができ、コンポーネントが1つのコンピューター上に集中配置される(localize)こと、および/または2つ以上のコンピューター間で分散されることが可能である。更に、コンポーネントは、動作を調整するために、種々のタイプの通信媒体によって互いに通信可能に結合することができる。調整には、一方向または双方向の情報交換を必要とする場合もある。例えば、コンポーネントは、通信媒体上で伝達される信号の形態で、情報を伝達することができる。情報は、種々の信号線に割り当てられる信号として実現することができる。このような割り当てでは、各メッセージが信号となる。しかしながら、他の実施形態では、代わりにデーター・メッセージを採用することもできる。このようなデーター・メッセージは、種々の接続を通して送ることができる。接続の具体例には、パラレル・インターフェース、シリアル・インターフェース、およびバス・インターフェースが含まれる。
[00129] 計算アーキテクチャ500は、1つ以上のプロセッサー、マルチコア・プロセッサー、コプロセッサー、メモリー・ユニット、チップセット、コントローラー、周辺素子、インターフェース、発振器、タイミング・デバイス、ビデオ・カード、オーディオ・カード、マルチメディア入力/出力(I/O)コンポーネント、電源等のような、種々の共通する計算エレメントを含む。しかしながら、実施形態は計算アーキテクチャ500による実現に限定されるのではない。
[00130] 図5に示すように、計算アーキテクチャ500は、処理ユニット504、システム・メモリー506、およびシステム・バス508を含む。処理ユニット504は、種々の市販のプロセッサーの内任意のものとすることができ、限定ではなく、AMD(登録商標)Athlon(登録商標)、Duron(登録商標)およびOpteron(登録商標)プロセッサー、ARM(登録商標)アプリケーション、埋め込みおよびセキュア・プロセッサー、IBM(登録商標)およびMotorola(登録商標)DragonBall(登録商標)、およびPowerPC(登録商標)プロセッサー、IBMおよびSony(登録商標)Cellプロセッサー、Intel(登録商標)Celeron(登録商標)、Core(2)Duo(登録商標)、Itanium(登録商標)、Pentium(登録商標)、Xeon(登録商標)、およびXScale(登録商標)プロセッサー、ならびに同様のプロセッサーを含む。デュアル・マイクロプロセッサー、マルチコア・プロセッサー、および他のマルチプロセッサー・アーキテクチャも、処理ユニット504として採用することができる。
[00131] システム・バス508は、システム・メモリー506から処理ユニット504までを含むがこれらに限定されないシステム・コンポーネントのためにインターフェースを設ける。システム・バス508は、種々のタイプのバス構造の内任意のものにすることができ、更に、メモリー・バス(メモリー・コントローラー付きまたはメモリー・コントローラーなし)、周辺バス、およびローカル・バスに、種々の市販のバス・アーキテクチャの内任意のものを使用して相互接続することができる。インターフェース・アダプターがシステム・バス508に、スロット・アーキテクチャを介して接続することもできる。スロット・アーキテクチャの例には、限定ではなく、加速グラフィクス・ポート(AGP)、カード・バス、(拡張)業界標準アーキテクチャ((E)ISA)、マイクロ・チャネル・アーキテクチャ(MCA)、NuBus、周辺素子相互接続(拡張)(PCI(X))、PCIExpress、パーソナル・コンピューター・メモリー・カード国際連合(PCMCIA)等を含むことができる。
[00132] 計算アーキテクチャ500は、種々の製品(articles of manufacture)を含むまたは実装することができる。製品は、ロジックを格納するためのコンピューター読み取り可能記憶媒体を含むこともできる。コンピューター読み取り可能記憶媒体の例には、電子データーを格納することができるあらゆる有形媒体を含むことができ、揮発性メモリーまたは不揮発性メモリー、リムーバブルまたは非リムーバブル・メモリー、消去可能または消去不可メモリー、書き込み可能または再書き込み可能メモリー等を含むことができる。ロジックの例には、ソース・コード、コンパイル・コード(compiled code)、インタプリタ・コード(interpreted code)、実行可能コード、スタティック・コード、ダイナミック・コード、オブジェクト指向コード、ビジュアル・コード等というような、任意の適したタイプのコードを使用して実装される実行可能コンピューター・プログラム命令を含むことができる。また、実施形態は、少なくとも部分的に、一時的ではないコンピューター読み取り可能媒体内またはその上に収容される命令として実現することもでき、本明細書において説明した動作の実行を可能にするために、1つ以上のプロセッサーによって読み取り実行することができる。
[00133] システム・メモリー506は、リード・オンリー・メモリー(ROM)、ランダム・アクセス・メモリー(RAM)、ダイナミックRAM(DRAM)、データー倍速DRAM(DDRAM)、同期DRAM(SDRAM)、スタティックRAM(SRAM)、プログラマブルROM(PROM)、消去可能プログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、フラッシュ・メモリー、強磁性ポリマー・メモリーのようなポリマー・メモリー、オボニック・メモリー、位相変化または強磁性メモリー、シリコン−酸化物−窒化物−酸化物−シリコン(SONOS)メモリー、磁気または光カード、独立ディスクの冗長アレイ(RAID)ドライブのようなデバイスのアレイ、ソリッド・ステート・メモリー・デバイス(例えば、USBメモリー、ソリッド・ステート・ドライブ(SSD)、およびは情報を格納するのに適した他のあらゆるタイプの記憶媒体というような、1つ以上の高速メモリー・ユニットの形態とした種々のタイプのコンピューター読み取り可能記憶媒体を含むことができる。図5に示す例示の実施形態では、システム・メモリー506は不揮発性メモリー510および/または揮発性メモリー512を含むことができる。基本入力/出力システム(BIOS)は、不揮発性メモリー510に格納することができる。
[00134] コンピューター502は、1つ以上の低速メモリー・ユニットの形態とした種々のタイプのコンピューター読み取り可能記憶媒体を含むことができ、内部(または外部)ハード・ディスク・ドライブ(HDD)514、リムーバブル磁気ディスク518に対して読み取りまたは書き込みを行うための磁気フロッピー・ディスク・ドライブ(FDD)516、ならびにリムーバブル光ディスク522(例えば、CD−ROMまたはDVD)に対する読み取りまたは書き込みを行うための光ディスク・ドライブ520を含む。HDD514、FDD516、および光ディスク・ドライブ520は、それぞれ、HDDインターフェース524、FDDインターフェース526、および光ドライブ・インターフェース528によって、システム・バス508に接続することができる。外部ドライブ実装用のHDDインターフェース524は、ユニバーサル・シリアル・バス(USB)およびIEEE1394インターフェース技術の少なくとも一方または両方を含むことができる。
[00135] ドライブおよび付随するコンピューター読み取り可能媒体は、データー、データー構造、コンピューター実行可能命令等の揮発性および/または不揮発性ストレージを提供する。例えば、多数のプログラム・モジュールをドライブおよびメモリー・ユニット510、512に格納することができ、これらのプログラム・モジュールは、オペレーティング・システム530、1つ以上のアプリケーション・プログラム532、他のプログラム・モジュール534、およびプログラム・データー536を含む。一実施形態では、1つ以上のアプリケーション・プログラム532、他のプログラム・モジュール534、およびプログラム・データー536は、例えば、システム100の種々のアプリケーションおよび/またはコンポーネントを含むことができる。
[00136] ユーザーは、1つ以上の有線/ワイヤレス入力デバイス、例えば、キーボード538およびマウス540のようなポインティング・デバイスによって、コマンドおよび情報をコンピューター502に入力することができる。他の入力デバイスは、マイクロフォン、赤外線(IR)遠隔制御手段、無線周波数(RF)遠隔制御手段、ゲーム・パッド、スタイラス・ペン、カード・リーダー、ドングル、指紋読み取り装置、グローブ、グラフィクス・タブレット、ジョイスティック、キーボード、網膜読み取り装置、タッチ・スクリーン(例えば、容量式、抵抗式等)、トラックボール、トラックパッド、センサ、スタイラス等を含むことができる。これらおよびその他の入力デバイスは、多くの場合、入力デバイス・インターフェース542を介して処理ユニット504に接続され、入力デバイス・インターフェース542はシステム・バス508に結合されるが、パラレル・ポート、IEEE1394シリアル・ポート、ゲーム・ポート、USBポート、IRインターフェース等というような、他のインターフェースによって接続することもできる。
[00137] モニター544または他のタイプのディスプレイ・デバイスも、ビデオ・アダプター546のようなインターフェースを介して、システム・バス508に接続される。モニター544は、コンピューター502に対して内部でもまたは外部でもよい。モニター544に加えて、コンピューターは、通例、スピーカー、プリンター等のような、他の周辺出力デバイスを含む。
[00138] コンピューター502は、論理接続を使用して、ネットワーク接続環境において、リモート・コンピューター548のような1つ以上のリモート・コンピューターへの有線通信および/またはワイヤレス通信によって動作することもできる。リモート・コンピューター548は、ワークステーション、サーバー・コンピューター、ルーター、パーソナル・コンピューター、携帯用コンピューター、マイクロプロセッサー・ベースの娯楽アプライアンス、ピア・デバイスまたは他の共通ネットワーク・ノードとすることができ、通例、コンピューター502に関して説明したエレメントの多くまたは全部を含むが、簡潔さの目的のために、メモリー/記憶デバイス550だけが示される。図示する論理接続は、ローカル・エリア・ネットワーク(LAN)552、および/またはそれよりも大きなネットワーク、例えば、ワイド・エリア・ネットワーク(WAN)554に対する有線/ワイヤレス接続(connectivity)を含む。このようなLANおよびWANネットワーキング環境は、事務所や会社では極一般的であり、イントラネットのような企業規模のコンピューター・ネットワークを容易にする。イントラネットの全ては、グローバル通信ネットワーク、例えば、インターネットに接続することもできる。
[00139] LANネットワーキング環境において使用される場合、コンピューター502は有線および/またはワイヤレス通信ネットワーク・インターフェースあるいはアダプター556を介して、LAN552に接続される。アダプター556は、LAN552に対する有線通信および/またはワイヤレス通信を容易にすることができ、アダプター556のワイヤレス機能性と通信するために配置されるワイヤレス・アクセス・ポイントも含むことができる。
[00140] WANネットワーキング環境において使用される場合、コンピューター502はモデム558を含むことができ、あるいはWAN554上の通信サーバーに接続されるか、またはインターネットによってというように、WAN554上に通信を確立する他の手段を有する。モデム558は、内蔵型または外付け型の有線デバイスおよび/またはワイヤレス・デバイスとすることができ、入力デバイス・インターフェース542を介してシステム・バス508に接続する。ネットワーク接続環境では、コンピューター502に関して図示したプログラム・モジュール、またはその一部をリモート・メモリー/記憶デバイス550に格納することができる。尚、図示するネットワーク接続は例示であり、コンピューター間に通信リンクを確立する他の手段を使用することもできることは認められよう。
[00141] コンピューター502は、ワイヤレス通信(例えば、IEEE802.11オーバー・ジ・エア変調技法)において動作的に配置されるワイヤレス・デバイスのような、標準のIEEE802ファミリーを使用して、有線およびワイヤレス・デバイスまたはエンティティと通信するように動作可能である。これは、少なくとも、Wi−Fi(即ち、ワイヤレス・フィデリティ)、WiMax、およびBluetooth(登録商標)ワイヤレス技術をとりわけ含む。このように、通信は、従来のネットワークのような、予め定められた構造であること、または単に少なくとも2つのデバイス間におけるアド・ホック通信であることができる。Wi−Fiネットワークは、安全で、信頼性が高く、高速なワイヤレス接続性を提供するために、IEEE802.11x(a、b、g、n等)と呼ばれる無線技術を使用する。Wi−Fiネットワークは、コンピューターを互いに接続するため、インターネットに接続するため、そして有線ネットワーク(IEEE802.3関連媒体および機能を使用する)に接続するために使用することができる。
[00142] 実施形態には、「一実施形態」(one embodiment)または「実施形態」(an embodiment)という表現をその派生語と共に使用して説明するとよいものがある。これらの用語は、当該実施形態と関連付けて説明された特定の特徴、構造、または特性が、少なくとも1つの実施形態に含まれることを意味する。本明細書の種々の場所において「一実施形態では」という句が出てくる場合、必ずしも全てが同じ実施形態を指す訳ではない。更に、実施形態は、「結合される」(coupled)および「接続される」(connected)という表現を、その派生語と共に使用して説明することもできる。これらの用語は、必ずしも互いに対する同義語であることを意図しているのではない。例えば、実施形態の中には、2つ以上のエレメントが直接物理的にまたは電気的に互いに接触していることを示すために、「接続される」および/または「結合される」という用語を使用して説明するとよい場合がある。しかしながら、「結合される」という用語は、2つ以上のエレメントが互いに直接接触していないが、それでも互いに協働するまたは相互作用することを意味することもできる。
[00143] 尚、開示の要約は、読者が本技術的開示の固有性を素早く確認することを可能にするために設けられることを強調しておく。尚、これは、請求項の範囲または意味を解釈するためや限定するために使用されるのではないことを理解した上で申し述べられることである。加えて、以上の詳細な説明では、開示を簡素化する目的に限って、1つの実施形態において種々の特徴が一緒に纏められていることがわかるであろう。この開示方法は、特許請求する実施形態が各請求項において明示的に記載されるよりも多くの特徴を必要とするという意図を表す(reflect)というように解釈してはならない。逆に、以下の特許請求の範囲が表すように、発明の主題は、1つの開示された実施形態の全ての特徴に存在する訳ではない。つまり、以下の特許請求の範囲は詳細な説明に含まれ、各請求項が別個の実施形態としてそれ自体を成り立たせている(stand on its own)。添付した特許請求の範囲において、「含む」(including)および「において」(in which)という用語は、それぞれ、「含む」(comprising)および「において」(wherein)というそれぞれの用語の平素な英語の同等語(equivalent)として使用されるものとする。更に、「第1」、「第2」、「第3」等の用語は、単に名称として使用されるのであり、それらの目的語に対して数値的な要件を強制することは意図していない。
[00144] 以上で説明したことは、開示されたアーキテクチャの例を含む。勿論、コンポーネントおよび/または方法の着想可能なあらゆる組み合わせを記載することは不可能であるが、多くの他の組み合わせや置換(permutations)も可能であることは、当業者には認めることができよう。したがって、新規なアーキテクチャは、添付した請求項の主旨および範囲に該当するような全ての改変、変更、および変形を包含することを意図している。

Claims (15)

  1. 装置であって、
    プロセッサー回路と、
    前記プロセッサー回路による実行のためのサーバー・アプリケーションと、
    を含み、前記サーバー・アプリケーションが、
    第1アカウントを有するクライアントからの、1組のサーバー・デバイスにおけるサーバー・デバイスにアクセスするための第2アカウントを求める要求を、クライアント・デバイスを介して受けるアカウント管理コンポーネントと、
    少なくとも部分的に前記第1アカウントに関連付けられたアカウント情報に基づいて、前記第2アカウントを求める要求を許可するアカウント許可コンポーネントと、
    クライアントが前記サーバー・デバイスにアクセスすることを可能にするために前記第2アカウントをプロビジョニングするアカウント・プロビジョニング・コンポーネントと、
    前記第2アカウントに関連付けられたアカウント情報を前記クライアントに前記クライアント・デバイスを介して提供するアカウント通知コンポーネントと、
    を含む、装置。
  2. 請求項1記載の装置において、前記アカウント許可コンポーネントが、更に、
    前記要求に関連付けられた範囲および役割を判定し、
    前記第1アカウントに関連付けられた前記アカウント情報に基づいて、前記第1アカウントに関連付けられた範囲および役割を判定し、
    少なくとも部分的に前記第1アカウントの前記範囲および役割に基づいて、前記要求を許可する、装置。
  3. 請求項2記載の装置において、前記アカウント・プロビジョニング・コンポーネントが、更に、
    前記要求に関連付けられた役割および範囲に基づいて、1組の昇格アクセス許可を有する前記第2アカウントの存在を判定し、
    前記第2アカウントが存在しないとき、前記サーバー・デバイスへのアクセスのために前記第2アカウントを作成し、
    前記サーバー・デバイスへのアクセスのために前記第2アカウントをイネーブルする、装置。
  4. 請求項3記載の装置において、前記アカウント許可コンポーネントが、更に、
    前記サーバー・デバイスを含む違反境界へのアクセスを付与するように構成されたセキュリティ・グループを識別し、
    前記第2アカウントの前記違反境界におけるサーバー・デバイスへのアクセスをイネーブルするために、前記第2アカウントを前記セキュリティ・グループと関連付ける、装置。
  5. 請求項1記載の装置において、前記1組のサーバー・デバイスが、複数の違反境界にセグメント化され、前記複数の違反境界の各違反境界が、各違反境界内における1組のサーバー・デバイスへのアクセスを付与するように構成された1つのセキュリティ・グループに関連付けられる、装置。
  6. 請求項1記載の装置において、アクセス許可を高めることを求める前記要求が、存続期間と関連付けられ、前記存続期間が、前記サーバー・デバイスへのアクセスをイネーブルする規定時間期間を含み、前記第2アカウントが前記規定時間期間の終了時に自動的にディスエーブルされる、装置。
  7. 請求項1記載の装置において、前記サーバー・デバイスが、前記第1アカウントに関連付けられた1組のアクセス許可よりも高い1組のアクセス許可を要求し、前記第2アカウントが、前記第1アカウントに関連付けられた前記1組のアクセス許可よりも高い1組の上位アクセス許可を有する、装置。
  8. 複数の命令を含む少なくとも1つの機械読み取り可能記憶媒体であって、前記複数の命令が、計算デバイス上において実行されることに応答して、前記計算デバイスに、請求項1から7までのいずれか1項記載の装置を実現させる、少なくとも1つの機械読み取り可能記憶媒体。
  9. コンピューター実装方法であって、
    第1アカウントを有するクライアントからの、1組のサーバー・デバイスにおけるサーバー・デバイスにアクセスするための1組のアクセス許可を有する第2アカウントを求める要求を、クライアント・デバイスを介して受けるステップと、
    回路によって、少なくとも部分的に、前記第1アカウントに関連付けられたアカウント情報に基づいて、前記第2アカウントを求める前記要求を許可するステップと、
    クライアントが前記サーバー・デバイスにアクセスすることを可能にするために、前記第2アカウントをプロビジョニングするステップと、
    前記第2アカウントに関連付けられたアカウント情報を、前記クライアント・デバイスを介して前記クライアントに提供するステップと、
    を含む、コンピューター実装方法。
  10. 請求項9記載のコンピューター実装方法において、
    アクセスのために前記第2アカウントをイネーブルするステップが、更に、
    前記サーバー・デバイスを含む違反境界へのアクセスを付与するように構成されたセキュリティ・グループを識別するステップと、
    前記違反境界における前記サーバー・デバイスへの前記第2アカウントのアクセスをイネーブルするために、前記第2アカウントを前記セキュリティ・グループと関連付けるステップと、
    を含む、コンピューター実装方法。
  11. 請求項9記載のコンピューター実装方法において、前記1組のサーバー・デバイスが、複数の違反境界にセグメント化され、前記複数の違反境界の各違反境界が、違反境界内における1組のサーバー・デバイスへのアクセスを付与するように構成された1つのセキュリティ・グループに関連付けられる、コンピューター実装方法。
  12. 請求項9から11までのいずれか1項記載のコンピューター実装方法を実行する手段を含む装置。
  13. 複数の命令を含む少なくとも1つの機械読み取り可能記憶媒体であって、前記命令が、計算デバイスにおいて実行されることに応答して、請求項9から11までのいずれか1項記載の方法を前記計算デバイスに実行させる、少なくとも1つの機械読み取り可能記憶媒体。
  14. 命令を含む少なくとも1つのコンピューター読み取り可能記憶媒体であって、前記命令が実行されると、システムに、
    サーバー・デバイスにアクセスするための1組の昇格アクセス許可を有するジャスト・イン・タイム(JIT)アカウントを求める要求をクライアント・デバイスから受けさせ、前記クライアント・デバイスが、関連するクライアント・アカウントを有し、
    少なくとも部分的に前記クライアント・アカウントに関連付けられたアカウント情報に基づいて、前記JITアカウントを求める前記要求を許可させ、
    前記サーバー・デバイスへのアクセスをイネーブルするために、前記JITアカウントをプロビジョニングさせ、
    前記JITアカウントに関連付けられたアカウント情報を前記クライアント・デバイスに提供させる、少なくとも1つのコンピューター読み取り可能記憶媒体。
  15. 請求項14記載のコンピューター読み取り可能記憶媒体において、前記アカウント情報が、認証トークン管理アプリケーションによって生成されたランダム・パスワードを含み、前記ランダム・パスワードが少なくとも2つの異なるキャラクター・クラスを含む、コンピューター読み取り可能記憶媒体。
JP2017501088A 2014-03-20 2015-03-18 ジャスト・イン・タイムでプロビジョニングされるアカウントによってネットワーク・セキュリティを設ける技法 Pending JP2017510013A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/220,486 2014-03-20
US14/220,486 US9838424B2 (en) 2014-03-20 2014-03-20 Techniques to provide network security through just-in-time provisioned accounts
PCT/US2015/021120 WO2015142965A1 (en) 2014-03-20 2015-03-18 Techniques to provide network security through just-in-time provisioned accounts

Publications (2)

Publication Number Publication Date
JP2017510013A true JP2017510013A (ja) 2017-04-06
JP2017510013A5 JP2017510013A5 (ja) 2018-05-10

Family

ID=53039948

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017501088A Pending JP2017510013A (ja) 2014-03-20 2015-03-18 ジャスト・イン・タイムでプロビジョニングされるアカウントによってネットワーク・セキュリティを設ける技法

Country Status (7)

Country Link
US (2) US9838424B2 (ja)
EP (1) EP3120290B1 (ja)
JP (1) JP2017510013A (ja)
CN (1) CN106104563B (ja)
BR (1) BR112016020337B1 (ja)
RU (1) RU2691211C2 (ja)
WO (1) WO2015142965A1 (ja)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9838424B2 (en) 2014-03-20 2017-12-05 Microsoft Technology Licensing, Llc Techniques to provide network security through just-in-time provisioned accounts
US20150281225A1 (en) * 2014-03-27 2015-10-01 Microsoft Corporation Techniques to operate a service with machine generated authentication tokens
US10089476B1 (en) 2014-06-03 2018-10-02 Amazon Technologies, Inc. Compartments
US10516667B1 (en) * 2014-06-03 2019-12-24 Amazon Technologies, Inc. Hidden compartments
US11507663B2 (en) 2014-08-11 2022-11-22 Sentinel Labs Israel Ltd. Method of remediating operations performed by a program and system thereof
US9710648B2 (en) 2014-08-11 2017-07-18 Sentinel Labs Israel Ltd. Method of malware detection and system thereof
US9762585B2 (en) * 2015-03-19 2017-09-12 Microsoft Technology Licensing, Llc Tenant lockbox
US10931682B2 (en) 2015-06-30 2021-02-23 Microsoft Technology Licensing, Llc Privileged identity management
US10382469B2 (en) * 2015-07-22 2019-08-13 Rapid7, Inc. Domain age registration alert
US10305872B2 (en) * 2015-08-06 2019-05-28 Interactive Intelligence Group, Inc. System and method for key management and user authentication
US9900377B2 (en) * 2015-08-07 2018-02-20 International Business Machines Corporation Dynamic healthchecking load balancing gateway
CN106612253B (zh) * 2015-10-23 2019-10-22 中国科学院声学研究所 一种联动控制权管理装置及方法
US10043018B2 (en) * 2015-11-17 2018-08-07 Microsoft Technology Licensing, Llc Access privilege analysis for a securable asset
US10542044B2 (en) * 2016-04-29 2020-01-21 Attivo Networks Inc. Authentication incident detection and management
FR3054343B1 (fr) 2016-07-20 2020-06-26 Wallix Procede d'alimentation automatique d'un proxy de connexion securisee.
US10484382B2 (en) 2016-08-31 2019-11-19 Oracle International Corporation Data management for a multi-tenant identity cloud service
US10594684B2 (en) * 2016-09-14 2020-03-17 Oracle International Corporation Generating derived credentials for a multi-tenant identity cloud service
US20180174210A1 (en) * 2016-12-15 2018-06-21 Mastercard International Incorporated Systems and methods for detecting data inconsistencies
US11695800B2 (en) 2016-12-19 2023-07-04 SentinelOne, Inc. Deceiving attackers accessing network data
US11616812B2 (en) 2016-12-19 2023-03-28 Attivo Networks Inc. Deceiving attackers accessing active directory data
CN106709288B (zh) * 2016-12-22 2018-07-24 腾讯科技(深圳)有限公司 应用程序审核操作权限处理方法和装置
US10516675B2 (en) 2017-01-17 2019-12-24 Microsoft Technology Licensing, Llc Altering application security to support just-in-time access
US10404689B2 (en) 2017-02-09 2019-09-03 Microsoft Technology Licensing, Llc Password security
WO2019032728A1 (en) 2017-08-08 2019-02-14 Sentinel Labs, Inc. METHODS, SYSTEMS AND DEVICES FOR DYNAMICALLY MODELING AND REGROUPING END POINTS FOR ONBOARD NETWORKING
US10831789B2 (en) 2017-09-27 2020-11-10 Oracle International Corporation Reference attribute query processing for a multi-tenant cloud service
US10866963B2 (en) 2017-12-28 2020-12-15 Dropbox, Inc. File system authentication
US10715564B2 (en) 2018-01-29 2020-07-14 Oracle International Corporation Dynamic client registration for an identity cloud service
US10726145B2 (en) * 2018-02-08 2020-07-28 Ca, Inc. Method to dynamically elevate permissions on the mainframe
US11470115B2 (en) 2018-02-09 2022-10-11 Attivo Networks, Inc. Implementing decoys in a network environment
US11671029B2 (en) 2018-07-07 2023-06-06 Intelesol, Llc AC to DC converters
US11477209B2 (en) * 2018-08-08 2022-10-18 Amber Semiconductor, Inc. Managing access rights of transferable sensor systems
US11349296B2 (en) 2018-10-01 2022-05-31 Intelesol, Llc Solid-state circuit interrupters
US11055970B1 (en) 2018-11-08 2021-07-06 United Services Automobile Association (Usaa) Interactive enclosure with virtual reality
US11461453B2 (en) * 2018-12-06 2022-10-04 Paypal, Inc. Modification of user account functionality based on a physical state of a mobile device
JP7475351B2 (ja) 2018-12-17 2024-04-26 インテレソール エルエルシー Ac駆動型の発光ダイオードシステム
US11792226B2 (en) 2019-02-25 2023-10-17 Oracle International Corporation Automatic api document generation from scim metadata
US11423111B2 (en) 2019-02-25 2022-08-23 Oracle International Corporation Client API for rest based endpoints for a multi-tenant identify cloud service
EP3973427A4 (en) 2019-05-20 2023-06-21 Sentinel Labs Israel Ltd. SYSTEMS AND METHODS FOR EXECUTABLE CODE DETECTION, AUTOMATIC FEATURE EXTRACTION, AND POSITION-INDEPENDENT CODE DETECTION
US11283809B2 (en) * 2019-08-14 2022-03-22 Microsoft Technology Licensing, Llc. Automatic reduction of privilege role assignments
EP3786826A1 (en) * 2019-08-30 2021-03-03 Barclays Execution Services Limited Secure validation pipeline in a third party cloud environment
US11870770B2 (en) 2019-09-13 2024-01-09 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration
US11687378B2 (en) 2019-09-13 2023-06-27 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration and bridge high availability
US11907367B2 (en) * 2019-11-22 2024-02-20 Microsoft Technology Licensing, Llc Dormant account identifier
US11461677B2 (en) 2020-03-10 2022-10-04 Sailpoint Technologies, Inc. Systems and methods for data correlation and artifact matching in identity management artificial intelligence systems
US10861006B1 (en) * 2020-04-30 2020-12-08 Capital One Services, Llc Systems and methods for data access control using a short-range transceiver
CN111831385A (zh) * 2020-07-23 2020-10-27 北京三快在线科技有限公司 业务授信信息处理方法、装置、设备及存储介质
EP4197086A1 (en) 2020-08-11 2023-06-21 Amber Semiconductor, Inc. Intelligent energy source monitoring and selection control system
CN114124873B (zh) * 2020-08-26 2023-07-18 腾讯科技(深圳)有限公司 账号异常处理方法、装置、计算机设备和存储介质
US20220086151A1 (en) * 2020-09-14 2022-03-17 Citrix Systems, Inc. Peer reviewed access to computing system
US20220166762A1 (en) * 2020-11-25 2022-05-26 Microsoft Technology Licensing, Llc Integrated circuit for obtaining enhanced privileges for a network-based resource and performing actions in accordance therewith
US11579857B2 (en) 2020-12-16 2023-02-14 Sentinel Labs Israel Ltd. Systems, methods and devices for device fingerprinting and automatic deployment of software in a computing network using a peer-to-peer approach
US20220217136A1 (en) * 2021-01-04 2022-07-07 Bank Of America Corporation Identity verification through multisystem cooperation
US11308186B1 (en) * 2021-03-19 2022-04-19 Sailpoint Technologies, Inc. Systems and methods for data correlation and artifact matching in identity management artificial intelligence systems
US11899782B1 (en) 2021-07-13 2024-02-13 SentinelOne, Inc. Preserving DLL hooks

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002323986A (ja) * 2001-04-25 2002-11-08 Hitachi Ltd コンピュータリソース流通システム及び方法
JP2005502931A (ja) * 2000-12-22 2005-01-27 オープンデザイン インコーポレイテッド アカウント管理のための方法およびシステム
JP2006024205A (ja) * 2004-06-23 2006-01-26 Microsoft Corp アプリケーションにセキュリティを提供するシステムおよび方法
JP2007172280A (ja) * 2005-12-21 2007-07-05 Fuji Xerox Co Ltd アクセス権管理方法、装置及びプログラム
JP2007206989A (ja) * 2006-02-02 2007-08-16 Hitachi Ltd コンテキスト情報管理システム
JP2007310435A (ja) * 2006-05-16 2007-11-29 Hitachi Ltd 情報管理システム
JP2009116657A (ja) * 2007-11-07 2009-05-28 Nec Corp アクセス管理装置
JP2009251955A (ja) * 2008-04-07 2009-10-29 Nec Corp 貸し出しサーバ管理方法及びシステム、管理サーバ並びにプログラム

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6144959A (en) 1997-08-18 2000-11-07 Novell, Inc. System and method for managing user accounts in a communication network
US8538843B2 (en) 2000-07-17 2013-09-17 Galactic Computing Corporation Bvi/Bc Method and system for operating an E-commerce service provider
US9928508B2 (en) 2000-08-04 2018-03-27 Intellectual Ventures I Llc Single sign-on for access to a central data repository
US20020062452A1 (en) 2000-08-18 2002-05-23 Warwick Ford Countering credentials copying
US7200869B1 (en) 2000-09-15 2007-04-03 Microsoft Corporation System and method for protecting domain data against unauthorized modification
US20030009385A1 (en) 2000-12-26 2003-01-09 Tucciarone Joel D. Electronic messaging system and method thereof
US20040122730A1 (en) 2001-01-02 2004-06-24 Tucciarone Joel D. Electronic messaging system and method thereof
US7162643B1 (en) 2001-06-15 2007-01-09 Informatica Corporation Method and system for providing transfer of analytic application data over a network
US20040015702A1 (en) * 2002-03-01 2004-01-22 Dwayne Mercredi User login delegation
US8135621B2 (en) * 2002-04-26 2012-03-13 At&T Intellectual Property I, L.P. System and method for supporting anonymous transactions
US7567510B2 (en) * 2003-02-13 2009-07-28 Cisco Technology, Inc. Security groups
US20040162789A1 (en) * 2003-02-14 2004-08-19 Huscher Anthony Alan eRoom user aging tool and method
JP4547159B2 (ja) * 2004-01-08 2010-09-22 株式会社日立ハイテクノロジーズ 処理装置
US8990254B2 (en) * 2004-07-02 2015-03-24 Ellie Mae, Inc. Loan origination software system for processing mortgage loans over a distributed network
JP2008524751A (ja) * 2004-12-20 2008-07-10 アールエスエイ セキュリティー インク 消費者インターネット認証サービス
US7529931B2 (en) * 2004-12-23 2009-05-05 Microsoft Corporation Managing elevated rights on a network
US8261058B2 (en) 2005-03-16 2012-09-04 Dt Labs, Llc System, method and apparatus for electronically protecting data and digital content
US7631346B2 (en) 2005-04-01 2009-12-08 International Business Machines Corporation Method and system for a runtime user account creation operation within a single-sign-on process in a federated computing environment
US7350074B2 (en) 2005-04-20 2008-03-25 Microsoft Corporation Peer-to-peer authentication and authorization
US20070067833A1 (en) 2005-09-20 2007-03-22 Colnot Vincent C Methods and Apparatus for Enabling Secure Network-Based Transactions
US20070157292A1 (en) 2006-01-03 2007-07-05 Netiq Corporation System, method, and computer-readable medium for just in time access through dynamic group memberships
US20070156691A1 (en) * 2006-01-05 2007-07-05 Microsoft Corporation Management of user access to objects
CN101110759A (zh) 2006-07-20 2008-01-23 朗迅科技公司 用于因特网协议电视网络的对等文件下载系统
CN1913431A (zh) * 2006-08-24 2007-02-14 华为技术有限公司 管理网络设备的用户口令的方法、系统及口令管理服务器
US8327428B2 (en) 2006-11-30 2012-12-04 Microsoft Corporation Authenticating linked accounts
US8201226B2 (en) * 2007-09-19 2012-06-12 Cisco Technology, Inc. Authorizing network access based on completed educational task
US20090089165A1 (en) 2007-09-28 2009-04-02 Embarq Holdings Company, Llc System and method for a telephony upgrade credit
US8819763B1 (en) 2007-10-05 2014-08-26 Xceedium, Inc. Dynamic access policies
WO2009111313A2 (en) * 2008-02-29 2009-09-11 Rite-Solutions, Inc. Method and apparatus for enhanced age verification and activity management of internet users
US20100226280A1 (en) * 2009-03-03 2010-09-09 Erf Wireless, Inc. Remote secure router configuration
US8762275B2 (en) * 2009-04-15 2014-06-24 First Data Corporation Systems and methods providing multiple account holder functionality
BRPI0925079A8 (pt) * 2009-04-30 2017-09-19 Comverse Inc Controle de serviço compartilhado
US20110041166A1 (en) * 2009-08-17 2011-02-17 Avaya Inc. Method of Password Assignment
US9286446B2 (en) 2009-12-11 2016-03-15 Sony Corporation Domain spanning applications
US8332917B2 (en) * 2009-12-29 2012-12-11 International Business Machines Corporation Providing secure dynamic role selection and managing privileged user access from a client device
US20110213843A1 (en) * 2010-02-26 2011-09-01 Ferrazzini Axel Denis System and method for providing access to a service relating to an account for an electronic device in a network
US8353019B2 (en) 2010-03-26 2013-01-08 Canon Kabushiki Kaisha Security token destined for multiple or group of service providers
EP2583211B1 (en) 2010-06-15 2020-04-15 Oracle International Corporation Virtual computing infrastructure
US20120031616A1 (en) 2010-08-03 2012-02-09 Hall David R Cylindrical Truss Structure Reinforced Pipe
WO2012106411A1 (en) 2011-02-01 2012-08-09 Google Inc. Methods and systems for enabling multiple accounts support
US8869244B1 (en) 2011-05-03 2014-10-21 Symantec Corporation Techniques for providing role-based access control using dynamic shared accounts
US8850536B2 (en) * 2011-08-05 2014-09-30 Safefaces LLC Methods and systems for identity verification in a social network using ratings
US9355394B2 (en) * 2011-08-11 2016-05-31 Visa International Service Association Systems and methods of aggregating split payments using a settlement ecosystem
EP2761428A4 (en) * 2011-09-28 2015-07-08 Apperian Inc TRANSPORTING CONFIGURATION INFORMATION IN A NETWORK
US8490162B1 (en) 2011-09-29 2013-07-16 Amazon Technologies, Inc. System and method for recognizing malicious credential guessing attacks
US10885179B2 (en) * 2011-10-05 2021-01-05 Salesforce.Com, Inc. Just-in-time user provisioning framework in a multitenant environment
US9734321B2 (en) 2011-12-12 2017-08-15 Nokia Technologies Oy Method and apparatus for providing federated service accounts
US10282724B2 (en) 2012-03-06 2019-05-07 Visa International Service Association Security system incorporating mobile device
US9460303B2 (en) 2012-03-06 2016-10-04 Microsoft Technology Licensing, Llc Operating large scale systems and cloud services with zero-standing elevated permissions
US20130283060A1 (en) * 2012-04-23 2013-10-24 Raghavendra Kulkarni Seamless Remote Synchronization and Sharing of Uniformly Encrypted Data for Diverse Platforms and Devices
US20130298215A1 (en) 2012-05-04 2013-11-07 Rawllin International Inc. Single sign-on user registration for online or client account services
US11424930B2 (en) 2012-05-22 2022-08-23 Barclays Bank Delaware Systems and methods for providing account information
US20140059651A1 (en) * 2012-08-22 2014-02-27 Southern Company Services, Inc. Account Elevation Management
US8910262B2 (en) * 2012-12-21 2014-12-09 Cellco Partnership Supporting multiple messaging services on mobile devices in a single user experience
US20140198330A1 (en) * 2013-01-16 2014-07-17 Xerox Corporation Portable system performing business center operations
US20140245411A1 (en) 2013-02-22 2014-08-28 Nokia Corporation Method and apparatus for providing account-less access via an account connector platform
US20150033306A1 (en) * 2013-07-25 2015-01-29 International Business Machines Corporation Apparatus and method for system user authentication
US9215064B2 (en) 2013-10-21 2015-12-15 Adobe Systems Incorporated Distributing keys for decrypting client data
US20150134524A1 (en) * 2013-11-12 2015-05-14 State Farm Mutual Automobile Insurance Company Real-Time External Financial Account Verification
US9825944B2 (en) * 2014-01-24 2017-11-21 Microsoft Technology Licensing, Llc Secure cryptoprocessor for authorizing connected device requests
US9838424B2 (en) 2014-03-20 2017-12-05 Microsoft Technology Licensing, Llc Techniques to provide network security through just-in-time provisioned accounts
US20150281225A1 (en) 2014-03-27 2015-10-01 Microsoft Corporation Techniques to operate a service with machine generated authentication tokens
US9363263B2 (en) 2014-08-27 2016-06-07 Bank Of America Corporation Just in time polymorphic authentication
US9800580B2 (en) 2015-11-16 2017-10-24 Mastercard International Incorporated Systems and methods for authenticating an online user using a secure authorization server

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005502931A (ja) * 2000-12-22 2005-01-27 オープンデザイン インコーポレイテッド アカウント管理のための方法およびシステム
JP2002323986A (ja) * 2001-04-25 2002-11-08 Hitachi Ltd コンピュータリソース流通システム及び方法
JP2006024205A (ja) * 2004-06-23 2006-01-26 Microsoft Corp アプリケーションにセキュリティを提供するシステムおよび方法
JP2007172280A (ja) * 2005-12-21 2007-07-05 Fuji Xerox Co Ltd アクセス権管理方法、装置及びプログラム
JP2007206989A (ja) * 2006-02-02 2007-08-16 Hitachi Ltd コンテキスト情報管理システム
JP2007310435A (ja) * 2006-05-16 2007-11-29 Hitachi Ltd 情報管理システム
JP2009116657A (ja) * 2007-11-07 2009-05-28 Nec Corp アクセス管理装置
JP2009251955A (ja) * 2008-04-07 2009-10-29 Nec Corp 貸し出しサーバ管理方法及びシステム、管理サーバ並びにプログラム

Also Published As

Publication number Publication date
BR112016020337B1 (pt) 2022-08-30
BR112016020337A8 (pt) 2021-06-15
CN106104563A (zh) 2016-11-09
US20180054460A1 (en) 2018-02-22
RU2691211C2 (ru) 2019-06-11
US10326795B2 (en) 2019-06-18
RU2016137260A3 (ja) 2018-11-06
EP3120290A1 (en) 2017-01-25
RU2016137260A (ru) 2018-03-20
BR112016020337A2 (pt) 2017-08-15
US20150271200A1 (en) 2015-09-24
WO2015142965A1 (en) 2015-09-24
US9838424B2 (en) 2017-12-05
EP3120290B1 (en) 2017-12-27
CN106104563B (zh) 2019-08-13

Similar Documents

Publication Publication Date Title
US10326795B2 (en) Techniques to provide network security through just-in-time provisioned accounts
AU2019206006B2 (en) System and method for biometric protocol standards
EP3123692B1 (en) Techniques to operate a service with machine generated authentication tokens
US10567438B2 (en) Providing privileged access to non-privileged accounts
Srinivas et al. Security maturity in NoSQL databases-are they secure enough to haul the modern it applications?
US11956228B2 (en) Method and apparatus for securely managing computer process access to network resources through delegated system credentials
KR101404537B1 (ko) 패스워드 자동 변경을 통한 서버 접근 통제 시스템 및 그 방법
KR101545897B1 (ko) 주기적인 스마트카드 인증을 통한 서버 접근 통제 시스템
Basu et al. Strengthening Authentication within OpenStack Cloud Computing System through Federation with ADDS System
Vijay et al. RAICB: Robust Authentication Immunity Cloud Bucket for Secure Cloud Storage System

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180319

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180319

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190513

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20191028