悪名高い「システムライターオブジェクトでOnIdentity()呼び出しを処理中に暗号化サービスが失敗しました」というエラーは、Windowsのイベントログに頻繁に表示されます。一見するとかなり深刻な問題のように思えますが、実際にはボリュームシャドウコピーサービス(VSS)の権限に関する問題が原因であることが多いです。確かに、すぐにバックアップがクラッシュすることはないかもしれませんが、時間が経つにつれて、これらの権限の問題はセキュリティリスクやシステムバグにつながる可能性があります。これは「再起動して忘れる」ような簡単な問題ではありません。権限の調整、ドライバーの問題を修正、システム設定の確認方法を理解することで、問題が雪だるま式に大きくなるのを防ぐことができます。
Windows で暗号化サービスのアクセス許可エラーを修正する方法
方法1: mslldp.sys ドライバーの権限を修正する
通常、mslldp.sys
このエラーはドライバの権限設定が間違っている場合に発生します。このドライバの権限設定はネットワーク検出などの機能に不可欠なため、権限設定が間違っているとVSSが誤動作する可能性があります。この修正は、特にイベントログでエラーが該当のドライバに発生している場合に有効です。
要点は次のとおりです。
- コマンドプロンプトを管理者として実行します。「Windowsターミナル(管理者)」または「コマンドプロンプト(管理者)」を選択Windows key + Xします。これらの複雑な権限変更には管理者権限が必要です。
- 現在のセキュリティ設定を確認します。と入力します
sc sdshow mslldp
。出力結果を安全な場所に保存します。コピーしてテキストファイルに貼り付けてください。設定によっては正常に動作する場合もありますが、別の設定では全く異なる結果になる場合があります。 - セキュリティ記述子を更新します。通常は、 のような文字列になります。
S-1-5-...;
ただし、権限が弱い場合は、 を追加してみてください(A;;CCLCSWLOCRRC;;;SU)
。文字列を微調整する必要があるため、例として、既存の文字列を見つけて、S:
セクションの直前の既存の権限の後に追加します。 - 新しい記述子を適用します。
sc sdset mslldp [YourModifiedDescriptor]
を新しい文字列に置き換えて使用してください[YourModifiedDescriptor]
。文字列を間違えると、ドライバーにアクセスできなくなる可能性があるため、注意してください。 - 権限の確認: Sysinternalsからaccesschk.exeをダウンロードし、実行します
accesschk.exe -c mslldp
。R NT AUTHORITY\SERVICE
権限の下に が表示されるかどうかを確認します。これは、ドライバーに正常にアクセスできることを意味します。
Windowsはアクセス許可の設定が不安定な場合があるため、変更が実際に反映されるまで1~2回再起動する必要があります。また、この修正はWindowsのアップデート後に再適用する必要があるという意見もあるので、ご注意ください。
方法2: 主要なシステムフォルダの権限を修正する
VSS がエラーをスローする場合は、特定のシステムディレクトリに正しくアクセスできないことが原因である可能性があります。これらのディレクトリは、シャドウコピーや暗号化機能にとって非常に重要です。これらのディレクトリの権限を修正すると、多くの場合エラーが解消されます。
最善のアプローチは?所有権を取得し、権限を手動で設定します。
- 管理者としてコマンドプロンプトを開きます。上記と同様に、Windowsターミナル(管理者)Win + Xを選択します。
takeown /f "%windir%\winsxs\temp\PendingRenames" /a icacls "%windir%\winsxs\temp\PendingRenames" /grant "NT AUTHORITY\SYSTEM:(RX)" icacls "%windir%\winsxs\temp\PendingRenames" /grant "NT SERVICE\TrustedInstaller:(F)" icacls "%windir%\winsxs\temp\PendingRenames" /grant "BUILTIN\Users:(RX)" takeown /f "%windir%\winsxs\filemaps" /a icacls "%windir%\winsxs\filemaps\*" /grant "NT AUTHORITY\SYSTEM:(RX)" icacls "%windir%\winsxs\filemaps\*" /grant "NT SERVICE\TrustedInstaller:(F)" icacls "%windir%\winsxs\filemaps\*" /grant "BUILTIN\Users:(RX)"
少し強引な感じがするかもしれませんが、これらのディレクトリは権限エラーの原因となることが多いです。これを実行したら、暗号化サービスを再起動してください。
- cryptsvcを停止して再起動し
net stop cryptsvc
ます。net start cryptsvc
最後に、VSS システム ライターを確認します。
- VSSライターの一覧を表示します。を実行します
vssadmin list writers
。「System Writer」を探します。状態が「[1] 安定」と表示されていれば問題ありません。そうでない場合は、もう少し時間を置くか、さらにトラブルシューティングを進めてください。
方法3:グループポリシー、セキュリティソフトウェア、Windows Updateを調整する
サードパーティ製のセキュリティツールやグループポリシー設定によって、VSSおよび暗号化サービスに必要な操作がブロックされる場合があります。権限に問題がなくても、このような操作によってエラーが発生することがあります。
やるべきことは次のとおりです:
- グループ ポリシーを確認します。gpedit.mscを検索し、 [コンピューターの構成] > [Windows の設定] > [セキュリティ設定]で、アカウントのアクセス許可またはサービスの制限を制御するポリシーを確認します。
- セキュリティソフトを一時的に無効にする:セキュリティソフトはシステムサービスに干渉する可能性があります。一時的に無効にして、エラーが解消されるかどうかを確認してください。Windowsは必要以上にセキュリティを高く設定しているためです。
- Windows が完全に最新の状態であることを確認してください。「設定」>「Windows Update」に移動し、保留中の更新プログラムをインストールしてください。新しいビルドでは、これらの暗号化の問題を解決するバグが修正されている場合があります。
まとめ
こうした暗号化エラーが発生する主な原因として、権限の問題が挙げられます。ドライバの権限を修正し、システムフォルダへのアクセスを調整し、サービス操作をブロックするものがないか確認することで、大きな効果が得られます。このプロセスは魔法ではなく、試行錯誤のように感じることもありますが、これらの手順によって多くのユーザーが安定性を取り戻し、VSSをエラーなしで動作させることができました。
まとめ
mslldp.sys
ドライバーの権限を確認して修正する- 重要なシステムディレクトリの所有権を取得し、権限を設定する
- グループポリシーを確認し、干渉するセキュリティソフトウェアを無効にする
- Windowsが最新であることを確認する
これが役に立つことを祈る
これで数時間のストレスが軽減されることを願っています。権限の問題の修正は面倒ですが、少なくとも根本原因はたいてい解決できます。マシンによっては、1、2回の再起動ですべてが解決する場合もありますが、そうでないマシンではもう少し細かい調整が必要になるかもしれません。この問題を解決できることを願っています。すべてが再びスムーズに動作するようになったら、きっとその苦労は報われるでしょう。