Announcement

Collapse
No announcement yet.

SSPI aktivieren oder Single sign on

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

  • SSPI aktivieren oder Single sign on

    Hallo,

    ich werde mich demnächst mehr mit Postgresql beschäftigen und habe dazu einen Postgresql Server installiert. Dieser läuft unter Windows in einer Domäne.

    Kerberos kommt nicht zum Einsatz. Ich habe mich dabei an diese Anleitung gehalten Link Jedoch komme ich bei der Aktivierung von SSPI nicht weiter. meine pg_hba.conf sieht wie folgt aus.

    Code:
    # TYPE  DATABASE        USER            ADDRESS                 METHOD
    
    # IPv4 local connections:
    #host    all             all             127.0.0.1/32            md5
    host   	all         	all                               	sspi
    # IPv6 local connections:
    host    all             all             ::1/128                 md5
    # Allow replication connections from localhost, by a user with the
    # replication privilege.
    #host    replication     postgres        127.0.0.1/32            md5
    #host    replication     postgres        ::1/128                 md5
    
    # authentication method "sspi"
    Jedoch startet der Server nun nicht mehr. Was mach ich falsch?

  • #2
    Ich bin kein pg Profi aber in der hba conf steht keine Adresse/Segment in der SSPI Zeile.
    Ob der Start des Servers daran scheitert, kann ich nicht sagen.
    Der angegebene Link erklärt aber ja einiges dazu, die pg_hba.conf ist ja nur ein kleiner Teil davon.
    Gruß, defo

    Comment


    • #3
      danke für den Tipp mir ist das auch erst jetzt aufgefallen deswegen habe ich es darauf angepasst:
      # TYPE DATABASE USER ADDRESS METHOD
      host all all all sspi

      Nun scheint es auch zu funktionieren.
      Jetzt bekomme ich aber die Fehlermeldung: Error Connection to the Server: SSPI-Authentifizierung für Benutzer ......... fehlgeschlagen. Ich denke ich lege den User in PG falsch an. Aber wie legt man denn einen Domain-User in PG an?

      Comment


      • #4
        Originally posted by deathdragon View Post
        SSPI-Authentifizierung für Benutzer ......... fehlgeschlagen. Ich denke ich lege den User in PG falsch an. Aber wie legt man denn einen Domain-User in PG an?
        Mal wieder Zeit für Halbwissen.
        1) SSPI in Windows basiert offenbar auf Windows Domänen Berechtigungskonzept
        2) Übertragung von 1) auf PostgreSQL bedeutet offenbar, dort (minimal, als Voraussetzung bzw. Ausgangspunkt>Installation) mit einem Domänen User zu arbeiten.
        3) SSPI betrifft in der Wirkung in erster Linie die User, nicht den PG Server oder dessen Adminuser (postgres).

        Hast Du Dir durchgelesen, was in Deinem geposteten Link steht?

        zu 1)
        Alles was damit zu tun hat gilt nicht für einen einfachen Windows PC, wie man ihn z.B. zuhause hat. Es braucht eine Windows Domäne (logisch) und einen PC, dessen Windows darauf /darin angemeldet ist. Der PC ist damit Teil der Domäne. Ebenso sollte offenbar der User Teil der Domäne sein.
        Das wiederum bedeutet, zur Einrichtung des PC und Anlegen des Nutzers, ist ein Zugriff mit Domänen Admin Rechten notwendig.
        Wenn Dir nicht klar ist, was hinter dem Windowsdomänenkonzept steckt, schau Dir das zuerst an.
        zu 2)
        Hast Du also einen Domänen PC und Domänen User postgres, kannst Du darunter Pg installieren (oder die Abkürzung nehmen, die im Link genannt ist)
        zu 3)
        Ein späterer Domänen Anwender (existierende User der Domäne) muss Zugriff auf das System haben (hba conf), in der Datenbank angelegt sein/werden und ggF./notfalls per User Name Mapping zurechtgerückt werden. Also konkret zu dieser Frage. Den Domänen User muss es wohl 2x geben, einmal als .. tada .. domänen user und einmal als gleichlautenden User bzw. Rolle in Postgres oder ein Mapping zwischen 2 Usern.

        Laut Deinem Link gibt es noch ein paar weitere Ecken, die umschifft werden müssen *, aber so sieht es grob aus. Hatte selber noch nicht das Vergnügen. Vielleicht schaut auch mal ein pg Spezialist hier rein, die gibt's hier ja auch.

        * Die hba conf ist übrigens ein Sicherheitsmechnismus. Wenn Du überall "all" einträgst, kannst Du das Problem auch so lösen, dass man sich gar nicht anmelden muss, jeder hat Zugriff, Domäne hin oder her und Du hast Dir die ganze Konfiguration gespart!
        Gruß, defo

        Comment


        • #5
          moin moin, natürlich habe ich das pg System laufen unter einem Domain-User (dieser heißt aber nicht postgre ich habe es so verstanden das der Account nur eben volle admin-rechte haben muss aber nicht der Name vorgeschrieben ist). Ein weiterer Domän-User ist auch vorhanden. Jedoch weiß ich noch nicht so recht wie ich einen Domain-User in Pg anlege. Aus dem MS-SQL Server ist mir bekannt das es so aussehen muss: Domain\Accountname. Alle Systeme die miteinander kommunizieren sollen bzw. auf jenem wo der pg Server läuft sind Mitglieder in der Domäne und Windows-PC´s.
          Das Mapping sollte ja nicht notwendig sein wenn der Domain-User und der User der im Pg-Server hinterlegt ist gleich sind.(zumindestens habe ich das so verstanden)

          PS: die Rechte werden natürlich minimiert so bald das System das macht was es soll

          Comment


          • #6
            Originally posted by deathdragon View Post
            Jedoch weiß ich noch nicht so recht wie ich einen Domain-User in Pg anlege. Aus dem MS-SQL Server ist mir bekannt das es so aussehen muss: Domain\Accountname.
            Das Mapping sollte ja nicht notwendig sein wenn der Domain-User und der User der im Pg-Server hinterlegt ist gleich sind.

            PS: die Rechte werden natürlich minimiert so bald das System das macht was es soll
            Da explizit von einem Mapping geschrieben wird, wenn (vorhandene) Namen nicht passen, gehe ich davon aus, dass einfach die Namen gleich sein müssen und fertig. Könnte man ja relativ einfach ausprobieren.
            Domain\Accountname ist die Windows Schreibweise um z.B. lokale und Domänen Accounts zu unterscheiden. Das dürfte PG egal sein, es kennt keine Domänen.
            "Rechte werden minimiert.." vielleicht solltest Du bis dahin einen echten IP Bereich eintragen, "0.0.0.0/0". Ob PG an der Stelle das "all" mag, weiß ich nicht.
            Gruß, defo

            Comment


            • #7
              Haha geschafft! SSPI unter PG läuft erstmal! PG kennt nicht den Aufbau Domain\Accountname sondern muss einfach nur den Accountname kennen. Wenn also Hubert ein Accountname ist und in Windows als Domain\Hubert bekannt ist, gilt es Huber einfach als Login-Rolle anzulegen. Was ich noch nicht hinbekommen habe ist wenn Hubert in der Gruppe der zb. Hubertianer ist. Gruppenrollen gibt es in Pg auch aber noch habe ich es nicht hinbekommen diese mit Domaingruppen aus dem AD zu nutzen. Für dich defo noch zur Info es ist egal unter welchen AD-Account der Dienst des PG-Servers läuft. Hauptsache AD und passende Rechte.

              Comment


              • #8
                Originally posted by deathdragon View Post
                Was ich noch nicht hinbekommen habe ist wenn Hubert in der Gruppe der zb. Hubertianer ist. Gruppenrollen gibt es in Pg auch aber noch habe ich es nicht hinbekommen diese mit Domaingruppen aus dem AD zu nutzen.
                Prima!
                Noch zur Info: Unter PG sind User und Gruppen / Rollen das gleiche, alles sind Rollen.
                Ich würde also einfach mit den PG Rollen genauso verfahren wie mit den Usern. Notfalls muss man vielleicht mal in die Doku schauen oder googlen. Natürlich nur im Notfall...
                Gruß, defo

                Comment


                • #9
                  Originally posted by defo View Post
                  Ich würde also einfach mit den PG Rollen genauso verfahren wie mit den Usern.
                  Ich glaube, das ist Blödsinn. Die Rollenmitgliedschaft in der Win Domäne bringt per Definition oder Existenz in der DB ja nichts.
                  Du müsstest lediglich die Gruppenmitgliedschaften aus dem AD abfragen und sie dann für eigene Zwecke weiterverwenden.
                  Gruß, defo

                  Comment

                  Working...
                  X