シェル ランチャーの構成
シェル起動ツールを構成するには、次の 2 つの方法があります。
-
割り当て済みアクセス構成サービス プロバイダー (CSP) の
ShellLauncher
ノードを使用します。これにより、デバイスでシェル起動ツールがサポートされている場合も自動的に有効になります。 - アプリケーションで シェル起動ツール WMI プロバイダーを 直接使用する。 このメソッドを使用する場合は、最初に シェル起動ツールを有効にする 必要があります
シェル起動ツールには、次のオプションを構成できます。
- 特定のユーザーまたはグループのシェル構成を追加または削除する
- 既定のシェル構成を変更する
- 特定のユーザーまたはグループのシェル構成に関する情報を取得する
注
変更は、ユーザーがサインインするまで有効になりません。
シェル起動ツールを有効にする
シェル起動ツールは、既定では有効になっていない Windows のオプション コンポーネントです。 構成するには、まず有効にする必要があります。 カスタマイズした Windows イメージでシェル 起動ツールを有効にして構成することも、プロビジョニング パッケージを適用して構成する前に有効にすることもできます。
注
割り当てられたアクセス構成サービス プロバイダー (CSP) を使用してシェル起動ツールを構成すると、デバイスでサポートされている場合、シェル起動ツールが自動的に有効になります。 割り当てられたアクセス CSP を使用してシェル 起動ツールを構成するときに、シェル起動ツールを個別に有効にする必要はありません。
シェル起動ツールを有効にする方法は複数あります。詳細については、ニーズに最適な方法を選択してください。
コントロール パネルを使用してシェル起動ツールを有効にするには、次の手順に従います。
-
コントロール パネル>Programs を開く>Windows の機能をオンまたはオフにするか、コマンドを使用します
optionalfeatures.exe
- [デバイス ロックダウン] を展開し、[シェル 起動ツール] を選択します
- [ OK] を 選択してシェル起動ツールを有効にする
ユーザー アカウントごとに異なるシェルを起動する
既定では、シェル 起動ツールは既定のシェルを実行します。これは、設計時に OS イメージを作成するときに指定されます。 既定のシェルは Windows コマンド プロセッサ (Cmd.exe
) に設定されますが、任意の実行可能ファイルを既定のシェルとして指定できます。
既定のシェルを実行しない場合は、特定のユーザーまたはグループに対して別のシェルを起動するように Shell Launcher を構成することもできます。 たとえば、ゲスト アカウント用のカスタム アプリケーション シェルを起動するようにデバイスを構成する一方で、デバイスをサービスするための管理者アカウントに対して標準の Windows エクスプローラー シェルを実行する場合があります。
現在サインインしているアカウントが、グループごとに異なる構成が定義されている 2 つ以上のグループに属している場合、シェル起動ツールは最初に見つかった構成を使用します。 検索順序は定義されていないため、シェル起動ツールの構成が異なる複数のグループにユーザーを割り当てないようにすることをお勧めします。
注
実行時に WMI プロバイダーを使用してユーザーまたはグループのシェル 起動ツールを構成する場合は、そのセキュリティ プリンシパルのセキュリティ識別子 (SID) を使用する必要があります。 ユーザー名またはグループ名は使用できません。
一般的なセキュリティ識別子の詳細については、「 既知の SID」を参照してください。
シェル起動ツールの起動と終了の動作
シェル起動ツールは、カスタム シェルを起動する前に Run
と RunOnce
レジストリ キーを処理するため、カスタム シェルは他のアプリケーションやサービスの自動起動を処理する必要はありません。
シェル起動ツールは、カスタム シェルが終了したときのシステムの動作も処理します。 既定の動作がニーズを満たしていない場合は、シェルの終了動作を構成できます。 カスタム シェルが終了すると、シェル起動ツールは次の 4 つのアクションのいずれかを実行できます。
-
0
: シェルを再起動します -
1
: デバイスを再起動する -
2
: デバイスをシャットダウンする -
3
:遊ぶ
重要
シェル アプリケーションが自動的に終了せず、ダイアログ フィルターなどの機能によって自動的に閉じられないことを確認します。これは、リターン コード アクションが何も行わない限り、終了と再起動の無限のサイクルにつながる可能性があります。
既定の戻りコード アクション
DefaultReturnCodeAction 設定を使用して、シェル 起動ツールの既定のリターン コード アクションを定義できます。 初期値を変更しない場合、既定の戻りコード アクションは 0 (ゼロ) に設定されます。これは、シェル起動ツールがシェルの終了時にシェルを再起動することを示します。
終了コードをシェル起動ツール アクションにマップする
シェル起動ツールは、シェルによって返される終了コードに基づいて特定のアクションを実行できます。 シェルによって返される特定の終了コードに対して、シェル起動ツールが実行するアクションを構成するには、その終了コードをいずれかのシェル終了アクションにマッピングします。
終了コードが定義された値と一致しない場合、シェル起動ツールは既定の戻りコード アクションを実行します。
たとえば、シェルは、シェルの終了方法に応じて、 -1
、 0
、 1
、または 255
の終了コード値を返す場合があります。 シェル起動ツールは、次のように構成できます。
- シェルが値の終了コードを返すときにデバイスを再起動する (
1
)-1
- シェルが値の終了コードを返すときにシェルを再起動する (
0
)0
- シェルが値 1 の終了コードを返すときに何もしない (
3
) - シェルが値の終了コードを返すときにデバイスをシャットダウンする (
2
)255
カスタムリターンコードアクションマッピングは次のようになります。
終了コード | 操作 |
---|---|
-1 |
1 (デバイスを再起動する) |
0 |
0 (シェルを再起動します) |
1 |
3 (何もしない) |
255 |
2 (デバイスをシャットダウンする) |
割り当てられたアクセス CSP を使用してカスタム シェルを設定する
シェル起動ツールの構成は、XML ファイルを使用して行われます。 XML ファイルは、次のいずれかのオプションを使用して、 割り当てられたアクセス CSP を介してデバイスに適用されます。
- Microsoft Intune などのモバイル デバイス管理 (MDM) ソリューション
- プロビジョニング パッケージ
- MDM ブリッジ WMI プロバイダー
注
割り当てられたアクセス CSP を使用してシェル起動ツールを構成すると、デバイスでシェル起動ツールがサポートされている場合、自動的にデバイスでシェル起動ツールが有効になります。
シェル起動ツール XML ファイルを構成する方法については、「 シェル 起動ツール構成ファイルの作成」を参照してください。
次の手順では、デバイスを構成する方法の詳細を示します。 ニーズに最適なオプションを選択します。
[割り当てられたアクセス CSP] で カスタム ポリシー を使用してデバイスを構成できます。
-
設定:
./Vendor/MSFT/AssignedAccess/ShellLauncher
- 値: XML 構成ファイルの内容
構成するデバイスをメンバーとして含むグループにポリシーを割り当てます。
ヒント
実際の例については、「 クイック スタート: シェル起動ツールを使用してキオスク エクスペリエンスを構成する」を参照してください。
ユーザー エクスペリエンス
設定が適用されると、シェル起動ツールを使用するように構成されているユーザーは、サインイン後にカスタム シェルを実行します。
構成に応じて、デバイスに自動的にサインインするユーザーを設定できます。
シェル起動ツールを削除する
シェルランチャーを削除するオプションを次に示します。ニーズに最適な方法を選択します。
構成を含むポリシーの割り当てを解除または削除します。
次のステップ
シェル起動ツール XML ファイルを構成する方法について説明します。