it-swarm.com.de

"Der Zugriff auf den Registrierungsschlüssel" Global "wird verweigert", wenn auf Leistungsindikatoren zugegriffen wird

Ich versuche, einige Leistungsindikatoren aus meiner ASP.NET-Anwendung zu lesen. Wenn ich das tue, erhalte ich die Fehlermeldung "Zugriff auf den Registrierungsschlüssel 'Global' verweigert."

Ich habe versucht, den Anweisungen zu folgen hier und hier mit dem Benutzer IIS AppPool\DefaultAppPool, die Identität, für die mein App-Pool konfiguriert ist:

Screenshot of App Pool configuration

Ich habe diesen Benutzer zur Gruppe der Systemmonitorbenutzer hinzugefügt:

enter image description here

Nach dem Hinzufügen des Benutzers habe ich meinen Computer neu gestartet. Aber ich bekomme immer noch den Fehler.

Ich habe auch versucht, die Benutzer IUSR und NETWORK SERVICE zur Gruppe der Systemmonitorbenutzer hinzuzufügen, aber diese funktionieren auch nicht. Aus Verzweiflung habe ich versucht, den Benutzer "Jeder" zur Gruppe der Systemmonitorbenutzer hinzuzufügen, und das funktioniert tatsächlich. Mein Ziel ist es jedoch, Statistiken aus meiner Anwendung in der Produktion zu protokollieren, und ich möchte dieser Gruppe auf dem Produktionsserver nicht "Jeder" hinzufügen.

Was muss noch geschehen, um die Leistungsindikatoren zu lesen, ohne eine Sicherheitsausnahme zu generieren?

36
Charlie Kilian

Ich habe die Lösung gefunden. Während Sie über verschiedene Links im Internet aufgefordert werden, die Identität zu verwenden IIS APPPOOL\DefaultAppPool, das ist NICHT die ganze Geschichte. Das funktioniert only, wenn Sie Ihre Anwendungen tatsächlich einem App-Pool mit dem Namen "DefaultAppPool" zuweisen.

Dieser Link bei ServerFault hat die Antwort. Sie müssen den Namen Ihres App-Pools verwenden. In meinem Fall lautete der Name des App-Pools "Staging", der richtige Benutzer war also IIS APPPOOL\staging. Das Hinzufügen dieses Benutzers zur Gruppe der Systemmonitorbenutzer hat mein Problem behoben.

60
Charlie Kilian