runas コマンド、管理者として実行オプション、または Windows Server をアップグレードした後に別のユーザーとして実行するオプションを使用する場合にエラーが発生する: アクセスが拒否されました

この記事では、Windows Server をアップグレードした後にコマンド、管理者として実行オプション、または別のユーザーとして実行オプションを使用runasできない問題の回避策について説明します。

適用対象: Windows Server 2012 R2
元の KB 番号: 977513

現象

次のような状況で問題が発生します。

  • Windows Server を実行しているコンピューターをアップグレードします。
  • 標準ユーザーとしてサインインします。
  • 次のいずれかの機能を使用しようとします。
    • runas コマンド
    • [管理者として実行] オプション
    • 別のユーザー オプションとして実行する

このとき、次のエラー メッセージが表示されます。

アクセスが拒否される

原因

セカンダリ ログオン サービスの随意アクセス制御リスト (DACL) は、Windows Server をアップグレードするときに正しく設定されません。 この問題により、標準ユーザーがこのサービスを開始し、アプリケーションを別のユーザーとして実行できなくなります。

回避策 1: Sc.exe コマンド プロンプト ユーティリティを使用する

Sc.exe コマンド プロンプト ユーティリティを使用して、サーバーをアップグレードした後でセキュリティを既定の構成に設定できます。

注:

これらのコマンドを実行する前に、管理者としてログオンする必要があります。

そのために、以下の手順に従ってください。

  1. コマンド プロンプト ウィンドウを開きます。

  2. コマンド プロンプトで次のコマンドを入力し、Enter キーを押します。

    net stop seclogon
    
  3. コマンド プロンプトで次のコマンドを入力し、Enter キーを押します。

    sc sdset seclogon D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWRPDTLOCRRC;;;IU)(A;;CCLCSWDTLOCRRC;;;SU)(A;;CCLCSWRPDTLOCRRC;;;AU)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)
    

    注:

    このコマンドは読みやすくするためにラップされます。

  4. コマンド プロンプト ウィンドウを閉じます。

  5. 次のいずれかの機能を使用してみてください。

    • runas コマンド
    • [管理者として実行] オプション
    • 別のユーザー オプションとして実行する

    また、ユーザーを切り替えることができるか、セカンダリ ログオン サービスが正しく開始されていることを確認します。

回避策 2: グループ ポリシーを使用する

グループ ポリシー管理コンソールを使用して、サーバーをアップグレードした後にセキュリティを既定の構成に設定するドメイン ベースのポリシーを構成できます。 この回避策では、新しいグループ ポリシー オブジェクト (GPO) を作成する必要があります。 また、新しい GPO が影響を受けるコンピューターにのみ適用されるようにリンクする必要があります。

そのために、以下の手順に従ってください。

  1. グループ ポリシー管理コンソールでグループ ポリシーを編集します。

  2. ポリシーを見つけます: コンピューターの構成\Policies\Windows 設定\セキュリティ設定\System Services

  3. セカンダリ ログオン サービスを開きます。

  4. [このポリシー設定のチェックを定義する] ボックスを選択し、[有効] を選択します。

  5. サービスの起動モードを [手動] に設定します。

  6. [セキュリティ] ノードを展開して、次のプロパティとオブジェクトが [許可] に設定されていることを確認します。

    プロパティ オブジェクト
    Authenticated Users クエリ テンプレート、クエリの状態、依存項目の列挙、開始、一時停止、続行、問い合わせ、読み取りアクセス許可、User-Defined コントロール
    Builtin\Administrators フル コントロール
    対話操作が可能 クエリ テンプレート、クエリの状態、依存項目の列挙、開始、一時停止、続行、問い合わせ、読み取りアクセス許可、User-Defined コントロール
    サービス クエリ テンプレート、クエリの状態、依存項目の列挙、一時停止、続行、問い合わせ、User-Defined コントロール
    System クエリ テンプレート、クエリの状態、依存項目の列挙、開始、一時停止、続行、問い合わせ、停止
  7. [ OK] を選択 してセキュリティの変更を適用します。

  8. [OK] を選択して、グループ ポリシーの変更を適用します。

  9. グループ ポリシーの更新を待機するか、手動で更新を開始して、影響を受けるコンピューターに GPO を適用します。

  10. 次のいずれかの機能を使用してみてください。

    • runas コマンド
    • [管理者として実行] オプション
    • 別のユーザー オプションとして実行する

    また、ユーザーを切り替えることができるか、セカンダリ ログオン サービスが正しく開始されていることを確認します。

注:

グループ ポリシー更新中にアクセス許可が再適用されるため、この回避策はお勧めしません。 ただし、正しくないセキュリティは、アップグレード後に 1 回だけ修正する必要があります。

詳細

コマンドの runas 詳細については、次の Microsoft TechNet Web サイトを参照してください。

Runas

グループ ポリシー管理コンソールの使用方法の詳細については、次の Microsoft TechNet Web サイトを参照してください。

グループ ポリシー管理コンソール