Fehlermeldung
In ArcGIS Server Manager für Microsoft .NET Framework kann eine Webanwendung auf einem anderen Webserver erstellt werden. Diese Remote-Webanwendung kann dann in Manager geschützt werden, und bestimmten Rollen wird Zugriff auf die Anwendung gewährt. Wenn sich der Benutzer bei der Webanwendung anmeldet, kann im Browser ein Fehler angezeigt werden.
Standardmäßig wird ein generischer Fehler angezeigt. Wenn der Browser jedoch auf dem Webserver ausgeführt wird, der die Anwendung hostet, wird die Fehlermeldung angezeigt. Die Fehlermeldung lautet etwa wie folgt:
"Die bei der Anmeldung angeforderte Datenbank "" kann nicht geöffnet werden. Die Anmeldung ist fehlgeschlagen. Die Anmeldung ist für den Benutzer "" fehlgeschlagen."
ist normalerweise ein Netzwerkdienst oder ASPNET.
Ursache
Dieser Fehler kann auftreten, wenn der für den ArcGIS-Server konfigurierte Benutzerspeicher in Microsoft SQL Server vorliegt. Er kann aber auch für einen Benutzerspeicher in einem benutzerdefinierten Anbieter vorkommen. Die Ursache ist, dass die Webanwendung, die auf dem IIS-Remote-Webserver ausgeführt wird, nicht auf den in der Manager-Anwendung definierten Benutzerspeicher zugreifen kann.
Genauer gesagt, kann das Problem dadurch verursacht sein, dass der Name des Computers mit SQL Server nicht entsprechend angegeben wurde oder dass das Konto, mit dem auf SQL Server oder den benutzerdefinierten Anbieter zugegriffen wird, nicht über die richtigen Berechtigungen verfügt.
Lösung oder Problemumgehung
Führen Sie zur Lösung einen oder die beiden folgenden Schritte aus:
1) Korrigieren Sie den Computernamen oder die Informationen zum Speicherort für die Datenbank.
2) Stellen Sie sicher, dass das Konto, mit dem die Anwendung ausgeführt wird, über die richtigen Berechtigungen verfügt.
Mit den folgenden Schritten wird das Problem für SQL Server behandelt. Bei ähnlichen Problemen mit einem benutzerdefinierten Anbieter müssen Sie vergleichbare Schritte für den benutzerdefinierten Anbieter ausführen, also den Speicherort und die Berechtigungen des Anbieters konfigurieren.
- Die erste Ursache des Fehlers kann sein, dass der Name des Computers mit SQL Server angegeben werden muss, damit er vom Remote-Computer gefunden wird. So beheben Sie dieses Problem:
a) Melden Sie sich bei ArcGIS Server Manager an.
b) Klicken Sie auf "Sicherheit > Einstellungen" und dann auf "Konfigurieren".
c) Im Sicherheitsassistenten sollte das erste Fenster auf "SQL Server" festgelegt sein. Klicken Sie auf "Weiter".
d) Überprüfen Sie im Fenster "SQL Server angeben" den Wert für den Server. Hier muss der Name des Servers angegeben sein, damit der Remote-Computer ihn finden kann. Im Namen dürfen "." oder "localhost" nicht verwendet werden. Überprüfen Sie ggf., ob der Remote-Webserver, auf dem die Anwendung gehostet wird, mit dem Namen (oder der IP-Adresse) auf SQL Server zugreifen kann. Wenn als Name des SQL Server-Computers bereits ein Name festgelegt war, auf den der Remote-Webserver zugreifen kann, fahren Sie mit Schritt 2 weiter unten fort. Ändern Sie den Namen andernfalls bei Bedarf in den Namen oder die IP-Adresse des SQL Server-Computers.
e) Wenn der SQL Server-Name geändert wurde, klicken Sie auf "Verbinden", und schließen Sie den Assistenten ab, um die aktualisierten Einstellungen zu speichern.
f) Wechseln Sie zur Registerkarte "Anwendungen", und klicken Sie für die Remote-Webanwendung auf die Schaltfläche "Berechtigungen".
g) Klicken Sie im Dialogfeld "Berechtigungen" auf "Speichern" (Sie können Änderungen an den Berechtigungen vornehmen, dies ist allerdings nicht erforderlich). Dadurch wird die Konfiguration der Webanwendung mit dem aktualisierten SQL Server-Namen neu festgelegt.
h) Öffnen Sie in einem Browser die Remote-Webanwendung, und melden Sie sich an. Wenn Sie sich anmelden und die Anwendung verwenden können, müssen Sie die folgenden Schritte nicht mehr ausführen. Wenn ein Fehler zu Berechtigungen angezeigt wird, fahren Sie mit Schritt 2 fort. - Die Verbindung mit der SQL Server-Datenbank muss so konfiguriert werden, dass die Webanwendung auf die Datenbank zugreifen kann.
Bei dem hier dargestellten Ansatz wird eine SQL-Anmeldung für die Verbindung mit der Datenbank verwendet, keine Windows-Authentifizierung. Gehen Sie anhand der folgenden Anleitung vor, um die Authentifizierung für die Webanwendung so zu ändern, dass eine SQL-Anmeldung für die Verbindung mit der Webanwendung genutzt wird.
a) Öffnen Sie SQL Server Management Studio, und stellen Sie eine Verbindung mit der SQL Server-Instanz her. Installieren Sie für SQL Server Express ggf. SQL Server Management Studio Express.
b) Lassen Sie für SQL Server Express SQL-Anmeldungen zu. Klicken Sie dazu mit der rechten Maustaste in der Struktur auf der linken Seite auf den Server (\SQLEXPRESS), und klicken Sie auf "Eigenschaften". Klicken Sie im Fenster "Eigenschaften" auf den Seitenlink "Sicherheit". Klicken Sie im Fenster "Sicherheit" unter "Serverauthentifizierung" auf die Option "SQL Server- und Windows-Authentifizierungsmodus". Klicken Sie auf "OK", um die Einstellungen zu speichern und das Dialogfeld "Eigenschaften" zu schließen.
c) Fügen Sie eine neue SQL-Anmeldung hinzu, indem Sie den Ordner "Sicherheit" einblenden und auf den Ordner "Anmeldungen" klicken. Klicken Sie mit der rechten Maustaste auf den Ordner "Anmeldungen", und klicken Sie dann auf "Neue Anmeldung". Geben Sie im daraufhin angezeigten Dialogfeld einen Namen für die neue Anmeldung ein (z. B. AGSApplications). Klicken Sie auf die Option für die SQL Server-Authentifizierung, geben Sie ein Kennwort ein, und bestätigen Sie das Kennwort.
d) Klicken Sie im Dialogfeld für die neue Anmeldung auf den Seitenlink "Benutzerzuordnung". Aktivieren Sie unter "Benutzer, die dieser Anmeldung zugeordnet sind" das Kontrollkästchen neben der Datenbank, die die Benutzer für das ArcGIS Server-System enthält. Die Datenbank muss im Dialogfeld markiert sein. Aktivieren Sie dann unter "Mitgliedschaft in Datenbankrolle für: " die Rolle "db_owner". Klicken Sie auf "OK", um die Anmeldung und die Rolle zu erstellen. Schließen Sie SQL Server Management Studio.
e) Melden Sie sich bei ArcGIS Server Manager an, und klicken Sie auf "Sicherheit > Einstellungen > Konfigurieren".
f) Klicken Sie im Sicherheitsassistenten ggf. auf die SQL Server-Instanz für den Benutzerstandort, und klicken Sie auf "Weiter".
g) Geben Sie im Fenster "SQL Server angeben" den SQL Server-Namen ein. Verwenden Sie dabei den Servernamen und nicht "." oder "localhost". Klicken Sie auf "Verbinden", um eine Verbindung mit SQL Server herzustellen.
h) Deaktivieren Sie im daraufhin angezeigten Dialogfeld unten das Kontrollkästchen "Vertrauenswürdige Verbindung verwenden". Geben Sie den Anmeldenamen und das Kennwort für die oben erstellte SQL-Anmeldung ein. Wählen Sie die Datenbank aus dem Dropdown-Menü "Vorhandene Datenbank verwenden" aus. Klicken Sie auf "Weiter", und beenden Sie den Assistenten wie angegeben.
i) Wechseln Sie zur Registerkarte "Anwendungen", und klicken Sie für die Remote-Webanwendung auf die Schaltfläche "Berechtigungen".
j) Klicken Sie im Dialogfeld "Berechtigungen" auf "Speichern" (Sie können Änderungen an den Berechtigungen vornehmen, dies ist allerdings nicht erforderlich). Dadurch wird die Konfiguration der Webanwendung mit der aktualisierten SQL Server-Anmeldung neu festgelegt.
k) Öffnen Sie in einem Browser die Remote-Webanwendung, und melden Sie sich an. Sie sollten sich bei der Anwendung anmelden und sie verwenden können. Wenn Fehler mit Berechtigungen auftreten, überprüfen Sie die Einstellungen für die SQL-Anmeldung und die Manager-Konfiguration erneut.