0
我在ASP.NET中創建基於MVC3的Intranet應用程序。該應用程序是非常簡單的:
- 要求輸入(用戶名)
- 管道腳本輸出到HTML文件
- - 重定向到創建的HTML文件中使用提供的用戶名(獲取從遠程數據庫中的一些數據)
運行PowerShell腳本。
出於安全原因,我使用Windows身份驗證,僅對特定用戶組進行訪問。這對於應用程序本身非常有用 - 我可以在角落看到當前的用戶名,而不是指定的用戶無權訪問。
問題是PS腳本本身。它似乎沒有與用戶的憑據一起工作,所以我將whoami
行添加到腳本並得到結果:iis apppool\asp.net v4.0
。
這是我用來運行PS腳本代碼:
ASP.NET - 使用傳遞身份驗證(Windows身份驗證)運行PowerShell腳本
var ps = PowerShell.Create();
ps.Commands.AddScript(@"CommandHere");
ps.Invoke();
我如何使用當前用戶的憑據運行它?
爲什麼不直接通過Windows進行腳本授權。它將使用Windows憑據。在你的asp.net表單中添加驗證,只允許任何人訪問。 http://blogs.msdn.com/b/dvespa/archive/2010/02/22/how-to-use-windows-authentication-with-the-pscredential-class.aspx – Botonomous
我很安靜PowerShell和ASP.NET新手。你能給我更多的細節如何在我的代碼中使用它嗎? –