bootshellcredentialprovider- Linux desをWindowsに持ち込みます
BSCPを使用すると、WindowsのネイティブログオンUIとログイン時のXming&WSLの組み合わせを使用して、LinuxデスクトップエクスペリエンスにWindowsを直接起動できます。




はじめる
前提条件:
- VCXSRVをインストールする必要があります。これは、たまたま安定して紹介されている無料のXming代替品です。それ以外の場合はチョコレートで入手できます:https://sourceforge.net/projects/vcxsrv/
- Visual Studio 2017のためにMicrosoft Visual C ++の再分配をインストールする必要があります。こちらから入手できます
- Bash環境を含むLinux用のWindowsサブシステムがインストールされ、動作しています
- どのLinux desを探索し、WSLを介してそれらをインストールしたかについての感覚があります。インスピレーション/実行可能なスクリプトについては、こちらをご覧ください。注:そのファイル内のすべてを実行することは機能するはずですが、関係なく長い時間がかかります。
インストールと構成:
- ここからインストーラーをダウンロードして実行します。デフォルトを変更しないでください。デフォルトの動作。
- bscp configuratorを実行します(スタートメニューでショートカット)
- 必要に応じて設定を構成します。デフォルトは、上記のセットアップScritptによって作成された環境で動作する必要があることに注意してください。
- BSCP Configuratorが保存しようとするとクラッシュする可能性が低い場合、許可の問題があります。管理者としてもう一度実行してみてください。それがうまくいかない場合は、おそらく
HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWinLogonで完全な制御権限を与える必要があります。 - サインアウトして見よ!
- 表示されていない場合は、Visual C ++の再分配可能なものがインストールされていることを再確認してください。
使用法:
- ctrl+alt+delは、Linux desにいる間も動作します。これは、サインアウト、タスクマネージャーを開始する方法です。
- Explorerがシステムシェルとして実行されていない間、Win+Rは機能しません。タスクマネージャー(Ctrl+Alt+Delを介して)を使用して、Windowsプログラムを開始します
- DEが起動すると、Windows Explorer(シェルではなくファイルエクスプローラーとして)が前面で実行される可能性があります。安全に無視または閉じることができます。
- アンインストーラーは特に賢くありません。 Configuratorを使用して最初に機能を無効にしてから、アンインストーラーを実行します。
- これをインストールしたら、ログインする主な方法として使用することをお勧めします。別の資格情報プロバイダー(PINログオンまたはWindows Helloなど)をログインした場合、シェル設定を更新する方法はありません。
プロジェクトについて
このプロジェクトは、いくつかのコンポーネントで構成されています。
- Configurator:構成を変更するためのフレンドリーなデスクトップアプリ
- regprovider:レジストリと対話するためのヘルパーライブラリ(ここでは特別なものはありません)
- configurableshell:ブート時にWindows Explorerシェルを交換します。レジストリの設定をチェックし、指定されたデスクトップ環境(Windows Explorer、XFCEなど、仕事に就くことができるもの)をロードします。
- bootshellcredentialprovider:credentienceprovider v2インターフェイスを使用したWinlogon用のプラグイン。このコンポーネントは、利用可能なデスクトップ環境を表示し、選択した環境をレジストリに設定します
リスク、セキュリティ、完全な開示
いくつかの理由で、おそらく生産/ミッションクリティカルなシステムに似たことでこれを行うべきではありません。
- Winlogon内で私の管理されていないC ++コードを実行しています。私のコードがクラッシュすると、Winlogonがクラッシュします。これが発生した場合、PCを使用することはできません。
- 私の管理されていないコードは、Windowsパスワードを処理しています。これは、Microsoftのサンプル/テンプレートから借用されています。懐疑論が奨励されています。
- このシステムのコンポーネントは、さまざまなシステムレジストリキーのセキュリティを弱めることに依存しています。これらは、首尾一貫したデスクトップエクスペリエンスを提示するWindowsの機能にとって重要です。
- これは私の2番目の深刻なC ++プロジェクトであり、最初にWin32 APIを使用しました。幸運を。
貢献とフィードバック
このプロジェクトに関する(建設的な)フィードバックに感謝しますが、もちろんPRを受け入れます。共有するものがある場合は、このプロジェクトに問題を提出してください。
ライセンス
このプロジェクトのほとんどは、MITライセンスの下でリリースされます。資格情報プロバイダーコンポーネントは、MS-LPLライセンスの下でリリースされます。これは、samplev2credentialproviderプロジェクトから派生しているためです。