複数のSteamアカウントを1台のパソコンで使い分ける場合、とくになにも設定しないままだと、どのアカウントの「ライブラリ」にもインストールしているゲームが共有された状態で表示されていると思います。
同じゲームをアカウントごとに購入しなくても良いという点では嬉しいのですが、あまり他人にプレイしていることを知られたくないゲームもあるかと思います( 一一)
家族や仲間内でパソコンを共有している場合など、アカウントごとにパスワードを設定しているにも関わらず、購入したゲームが全体に公開されていてはプライベートもなにもあったものではありません。
このような場合のSteamアカウント間でインストールしているゲームの情報を共有させない設定に手間取ったので、備忘録的に手順を残しておきます。家族や仲間内でパソコンを共有している場合など、アカウントごとにパスワードを設定しているにも関わらず、購入したゲームが全体に公開されていてはプライベートもなにもあったものではありません。
目次
今回の設定方法は、Windowsの環境を前提としています。
MacOSやLinuxなんかでも理屈は同じはずなので、参考にはなるかと思います。
環境設定のゴール
最終的にWindows上で下図のような設定となるように環境を変更していきます。3アカウント以上作成する場合でも手順は同様です。
用意するものは、
- Steamアカウントに対応したWindowsアカウント
- それぞれのアカウントに対応したゲームの保存領域

共有して使用しているパソコンで各使用者ごとにWindowsアカウントを用意し、アクセス権限の設定を用いて他者のゲーム保存領域にアクセスできないように設定していきます。
上の図だと、UserAはEドライブのSteamの保存領域が、UserBはDドライブの保存領域が見えないようになります。(ドライブに関して、物理的にHDDやSSDなどの保存領域が分割されていない場合でも問題ありません)
共有したいゲームは、共通の領域(C)へインストール、共有したくないゲームは他者から見えない個人の保存領域(D or E)に、インストールするなど使い分けることも可能です。
以下大まかな作業手順です。
- ゲームをインストールするドライブを分割
- Steam上でゲームのインストール先は、フォルダ単位で分割できず、ドライブ単位でしか分割できないので、ドライブをUser数+1個作成します。
- Windows上でアカウントを作成
- パソコンを共有する人数分だけWindowsアカウントを追加します。
- ゲーム保存フォルダにアカウントごとにアクセス権限を設定
- Windows OSのアクセス権限を用いてプライベートな保存領域を設定します
- 他アカウントのゲームが見えなくなったら完了
- Steamアプリからも、保存フォルダを直接開いても見えないことを確認します
インストールドライブの分割
すでにパーティションがユーザー数+1個に分割されている場合は以下の作業の必要ありません。次の作業へ進んでください。
下図のように分割したいアカウント数に対してドライブ(パーティション)が足りない場合は以下の手順を行ってください。

手順1:
パーティションの数が分割したいアカウント数+1となるように、パーティションを分割します。
パーティションの分割には、「MiniTool Partition Wizard」というツールが無料で使うことができるのでおすすめです。
▼ダウンロード
公式サイトからダウンロードして、指示に従ってインストールしていきます。

途中、無料版をインストールするか尋ねられるところがありますが↑、無料版で問題ありません。
手順2:
インストールできたら、MiniTool Partition Wizardを開きます。
分割したいドライブを選択→「パーティション分割」

ドライブのサイズはダウンロードしたいゲームのサイズに合わせて適宜変更してください。複数のゲームをダウンロードすることを考えると、少なくとも50GB以上で大きめに設定しておくのが無難です。


Windowsでのアカウントの作成
次にWindows上でユーザーを追加してアカウントを作成していきます。
手順1:
「スタート」→「設定」→「アカウント」→「家族とその他のユーザー」で以下の画面まで行き、「その他のユーザーをこのPCに追加」をクリックします。

手順2:
「このユーザーのサインイン情報がありません」→「Microsoftアカウントを持たないユーザーを追加する」でユーザー名とパスワードを設定するだけでアカウント作成可能です。

今回の例では、User_AにサインインしたうえでUser_B作成し、Windows上に2アカウントがある状態としました。
Steamへのインストールドライブの追加
ドライブを複数用意したので、Steam上にゲームの保存領域として登録していきます。この操作はUser_A側でも、User_B側のSteamアカウントでもどちらで行っても問題ありません。
手順1:
左上「Steam」→「設定」→「ストレージ」→「ドライブを追加」

手順2:
追加したパーティションが選択リストとして表示されるので、以下のようにドライブを追加します。

今回の場合だと、Cドライブがデフォルトのドライブとして登録されていたので、DドライブとEドライブを追加しました。
Steamの各ドライブへゲームをインストール
ここで、試しに追加したドライブへ適当にゲームをインストールして、まだお互いのアカウントからゲームが見えることを確認してみます。
下のようにUser_B側でEドライブにゲームをインストール(下図左)、User_A側でDドライブにゲームをインストール(下図右)してみます。


WindowsアカウントUser_A側でSteamを開いてライブラリを見てみると、User_B側でインストールしたゲーム(下図右赤枠)が表示されています。
WindowsアカウントUser_B側でもUser_A側でインストールしたゲーム(下図左赤枠)が表示されていることが分かります。

これでは、この記事の目標である「各Steamアカウントごとでプライベートを守る」が達成されていないので、以下の手順で現在ゲームを保存している領域を、各Windowsアカウントでしかアクセスすることが出来ない領域に設定します。
アクセス権限の設定
Steam上で上記手順でドライブを追加すると、各ドライブに以下のような「SteamLibrary」というフォルダが出来ます。
E:. or D:. or ...
└─SteamLibrary
└─steamapps // このにフォルダにアクセス権限を設定
├─common
│ └─Goose Goose Duck // インストールしたゲーム例
├─downloading
├─shadercache
└─temp
手順1:
エクスプローラーから「steamapps」フォルダを左クリックし、「プロパティ」→「セキュリティ」タブを表示します。

手順2:
「編集(E)...」→○○のアクセス許可ウィンドウから「追加(D)...」を選択

手順3:
ユーザーまたはグループの選択ウィンドウの「詳細設定(A)...」

手順4:
ユーザーまたはグループの選択ウィンドウから「検索(N)」を選択
アクセスを拒否するUserを選択します。以下例では、User_Bのゲームを保存しているsteamappsの権限を設定しているので、User_Aのアクセスを拒否するためにUser_Aを選択→「OK」

手順5:
アクセスを拒否したいユーザーが選択されていることを確認し→「OK」

手順6:
そのユーザーを選択し、下の「アクセスの許可」から拒否の欄にチェックを付けます。細かく設定しないのであれば一番上の項目の「フルコントロール」にチェックを付けます。

手順7:
以下のような確認事項が出ますが、はいを選択します。

もう片方のSteamアカウントでも、他のアカウントからのアクセス制限をしたければ、対象ドライブのsteamappsのフォルダに上記手順で同じことを行います。
以上で、User_AからはEドライブのsteamappsに保存されているゲームが見えなくなり、User_BからはDドライブのsteamappsに保存されているゲームが見えなくなったはずです。
Steam上での表示確認
上記までで、一番最初に示したこの図と同じ状態となるように設定を行ってきました。

Steam上で確認
User_Aで、権限を設定する前まで表示されていたはずのゲームの表示がなくなり(下図左)、User_B側でもライブラリにUser_A側のゲームが表示されなくなったこと(下図右)を確認します。

フォルダへのアクセスを確認
アクセスを拒否されているWindowsアカウントから、該当のフォルダを開こうとすると、以下の「このフォルダーにアクセスする許可がありません。」が表示され、開けないことを確認します。
補足:権限設定中のエラー
「コンテナ内のオブジェクトを列挙できませんでした」
参考:https://itojisan.xyz/trouble/20190/
パソコンの記憶媒体の換装時やパーティション結合時など、ディレクトリの閲覧権限が予期せず変わってしまうこともあるので、そのような場合の事故には気を付けてください( 一一)
以上
そこそこ面倒なので、もっと楽な方法を知っている方は教えてください。