ニュース

WindowsにLinuxでお馴染みの「Sudo」コマンド実装へ

Sudoの有効化は設定から行なう

 Microsoftは、Windows 11 InsiderのCanaryおよびDevチャネルにおいて提供しているプレビュービルド26052において、LinuxのSudoに相当するコマンドを追加し、オプションで有効にできることを明らかにした。

 これまでWindowsのターミナルで管理者権限が必要なコマンドを実行する際には、管理者権限でターミナルを開く必要がありやや面倒であった。Sudoの実装により、非管理者権限で開かれたターミナルでも一時的に管理者に昇格してコマンドを実行できるようになる。

 Sudoはオプションで、Windowsの設定において、開発者向けページで「Sudoを有効にする」をあらかじめ設定しておく必要がある。なお、この有効にすると以下の3つのオプションが有効になり、ドロップメニューでどのように実行するか選択できる。

  • インライン(デフォルト設定)
  • 入力クローズ(ユーザーの入力を受け付けない状態)
  • 新しいウィンドウ

 なお、このオプションはSudo実行時にコマンドのオプションでも指定できる。実際にSudoを実行すると、UACで昇格が求められるダイアログが表示される。

 このうち入力クローズはややユニークで、昇格されていないsudo.exeと昇格済みのsudo.exe間をPRC接続する仕組みとなっており、昇格されたプロセスにはコンソールの入力ハンドルが渡されず、ユーザーの入力を読み取ることを無効化している。このためさらなるユーザー入力が必要なプログラムは実行できないが、セキュリティリスクを軽減できるとしている。

 MicrosoftはこのSudoのプロジェクトをGitHubでオープンソース化するとしており、レポジトリにプロジェクトに関する詳細情報を追加しており、今後数カ月以内に公開する予定。