見ないフリしてきたWindows Serverの“変なメッセージ”に向き合ってみた山市良のうぃんどうず日記(176)

Windows Serverを操作していると、“変なメッセージ”に出会うことがこれまでに何度かありました。何となく理由が思い当たるし、目的を達成するための別の方法があるので気にせず、見ないことにしていました。しかし、思い当たる理由が全くの的外れと分かったので、その回避策を含めレポートします。

» 2020年04月08日 05時00分 公開
[山市良テクニカルライター]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「山市良のうぃんどうず日記」のインデックス

山市良のうぃんどうず日記

「設定」アプリでまれに遭遇するおかしなエラーの正体は?

 Windows Serverの気になる変なメッセージとは、「Windows Server 2016」および「Windows Server 2019」のデスクトップエクスペリエンス環境で「設定(Settings)」アプリを操作しているときに表示されることがある、次のようなエラーメッセージです。

指定したデバイス、パス、またはファイルにアクセスできません。これらの項目にアクセスするための適切なアクセス許可がない可能性があります。(日本語環境)

Windows cannot access the specified device, path, or file. You may not have the appropriate permissions to access the item.(英語環境)

 筆者が確認しているのは、Windows Server 2016/2019の「設定」アプリにある「時刻と言語(Time & Date)」で「言語(Language)」ページを開いたときと、Windows Server 2016の「設定」アプリにある「更新とセキュリティ(Update & Security)」で「Windows Defenderを開く(Open Windows Defender)」をクリックしたときです(画面1画面2)。

画面1 画面1 Windows Server 2016の「設定」アプリにある「地域と言語」ページと、Windows Server 2019の「設定」アプリにある「言語」ページを開いたときに表示されるエラー
画面2 画面2 Windows Server 2016の「設定」アプリで「Windows Defenderを開く」ボタンをクリックしたときに表示されるエラー

 これらのエラーは、それぞれ「C:\Windows\System32\SystemSettings\AdminFlows.exe」と「C:\Program Files\Windows Defender\msascui.exe」のエラーとして発生します。

 Windows Server 2016の場合、「言語」のエラーは「言語」コントロールパネルで代替できますし、「C:\Program Files\Windows Defender\msascui.exe」のエラーは「ファイル名を指定して実行」から直接実行すれば、問題なく「Windows Defender」のGUI(グラフィカルユーザーインタフェース)が開きます。

 なお、「C:\Program Files\Windows Defender\msascui.exe」は、Windows Server 2019では「Windowsセキュリティ」に置き換わったため存在しません。「言語」コントロールパネルも廃止されました。

 このエラーに初めて遭遇したのは、日本語言語パックをインストールして日本語化した英語版Windows Server 2016/2019のAzure仮想マシンで、それも「設定」アプリの「言語」のところだったので(言語の追加時にはエラーに遭遇しませんでした、その理由は後ほど)、何となく「言語パックの追加による表示言語の切り替え」の影響と思っていました。また、このエラーが発生したとしても代替の方法があるため、あまり気にしていませんでした。

言語パックの追加うんぬんは無関係、原因は「ドメイン名\Administrator」の使用

 ところが、同じエラーをWindows Server 2016/2019の日本語ローカライズ版でも目にしました。つまり、「言語パックの追加による表示言語の切り替え」は全く関係なかったのです。そして、同じサーバでも、このエラーが発生したり、しなかったりするのです。

 いろいろと試してみて、ようやくエラーが発生する場合と発生しない場合の違いを見つけることができました。エラーが発生するのは、ドメインの「Administrator」(「ドメイン名\Administrator」)アカウントでログオンしたときに限られます。もし、「Administrator」を別の名前に変更していたとしても、SID(セキュリティ識別子)は変わらないので同じ問題が発生すると思います。

 一方、メンバーサーバのローカルのビルトイン「Administrator」(「コンピュータ名\Administrator」)や、ドメインに追加したドメイン管理者アカウント(「Domain Users」グループに追加した「ドメイン名\domainadmin」など)ではエラーは発生しません(画面3画面4)。

画面3 画面3 非ドメインコントローラーのローカルのビルトインAdministratorではエラーは発生しない
画面4 画面4 ドメインに追加したドメイン管理者権限を持つアカウントでもエラーは発生しない

 また、ドメインメンバーの「Windows 10」クライアントでは、ログオンユーザーに関係なくエラーが発生することはありません(バージョン1809、1903、1909など最近のバージョンでのみ確認)。

 この問題に関係しそうなヒントは、2年前に筆者自身が書いた以下の記事にありました(書いたことさえすっかり忘れていました)。

 Windows 10の初期のバージョンでは、「ユーザーアカウント制御(UAC)」の無効化は想定されておらず、意図しない影響を及ぼすことがありました。

 例えば、UACを無効にすると「ユニバーサルWindowsプラットフォーム(UWP)アプリ」(「モダンアプリ」や「ストアアプリ」とも呼ばれます)を起動できなくなる、UACが既定で無効なビルトインAdministratorではUWPを起動できない、などです。

 Windows 10の現在のバージョンではこれらの問題は解消されていますが、Windows Server 2016/2019では特定の状況下(ドメインの「Administrator」の使用時)で想定外の影響を及ぼしているのかもしれません。Windows ServerにはUWPアプリはプリインストールされていませんが(例えば、Windows 10でUWPアプリ化された「電卓」は、Windows ServerではWin32アプリ(win32calc.exe)のままです)、「設定」アプリはUWPアプリとWin32アプリのハイブリッドのようなものだからです。

 試しに、Windows 10 バージョン1703(既にサポート終了)とバージョン1709(EnterpriseとEducationは2020年10月、その他は2019年4月にサポート終了)のスタンドアロンPCでローカルのビルトイン「Administrator」を有効化し、ログオンしてみたところ、バージョン1703では「設定」アプリの「Windows Defenderセキュリティセンターを開きます」をクリックした際に“このアプリを開けません ビルトイン「Administrator」アカウントを使って、Windows Defenderセキュリティセンターを開けません……”というメッセージが表示されました。

 Windows Serverの“指定したデバイス、パス、またはファイルにアクセスできません……”とはメッセージが違いますが、同じような場所で発生しています(画面5)。

画面5 画面5 Windows 10バージョン1703でビルトイン「Administrator」を有効化し、ログオンしたところ。「Windows Defenderセキュリティセンターを開きます」をクリックすると「このアプリを開けません」と表示される

 Windows 10 バージョン1709からはビルトイン「Administrator」でも「Microsoft Edge」やその他のUWPアプリを起動できるようになり、「Windows Defenderセキュリティセンターを開きます」のクリックも、期待通りに動作するよう問題が解消されています。

推奨の回避策は「ドメイン名\Administrator」の不使用

 この問題を回避する方法は簡単です。ドメインの「Administrator」(「ドメイン名\Administrator」または「ドメイン名\Administratorから変更した名前」)を使用して作業するのをやめればよいだけです。ビルトインAdministratorの使用は、サーバとクライアントの両方で“非推奨”であり、「Windows Vista」以降のクライアントでは既定で無効化されています。

 ドメインレベルの日常的な管理作業は、ドメイン管理用アカウントを作成し、「Domain Admins」グループのメンバーに追加して、ドメインの「Administrator」の代わりに使用すればよいのです。ドメインの「Administrator」を無効化することも可能であり、セキュリティ上好ましい対応です。

 しかし、慎重に行わないと(同じ権限のユーザーが利用可能であることを確認してから行わないと)大変なことになるのでくれぐれも注意してください。ドメインの「Administrator」を無効化しても、ディレクトリサービス復元モードの「Administrator」には影響しないので、少なくともシステム状態のバックアップを取得してからにしましょう。

 もう一つの回避策として、サーバのビルトイン「Administrator」では既定で無効になっているユーザーアカウント制御(UAC)を有効化する方法があります。それには、ローカルまたはグループポリシーで、以下のポリシーを「有効」に設定します(画面6)。

  • セキュリティの設定\ローカルポリシー\セキュリティ オプション\ユーザー アカウント制御: ビルトイン Administrator のための管理者承認モード

画面6 画面6 ビルトイン「Administrator」でUACを有効化するポリシー。このポリシーを有効化するよりも、ビルトイン「Administrator」の使用をやめることを推奨

 なお、この設定を行うと、ドメインだけでなく、ローカルのビルトイン「Administrator」で作業する場合もUACの承認プロンプトが求められるようになることに留意してください。

 最後に、UACは重要なセキュリティ機能なので、システム全体でUACを無効化することは決してお勧めしません。想定外の影響が出ることがあります。

筆者紹介

山市 良(やまいち りょう)

岩手県花巻市在住。Microsoft MVP:Cloud and Datacenter Management(2019-2020)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows版Docker&Windowsコンテナーテクノロジ入門』(日経BP社)、『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。


Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

4AI by @IT - AIを作り、動かし、守り、生かす
Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。