ユーザschmoe_jは、ファイルをschmoe_jが書き込めないディレクトリにコピーするアプリケーションを実行できますか?C#アプリケーションレベルの権限がユーザーの権限よりも大きいですか?
答えて
いいえ、ファイルのアクセス権は、C#コードが実行されるよりはるかに低いレベルにあるファイルシステムによって処理されます。 C#コードはファイルシステムのセキュリティを直接バイパスできません。アプリケーションがschmoe_jとして実行されている場合、schmoe_jに書き込みアクセス権がないディスク上の場所に書き込むことはできません。
1つの例外は、schmoe_jにバックアップ&の復元権限がある場合です。この場合、ディスク上のどこにでも書き込むことができます。通常のユーザーはこの権限を持っていません。これは非常に危険な権限です。
他の理論的な方法があります。たとえば、標準ユーザーがディスク上の任意の場所に書き込むことができるような、安全でないサービスがボックスにある場合などです。そのようなケースは修正する必要があるセキュリティホールです。
使用するクラスによっては、通常、ディレクトリに書き込むための適切なアクセス許可がないと例外がスローされます。
たとえば、MSDNによれば、呼び出し元に必要なアクセス許可がない場合、File.CreateとFile.Copyを呼び出すときにUnauthorizedAccessException
がスローされます。
実行可能ファイルにマニフェストを含めて、アプリケーションがより高い特権で実行されるようにすることができます。
Adding a UAC Manifest to Managed Codeを参照してください。
Vista固有の、しかし良い答えです。 – dnord
私は通常、これが手渡される方法は、高められた許可の下で実行されるが、表面積は非常に小さく、GUIはないサービス(またはサービスアプリケーション)を使用することだと思います。ユーザーは、ユーザーのアカウントでできることを行う低い権限で実行されているアプリケーションとやりとりします。ファイルをドロップオフフォルダに置いたり、データベースに書き込んだりします。
アプリケーションはユーザの権利の下で実行し、ユーザがそれを行うことができれば、アプリケーションはそれを行うことができない。
ただし、アプリケーションは別のユーザーを偽装しようとする可能性があります。その場合、そのディレクトリにアクセスできます。これは、アプリが別のユーザーの権利を一時的に取得することに関連していました。これはASP.NETが非常に頻繁に動作する方法です。
これは、ユーザーが偽装されたユーザーの資格情報を提供する必要があることを示しています。
Articleこれを実証しています。
実行可能アプリですか?はい。これらのファイルをコピーしようとすると、UnauthorizedAccessException
が投げられますが、以前はコピーされません。
- 1. ユーザー権限
- 2. Facebookのユーザー権限とフレンド権限の違いは何ですか?
- 3. Android - ユーザーが権限を取り消したときにFacebookのエラーで権限が呼び出されない
- 4. 大きなC++プロジェクトの主要な権限は何ですか?
- 5. ユーザーの役割と権限
- 6. コマンドのSitecoreユーザー権限
- 7. information_schemaのmySQLユーザー権限
- 8. マニフェストのAndroidユーザー権限
- 9. データアクセス/ユーザー権限の管理
- 10. Pythonのユーザー権限は
- 11. ユーザーが書き込み権限を
- 12. Androidの権限のリストAPI 23の通常の権限と危険な権限はありますか?
- 13. 設定nginx - ユーザーと権限
- 14. C#アプリケーション、System.Net.NetworkInformationの権限エラー?
- 15. 権限のないユーザー401 Oauth 2.0 google
- 16. Spring Security - DB権限を持つ権限?
- 17. Unixの権限
- 18. SharePoint権限 - フルコントロールでユーザーがページを作成できない
- 19. 権限の拒否 - 権限が機能しません。
- 20. ユーザーがカスタマイズ可能なレール権限
- 21. AWSコードの展開により権限
- 22. MVC3のユーザー権限/セッション変数のベストプラクティス
- 23. 新しいマルチテナントアプリを作成する権限と権限システム
- 24. MVC3にページする権限がないときにユーザーをリダイレクト
- 25. Android Marshmallow権限ですか?
- 26. Azureの役割でより良い権限管理ができますか?
- 27. 自動ログインFacebookのユーザー権限
- 28. ASP.NETのスレッド権限
- 29. Amazon S3の権限
- 30. Rails 3の権限?
どのバージョンのウィンドウですか?ネットワークドライブまたはローカルマシン?これらの質問に対する回答によって、答えが異なる場合があります。 –
ネットワークドライブ上のWindows Server 2003。 –