ユーザ権限管理

このセクションの内容

ユーザ権限管理

多くのユーザ環境には、機密データおよび基幹アプリケーションへのユーザ アクセスを制限するために、さまざまな制限が導入されています。ただし、一般的に、ユーザが役割を実行するために、管理者権限が必要です。たとえば、多くのプロプライエタリ システム、システム更新、プリンタ、ウイルス対策スキャンなどのデバイスのドライバのインストールを許可するアプリケーションなどでは、すべて管理者権限が必要です。このため、通常、ユーザはフル管理者権限を付与されているか、まったく管理者権限がありません。

Application Control は、アプリケーションやネットワークへのアクセスを制御することにより、また包括的なユーザ権限管理機能を提供することにより、数多くの企業のデスクトップの安全を確保し、保護しています。ユーザ権限管理では、ルールに関連付けることができ、ファイル、フォルダ、ドライブ、署名、Windows Store アプリ、アプリケーション グループ、およびオペレーティング システム固有のサポートされているコントロール パネル コンポーネントへのアクセスを昇格または制限できる再利用可能なユーザ権限ポリシーを作成できます。

ユーザ権限管理を使用すると、企業の IT 部門は、ユーザ、グループ、アプリケーション、またはビジネス ルール単位で、アクセス制御権限を削減することができます。ユーザは各自の仕事を達成する上で必要な権限のみを持ち、必要なアプリケーションと制御だけにアクセスし、それ以外にはアクセスしません。これが、デスクトップの安定性の確保に役立ち、セキュリティと生産性を向上させます。ユーザの生産性とセキュリティの間の最適なバランスは、セッションまたはアカウント レベルではなく、アプリケーションまたは個別のタスク レベルで、ユーザ権限を制御することです。

ユーザ権限管理を使用すると、ユーザのアクションに対して、オンデマンドでユーザ権限を管理するため、アプリケーションとタスクへのアクセスが動的に管理されます。たとえば、標準ユーザの権限を管理者レベルに昇格するか、管理者の権限を標準ユーザ アカウントの権限に降格することで、特定のユーザまたはユーザ グループの名前付きアプリケーションまたはコントロール パネルに管理者権限を適用できます。

ユーザ セッションを通してユーザ権限を制御することで、IT は、デスクトップと環境を保護し、管理コストを削減しながら、職務を遂行するために必要な権限をユーザに付与することができます。

ユーザ権限管理は、利点に応じて、権限を割り当てることで、ユーザとアプリケーションに管理者権限を委任するための粒度の高いアプローチを提供します。この制御のレベルは、環境で実行される優先アプローチに従って、状況に応じて、権限を昇格または制限するために展開されることができます。

ユーザ権限管理により、使用可能な Application Control ルールに関連付けることができる再利用可能なポリシーのライブラリを作成したり、ファイル、フォルダ、署名、およびアプリケーション グループに関連する権限を割り当てたりすることができます。ユーザ権限ポリシーには、ドメイン ユーザ グループ メンバーシップと、各ポリシーに適用できるさまざまな管理者権限が含まれます。

新しいアプリケーションが管理者権限の既存のアプリケーションから生成された場合、新しいアプリケーション同じ権限を自動的に受信しません。代わりに、管理者権限を受信するかどうかを決定するために評価されます。

最低権限

多くのユーザは、管理者権限があるコンピュータを実行します。これらの権限で実行するユーザは、ウイルス、マルウェア、スパイウェアを導入する可能性があります。これは企業全体に影響し、セキュリティ違反とダウンタイムにつながる可能性があります。個人データへのアクセスもリスクにさらされる可能性があります。

ユーザ権限管理では、最低権限の原則を適用できます。この原則では、フル管理者権限を付与せずに、職務を遂行するための最低権限がユーザに割り当てられます。経験はユーザにとってシームレスです。

最低権限の詳細な定義については、米国国防総省 Trusted Computer System Evaluation Criteria (DOD-5200.28.STD) (オレンジブック) をご参照ください。これは http://csrc.nist.gov/publications/history/dod85.pdf にあります。

ユーザ権限管理を使用すると、ダウンタイム、ウイルスなどによる IT サポート依頼回数が大幅に削減されます。これは、ユーザがフル管理者権限を有するときに発生する問題に対して、コンピュータを保護するためです。つまり、IT サポートは、長い時間をコンピュータのトラブルシューティングと問題の解明に費やすのではなく、より重要なタスクに集中することができます。たとえば、ユーザに許可されたアプリケーションのみをインストールさせることで、ライセンスの管理も容易になります。

管理者権限が必要な共通タスク

役割を遂行するには、ユーザは、管理者権限が必要な多数のタスクを実行しなければならない場合があります。このようなタスクの実行を許可するために、解決策が必要です。そうでない場合、ユーザはこのような特定のタスクを完了せずに、任務を遂行する必要があります。このようなタスクの内容の例:

  • プリンタのインストール
  • 特定のハードウェアのインストール
  • 特定のアプリケーションのインストール
  • 管理者権限が必要なアプリケーションの操作
  • システム時刻の変更
  • レガシー アプリケーションの実行

ユーザ権限管理では、ユーザが特定の管理者権限に昇格することで、これらのタスクを実行できます。

ユーザ権限管理と Run As

特に知識が豊富なユーザをはじめとする多くのユーザは、Run as コマンドを使用して、アプリケーションを実行します。ユーザは最小権限で日常のタスクを実行できますが、必要に応じて、Run as コマンドを使用すると、認証資格情報を昇格することができるため、別のユーザのコンテキストでタスクを実行することになります。ただし、この場合、最低権限のアカウントと昇格用のアカウントという2つのアカウントが必要になります。

Run as を使用するときの一般的な問題は、管理者パスワードが組織全体に知られることです。たとえば、管理者は管理者パスワードをユーザに通知することで、ユーザは Run as コマンドを使用して、コンピュータの問題を修正することができます。ただし、パスワードが広まり、予測できないセキュリティ リスクが発生します。

Run as に関するその他の問題は、ソフトウェアが実際に連動する方法です。Run as は、別のユーザのコンテキストの下で、アプリケーションまたはプロセスを実行します。このため、そのアプリケーションやプロセスは、レジストリの正しい HKEY_CURRENT_USER ハイブにアクセスできません。

このハイブは、すべてのプロファイル データが保存される、保護された場所です。このため、別のユーザのコンテキストで実行されるアプリケーションまたはプロセスはこのソースの読み取りまたは書き込みができず、一部のアプリケーションが機能しません。別のユーザのコンテキストで実行すると、ネットワーク共有の読み取りと書き込みで問題が生じることもあります。これは、ネットワーク共有が、実行中のコンテキストのアカウントに基づくためです。このため、ローカル アカウントと Run as アカウントは、リソースへの同じアクセスがない場合があります。

Run As と UAC

Windows 7や Windows 8などの一部のオペレーティング システムには、管理者権限なしで、ユーザがアプリケ-ションまたはプロセスを実行することを許可する機能があります。これらは Run as コマンドとユーザ アカウント制御 (UAC) です。

これらの機能は、Server 2008および2012バージョンにも適用されます。

これらの機能は、管理者権限なしでユーザが実行することを許可しますが、ユーザは管理者タスクを実行する前に管理者アカウントにアクセスする必要があります。しかし、この制限のため、この機能は管理者向けになっています。管理者は標準ユーザとしてログオンし、管理者タスクを実行する目的でのみ管理者アカウントを使用します。

ユーザはローカル管理者の認証資格情報を入力して、Run as および UAC を使用するため、さまざまな問題点が生じます。例:

  • 管理者アカウントにアクセスできるユーザは、権限を悪用しないように信頼されている必要があります。
  • 管理者権限で実行されるアプリケーションは、別のユーザのコンテキストで実行されています。これは問題になることがあります。たとえば、「ユーザ権限管理と Run As」セクションで説明したように、特定のアプリケーションが実際のユーザのプロファイルまたはネットワーク共有にアクセスできないということがあります。
  • 2つのパスワードが必要です。標準アカウントに1つと、管理者アカウントに1つです。ユーザは両方を記憶しておく必要があります。1つのアカウントに必要なセキュリティでも簡単ではありませんが、2つのアカウントとなると、さらに難しくなります。

技術

Microsoft Windows コンピューティング環境では、アプリケーション起動プロセスの一部として、実行要求が行われたときに、アプリケーションはアプリケーション起動承認プロセスとしてセキュリティ トークンを要求します。このトークンは、アプリケーションに付与された権限と許可を詳細に示します。これらの権限を使用して、オペレーティング システムまたは他のアプリケーションを操作することができます。

アプリケーションを管理するようにユーザ権限管理が構成されているときには、要求されるセキュリティ トークンが動的に修正され、権限が昇格または制限されるため、アプリケーションを実行またはブロックすることができます。

  1. ユーザ権限管理メカニズムは、次のように、プロセス起動要求を処理します。
    • ユーザ権限ポリシーは構成ルールで定義され、アプリケーションまたはコンポーネントに適用されます。
    • アプリケーション リストには、ファイル、フォルダ、署名、またはアプリケーション グループを含めることができます。
  2. コンポーネント リストには、コントロール パネル コンポーネントを含めることができます。
  3. アプリケーションまたは他の実行ファイルを起動してプロセスが作成されると、Application Control フックがプロセスを受信して、プロセスを実行するために昇格または制限された権限が必要かどうかを Application Control エージェントに問い合わせます。
  4. エージェントは、構成が昇格または制限された権限を割り当てるかどうかを確認し、必要な場合は、エージェントが修正されたユーザ トークンを Windows Local Security Authority (LSA) に要求します。
  5. フックは Windows LSA から修正されたユーザ トークンを受信し、必要な権限を割り当てます。そうでない場合、プロセスは、標準ユーザ権限の定義に従い、既存のユーザ トークンで実行されます。

ユーザ権限管理の利点

ユーザ権限管理の主な利点

  • 昇格された権限が必要なユーザ アプリケーションを検出する - 権限検出モードを使用して、管理者権限が必要なアプリケーションを監視し、レポートを生成します。レポートのリストにあるデータを使用して、アプリケーション管理構成を作成します。
  • アプリケーションを実行するためのユーザ権限の昇格 - ユーザ権限管理を使用して、管理者認証資格情報で実行されるアプリケーションを指定します。ユーザは管理者認証資格情報がありませんが、アプリケーションを実行できます。

  • コントロール パネル アプレットを実行するためのユーザ権限の昇格 - 多くのローミング ユーザは、管理者権限が必要なさまざまなタスクを実行する必要があります。たとえば、プリンタのインストール、ネットワークとファイアウォール設定の変更、日時の変更、プログラムの追加と削除などがあります。これらのタスクのすべてにおいて、特定のコンポーネントを管理者として実行する必要があります。ユーザ権限管理を使用して、個別のコンポーネントの権限を昇格し、非管理者標準ユーザが役割を実行するための変更ができるようにします。

  • アプリケーション権限を制限するために権限を降格する - 既定では、ユーザには特定の管理者認証資格情報がありますが、非管理者として特定のアプリケーションを実行するように強制されます。管理者として、Internet Explorer などの特定アプリケーションを実行すると、ユーザは、多数の望ましくない設定を変更したり、アプリケーションをインストールしたり、場合によってはデスクトップをインターネットに開放することができます。ユーザ権限管理を使用して、たとえば Internet Explorer などを管理者レベルのユーザが標準ユーザ モードで実行できないようにすることで、デスクトップを保護します。

  • システム設定へのアクセスを制限するために権限を降格する - ユーザ権限管理を使用して、高いレベルのシステム管理者に対して、管理者ユーザがファイアウォールや特定のサービスなどの変更すべきではない設定を変更することを防止する能力を付与します。ユーザ権限管理を使用して、特定のプロセスの管理者権限を減らします。ユーザには管理者権限がありますが、システム管理者は環境の制御能力を維持します。

関連トピック

ユーザ権限管理の使用例