Wie bekomme ich die Identität eines appPool programmgesteuert in C#? Ich möchte den Anwendungspoolbenutzer und NICHT den Benutzer, der gerade angemeldet ist.Abrufen der Anwendungspoolidentität programmgesteuert
24
A
Antwort
33
Sie könnten System.Security.Principal.WindowsIdentity.GetCurrent().Name
verwenden, um die Identität zu identifizieren, in der die aktuelle Anwendung ausgeführt wird. This link bietet ein nettes Dienstprogramm, das die Identität anzeigt, unter der das aspx ausgeführt wird.
2
Sie müssen einen Verweis auf Microsoft.Web.Administration (in Microsoft.Web.Administration.dll) vornehmen. Microsoft.Web.Administration.dll befindet sich in C: \ Windows \ System32 \ inetsrv.
//Add this to your using statements:
using Microsoft.Web.Administration;
//You can get the App Pool identity like this:
public string GetAppPoolIdentity(string appPoolName)
{
var serverManager = new ServerManager();
ApplicationPool appPool = serverManager.ApplicationPools[appPoolName];
appPool.ProcessModel.IdentityType = ProcessModelIdentityType.SpecificUser;
return appPool.ProcessModel.UserName;
}
Verwandte Themen
- 1. Bean programmgesteuert abrufen
- 2. Parameter für Webdienst programmgesteuert abrufen?
- 3. Symfony FOSOAuthServerBundle Token programmgesteuert abrufen?
- 4. Aktuellen ASP.NET-Vertrauensgrad programmgesteuert abrufen
- 5. Abrufen eines C++ Klassennamens programmgesteuert
- 6. Wie programmgesteuert die Cacheseitengröße der CPU in C++ abrufen?
- 7. Amazon Auftragshistorie programmgesteuert in Java abrufen
- 8. Inhaltsdateien und primäre Ausgabe programmgesteuert abrufen
- 9. Wie programmgesteuert öffentliche DNS einer Instanz abrufen?
- 10. Wie Sie Stilattribute programmgesteuert aus styles.xml abrufen
- 11. Datenbankverzeichnis für meine App programmgesteuert abrufen
- 12. Den Wert einer generischen Deklaration programmgesteuert abrufen?
- 13. Programmgesteuert die Tabsize von Eclipse abrufen
- 14. Wie wird die IIS 7-Anwendungspoolidentität richtig eingerichtet?
- 15. Verwenden der Sicherungsdatenbank programmgesteuert
- 16. Einstellung der Tastenausrichtung programmgesteuert
- 17. Ändern der Schaltflächenfarbe programmgesteuert
- 18. Wie kann ich den Installationspfad einer anderen Anwendung programmgesteuert abrufen?
- 19. Wie Sie die Kontaktinformationen aus dem Adressbuch programmgesteuert abrufen
- 20. MergeField-Werte aus Mail-fusion Word-Dokument programmgesteuert abrufen
- 21. Entity Framework-Code Erste Migrationen: SQL-Skripts programmgesteuert abrufen
- 22. Einfachste Ivy-Code programmgesteuert abrufen Abhängigkeit von Maven Central
- 23. Wie kann ich die Python-Compiler-Zeichenfolge programmgesteuert abrufen?
- 24. Liste von Mac-Text-zu-Sprache-Stimmen programmgesteuert abrufen?
- 25. Wie programmgesteuert mit einer Suchabfrage in WordPress erstellte Posts abrufen?
- 26. Autorisierungscode von Spring OAuth 2.0 Authorization Server programmgesteuert abrufen
- 27. Wie Abrufen aller und Ausführen von Anwendungsgrößen, CPU-Auslastung programmgesteuert?
- 28. Abrufeinschränkungen in der Sammlungsansichtszelle abrufen?
- 29. Magento-Modell Fehler abrufen statt Objekt - Auftrag programmgesteuert erstellen
- 30. Abrufen der Textansicht des TabLayout-Registers
Wenn ich die AppPool Identität im IIS-Manager ändern sollte nicht System.Security.Principal.WindowsIdentity.GetCurrent(). Name, um den geänderten Wert erhalten? – p0enkie
Ok für jemanden da draußen, der Probleme haben könnte. Dies ist der Code, den ich benutzt habe, um den Benutzernamen zu erhalten, der den AppPool (seine Identität) gestartet hat: ApplicationPool pool = serverManager.ApplicationPools ["YoutAppPoolName"]; pool.ProcessModel.IdentityType = ProcessModelIdentityType.SpecificUser; Zeichenfolge user = pool.ProcessModel.UserName; – p0enkie
@ p0enkie Was ist 'serverManager'? – Kiquenet