Windows のユーザー権限一覧の確認と付与
Windows では「一般ユーザー」と「管理者ユーザー」という分類がありますが、この記事ではその具体的な差を見ていきます。
Windows には「ユーザー権利の割り当て: User Rights Assignment」というローカルポリシー・グループポリシーの設定があり、ここでどのユーザーにどの権利を与えるか設定します。
例えばローカルポリシーを設定するなら「Windows キー + R」⇒「ファイル名を指定して実行」⇒「gpedit.msc」
「コンピューターの構成」⇒「Windowsの設定」⇒「セキュリティの設定」⇒「ユーザー権利の割り当て」を選択すると、ユーザー権限の一覧が表示されます。
デフォルトではいくつかの権限に Administrators グループが設定されていることが分かります。つまり、ここの設定を変更することにより、特定ユーザーや特定グループに権限を付与することができます。
これらの権限の説明については以下 URL にある表で確認できます。
表には定数名として Se で始まる名前が付けられています。末尾は Privilege となっているものと Right となっているものがありますが、Right は主にログオンに関わる権利、Privilege は操作上の権利という分けがあるようです。(昔の名残?)
一般ユーザーと管理者ユーザーの権限の違い, whoami/priv
実際のユーザーにその設定が割り当たっているかどうかは、コマンドプロンプトにて「whoami /priv」で確認できます。
一般ユーザーで出力すると以下の通りです。つまり、一般ユーザーのコマンドプロンプトには 5 つの権限が割り当たっていることが確認できます。(あくまで、コマンドプロンプトというアプリケーションの場合はこうなる、という話。)
右端は状態として「有効/無効」が表示されていますが、これは安全弁であり、実際にはプログラミングで AdjustTokenPrivileges を使うことによって必要なタイミングで無効のものを有効化することができます。
また、管理者 (admin) ユーザーになるとさらに色々な権限が付いています。管理者権限でコマンドプロンプトを実行し whoami /priv を実行すると以下のようになります。
例えば身近なところでいえばシステム時刻の変更、タイムゾーンの変更などがあります。
また、robocopy の /B オプションで「アクセス権無視」のファイルコピーができるようになりますが、これは「SeBackupPrivilege」権限 (ファイルとディレクトリのバックアップ) のおかげでした。
また、ファイル/フォルダの所有者を強制的に変更することができるのも「SeTakeOwnershipPrivilege」のおかげでした。
コメント