前回(第98回『売り子さんは知らない? “Windows 10のストア”の世界』)では、ストア(Microsoft Store)の表示問題に関連して、サンドボックス環境「AppContainer」で動くストアアプリとそのケーパビリティ(Capability)について説明しました。
実は、このAppContainerには、非常に多くのSIDが関係しています。以下の画面3はその一例です。これは、「タスクマネージャー」から「Microsoft Solitaire Collection」アプリの実行ファイルのセキュリティ設定を参照したものです。ここにも「不明なアカウント」が出てきました。
この「不明なアカウント」は実際には不明ではなく、実在するものです。そのため、安易に削除してはいけません。通常、設定済みのセキュリティ設定では、簡単にはエントリを削除できません。しかし、何らかの方法で削除すると、アプリの実行に影響が出る可能性があります。
AppContainerに関連するSIDとしては、名前が付いたものとして、次の2つのグループがあります。SIDは固定です。これらのグループに対するアクセス権の設定は、Windows 8以降の標準インストールのあちこちで見つかります(後者は確かWindows 10 Anniversary Update以降から)。
次に、AppContainer自身のSIDである「AppContainer SID」があります。これは、「Package SID」と呼ばれることもあります。SIDの形式は以下のようになります。SIDに対応する名前はありません。というか、「パッケージのRID」の部分は、パッケージのフルネームからある規則で生成されたもので、それ自体、パッケージの名前を示しているといえるかもしれません。
アプリが使用するケーパビリティは、ケーパビリティごとに「S-1-15-3-」から始まる「ケーパビリティSID」を持ちます。その1つに、上記と同じRIDを持つケーパビリティSIDがあります。これは、AppContainerを簡単に識別できるように利用されているSIDのようです。
次に、既知の(Well-Known)ケーパビリティSIDがあります。これは、Windows 8でAppContainerが導入されたときからあるもので、固定のSIDを持つ10個のケーパビリティが存在し、それぞれ名前を持っています(PsGetSidユーティリティーで調べることができます)。
ケーパビリティは上記以外にもたくさん存在します。例えば、カメラ、マイク、位置情報、無線(Wi-Fi)、電話機能など、Windows 10のプライバシー設定にある機能やデバイス関連のものがまだ出てきていません。これらのケーパビリティSIDは、次のような形式になります。
SIDはありますが、これらは名前を持ちません。ケーパビリティの機能やデバイスは今後も増えるでしょうから、既知の(Well-Known)ケーパビリティから先は名前を付けなくなったということだと思います。上はケーパビリティの文字列から、下はデバイスのGUID(Globally Unique Identifier)から生成されます。
前回説明したように、アプリが使用するケーパビリティは、アプリのパッケージの「マニフェスト(AppxManifest.xml)」で宣言されています。画面4は、Windows 10 Fall Creators Updateの「Microsoft Edge」のマニフェストです。これらは全て、最終的にはケーパビリティSIDで識別されます。人が読める形式なのは、このうち「<Capability>」と「<uap:Capability>」にある5つだけです。
Copyright © ITmedia, Inc. All Rights Reserved.