Announcement

Collapse
No announcement yet.

Probleme mit der Server-Registrierung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Probleme mit der Server-Registrierung

    Hallo!

    Ich weis nicht ob ich mir hier das richtige Forum ausgesucht habe, aber wenn nicht könnt ihr mir gerne andere Foren posten. Hier im Forum konnte ich noch keine Lösung finden.

    Ich stelle einfach mal meine Fragen:

    Ich versuche heute verschiedene PCs (XP Prof. u. Win-2000 mit allen Updates) an einen SQL-Server-2000-Express (auf Win-Server-2000 mit allen Updates, kein DC!) zum laufen zu bekommen. Obwohl manche User die gleichen Rechte haben bekomme ich auf manchen PCs verschiedene Fehlermeldungen:
    - Ungültiger Attribut- / Optionsbezeichner auf einem Win-2000-Client. Dem User wurden auf dem Server bestimmt alle Rechte zugeteilt...
    - Auf einem anderen Win-2000-Client kann ich den SQL-Server registrieren, aber die einzelnen Sichten und Tabellen werden in dem Access-Projekt (ADP) mit "(dbo)" aufgelistet, was auf keinem anderen PC der Fall ist. Die Folge ist, dass auf diesem PC keine Berichte ausgedruckt werden können.
    - Auf einem XP-PC kann ich den SQL-Server nicht registrieren. Es kommt die Fehlermeldung "Fehler bei der Anmeldung für den Benutzer "(null)"

    Andere XP und 2000-Clients laufen jedoch ohne Probleme. Die SQL-Konnektivität ist überall die gleiche. Ich weis nicht woran es noch liegen könnte...

    Vielen Dank für Eure Hilfe!!

    Gruß
    Stefan

  • #2
    Ist es eigentlich bei jeder Änderung der Sicherheitseinstellung notwendig den SQL-Dienst neu zu starten? Oder werden diese Änderungen ohne weiteres übernommen?

    Comment


    • #3
      Auch hallo,

      muss die 2000'er Version zwingend eingesetzt werden oder darf man auch den 2005'er (auch Express) verwenden ? Immerhin funktioniert dieser in Verbindung mit Windows 2000 und XP hervorragend.
      MfG
      Cheat-Sheets for Developers / Programming Quotes

      Comment


      • #4
        Die 2000er muss noch so lange laufen bis die 2005er läuft, die bin ich gerade am installieren, aber davon hab ich leider noch weniger Ahnung... verschaff mir momentan einen Einblick.
        Das Anmeldeprozedere bei der 2005er war bisher auch auf allen Clients äußerst unproblematisch, nachdem ich auf dem Server die "named pipes" aktiviert hatte... Allerdings werden mir hier noch in meinem Access-Projekt die Sichten in der falschen Reihenfolge angezeigt, die Sortierung stimmt hier überhaupt nicht.
        Dem Problem werd ich mich widmen wenn der 2000er wieder problemlos läuft.

        Übrigens, wenn ich bei dem 2000er neue Benutzer einzeln anmelde, bekomme ich immer eine Fehlermeldung ("dem Benutzernamen ... wurde der Zugriff auf seine Datenbank nicht gewährt....") wenn ich diesen eine andere Datenbank wie die "master" zuweisen will. Was kann das denn sein?

        Habe gerade wieder einen Win-2000-Client registriert. Dieses mal ohne Probleme.....

        Comment


        • #5
          Hallo Stefan,

          > Access-Projekt (ADP) mit "(dbo)" aufgelistet
          Das geschieht bei allen Usern, die nicht in der SysAdmin-Rolle sind; auch bei Usern, die in der DB-Rolle "db_Owner" sind.

          > Fehler bei der Anmeldung für den Benutzer "(null)"

          Das wiederum geschieht in der Regel, wenn man sich über die Windows-NT Kennung anmeldet, diese im MSSQL aber nicht eingerichtet wird bzw. keine Rechte für die gewählte DB hat. Dann wird auf den "Guess" Account geswitched, und der ist (sollte) ebenfalls nicht aktiv.

          Mich deucht, Du hast da etwas durcheinander mit den Benutzern und deren Berechtigungen.

          >die "named pipes" aktiviert
          Das ist aber eher eine Notlösung. MS selbst sagt von seinem eigenen Protokoll, das es für den Einsatz mit MSSQL eher ungeeignet ist und man besser TCP/IP verwenden sollte.
          Kann es sein, das es an den betroffenen Clients Netzwerk-Probleme gibt oder eine Firewall, die alles blockiert?

          Normalerweise läuft Win2000/XP Client und MSSQL 2000 / 2005 reibungsfrei.
          Olaf Helper

          <Blog> <Xing>
          * cogito ergo sum * errare humanum est * quote erat demonstrandum *
          Wenn ich denke, ist das ein Fehler und das beweise ich täglich

          Comment


          • #6
            Das "(dbo)"-Problem konnte ich damit lösen, in dem ich diesen User in die Sysadmin-Rolle mit reingenommen habe. Da standen nur die vorinstallierten Administratoren drinne. Muss da echt jeder User in die Sysadmin-Rolle?

            Das bei den Benutzern irgendwas durcheinander ist vermute ich auch ganz stark. Ich hatte auch schon mal alle Benuter gelöscht und bei Null angefangen, bzw. ich habe auch alle User auf dem Server in einer SQL-Gruppe zusammengefasst und nur diese auf dem SQL-Server eingefügt. Es hatten dann aber nicht alle User Zugriff, und ich habe dann die fehlenden User noch zusätzlich eingefügt.

            Bei dem "(null)"-Problem bin ich jetzt nicht weiter gekommen. Der Guest-Account ist deaktiviert. Der Windows-Login passt mit dem SQL-Login überein, Name und Kennwort. Was könnte ich hier noch machen?

            Das mit den named-pipes find ich auch nicht so optimal, denke auch dass hier vielleicht mein Problem ist. Ich wollte es aber so installieren, weil es in der Vergangenheit so schon einmal lief. Auf dem 2005er soll dann aber schon TCP/IP laufen.

            Mit dem Fehler "Ungültiger Attribut- / Optionsbezeichner" bin ich immer noch nicht weiter, hab noch nichts gefunden. Alle Versuche waren bisher erfolglos. Klingt aber auch nach fehlenden Rechten.....

            Danke in jedem Fall schon mal für die geleistete Hilfe!!!

            Comment


            • #7
              >Muss da echt jeder User in die Sysadmin-Rolle
              Njein.
              Das mit "dbo" liegt nur an Access und dem Entwickler, der das nicht richtig berücksichtigt hat.
              Wenn ein User nur Lesen können darf, dann reicht die Datenbank-Rolle "db_DataReader" vollkommen aus.

              >Windows-Login passt mit dem SQL-Login überein, Name und Kennwort. Was könnte ich hier noch machen
              Das hast Du missverstanden, man richtet den Windows-NT Account auf dem SQL Server ein und kann sich dann ein "vertraute Verbindung" verwenden.
              D.h. man muss keinen SQL Account + Passwort angeben, sondern die Windows-Anmeldung wird an den SQL Server durchgereicht; eine Domain ist dabei natürlich Voraussetzung.
              In den "Datenverknüpfungeigenschaften" von Access ist es mit "Integrierte Sicherheit von Windows NT verwenden" bezeichnet.

              > "(null)"-Problem bin ich jetzt nicht weiter
              Das meinte ich in Zusammenhang mit dem vorherigen Punkt.
              Wenn man sich per Windows-NT Account anmeldet (Vertraute Verbindung, ohne Angabe SQL Account + Passwort) und der NT Account ist nicht eingerichtet (was ich Deiner Aussage mal entnehme) dann läuft es wie beschrieben ab und es kommt die Fehlermeldung zustande.
              Olaf Helper

              <Blog> <Xing>
              * cogito ergo sum * errare humanum est * quote erat demonstrandum *
              Wenn ich denke, ist das ein Fehler und das beweise ich täglich

              Comment


              • #8
                >jeder Änderung der Sicherheitseinstellung notwendig den SQL-Dienst neu zu starten

                Falls damit Sicherheit => Authentifizierung (Gemischter Modus/Nur Windows NT) meinst: Ja, das ist leider nötig, da die Einstellung nur beim Start gezogen wird.
                Das änderet man ja auch eher selten, meist gibt man es einmalig bei der Installation an.
                Olaf Helper

                <Blog> <Xing>
                * cogito ergo sum * errare humanum est * quote erat demonstrandum *
                Wenn ich denke, ist das ein Fehler und das beweise ich täglich

                Comment


                • #9
                  Originally posted by O. Helper View Post
                  Das hast Du missverstanden, man richtet den Windows-NT Account auf dem SQL Server ein und kann sich dann ein "vertraute Verbindung" verwenden.
                  D.h. man muss keinen SQL Account + Passwort angeben, sondern die Windows-Anmeldung wird an den SQL Server durchgereicht; eine Domain ist dabei natürlich Voraussetzung.
                  In den "Datenverknüpfungeigenschaften" von Access ist es mit "Integrierte Sicherheit von Windows NT verwenden" bezeichnet.
                  Das hab ich tatsächlich noch nicht ganz verstanden. Bin leider nicht so firm mit dem SQL-Server, habe nur damit zu tun wenn er übers Jahr wirklich mal Probleme macht.
                  Bei dem Windows-NT-Account der auf dem SQL-Server einzurichten wäre geht es doch um diese Authentifizierung, die man bei der Installation wählen kann (Gemischter Modus/Nur Windows NT), oder nicht? Soll ich den Server noch einmal mit dem gemischten Modus installieren (oder kann ich das auch nachträglich machen? Hab hier gerade keine Stelle gefunden...) und versuchen die noch fehlenden User über SQL Account + Passwort auf den SQL-Server zu bringen?

                  Ich muss vllt noch dazusagen dass ich nur mit dem SQL-Server-Enterprise-Explorer arbeite. Mit einem anderen Werkzeug habe ich bisher nicht gearbeitet.

                  Comment


                  • #10
                    Also, mal ganz von vorne:

                    Im EM Rechte-Maus auf den Server-Eintrag => Eigenschaften => Kartenreiter "Sicherheit" => Bereich "Authentifizierung"
                    Hier kann man festlegen, wie sich die User Anmelden können.

                    "SQL Server und Windows": Wird auch als gemischter Modus bezeichnet. Bedeutet, das sich User bei "SQL-Authentifizierung" (= separater Benutzername + Passwort) oder sich per "Windows-Authentifizierung" (=die Windows-Anmeldung wird vom Client durchgereicht und als vertrauenswürde betrachtet => Kerberos) anmelden.
                    Das kann man nachträglich auch ändern, man muss nur den SQL Server Dienst einmal neu starten.
                    Siehe auch mein letztes Posting dazu.

                    Im EM => <Server> => Sicherheit.
                    Hier kannst Du die User anlegen, so dass sie zumindestens an den SQL Server anmelden können.
                    Bei der User-Anlage kannst Du angeben, ob es ein Windows-NT Account eines Users ist oder Du kannst eine SQL-Authentifizierung anlegen, dann muss am Client bei der Anmeldung der Benutzername + Passwort angegeben werden.

                    Auf dem Kartenreiter "Datenbankzugriff" kannst Du festlegen, auf welche Datenbank der Win/SQL Account zugreifen darf und das mit welchen Rechten.

                    In Access (mit geöffneter ADP) klick mal auf Datei => Verbindung...
                    In dem Dialog findest Du das ganze wieder, nur etwas anderes bezeichnet.

                    Wenn Du "Integrierte Sicherheit von Windows NT verwenden" auswählts, brauchst Du keinen Benutzer-Namen+Pwd angeben, Deine Win-NT Anmeldung wird durchgereicht und verwendet; vorausgesetzt er ist im MSSQL angelegt.

                    "Spezifischen Benutzernamen und Kennwort verwendet" bedeutet eben die SQL-Authentifizierung.
                    Olaf Helper

                    <Blog> <Xing>
                    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
                    Wenn ich denke, ist das ein Fehler und das beweise ich täglich

                    Comment


                    • #11
                      Vielen Dank für die ausführliche Beschreibung!
                      Ich werd dann spätestens am Montag ein Feedback posten!

                      Schönes Wochenende!
                      Gruß
                      Stefan

                      Comment


                      • #12
                        Guten Morgen Olaf!
                        Hat prima geklappt!
                        Werde mir jetzt einmal den 2005er anschauen.
                        Gruß
                        Stefan

                        Comment

                        Working...
                        X