API: Authentifizierung seit Neugestaltung

  • Hallo, zusammen!

    Ich bin bezüglich der Authentifizierung auf der API etwas verwirrt.

    Es gibt wohl mittlerweile drei verschiedene Authentifizierungsdienste bei Netcup. Den hinter CCP, den hinter SCP und nun auch Keycloak für die API. Leider aber wurde alles verwirrender seit der Einführung von 2FA. Damals wurde das SCP nicht mehr direkt nutzbar und man musste über das CCP sich "weiterleiten" lassen. Funktioniert (meistens - s.u.).

    Dann wurde Keycloak eingeführt, welches ich auch einrichtete; natürlich mit 'nem anderen 2FA. Ich war auch in der Lage eigene Skripte mit der API zu nutzen! D.h. konzeptionell passte es und das Skript funktionierte. Leider wurde mir damals mit der Aktivierung von Keycloaks 2FA der Zugang zum SCP kaputt gemacht [0]. Nach einer gefühlten Ewigkeit (immerhin ist es kein gutes Gefühl, wenn man mehrere Tage nicht mehr auf seine Sachen zugreifen kann) wurde es kommentarlos wieder repariert und ich konnte das SCP über CCP wieder nutzen. Experimente mit der API ließ ich dann erst einmal...

    Nun gab es ja das Redesign des SCP und ich wollte parallel mal wieder mein Skript weiterbauen. Aber das Skript, welches früher funktionierte, scheitert nun an der Authentifizierung. Ich kann mich beim CCP mit TOTP anmelden, welches mich auch ins SCP weiterleitet. Direktes Login ins SCP funktioniert nicht (wie seit der Aktivierung vom TOTP schon früher). Aber nun klappt der Login für die API nicht mehr. Das Skript ist seit es früher funktionierte nicht geändert worden. Und es wird auch der korrekte Flow genutzt - wenn ich die Authentifizierung 600s "liegen lassen", fragt die Loginmaske nach dem nun ungültigen Device Code - alles gut. Aber mein Nutzername und Kennwort werden nicht akzeptiert - es wird ein rotes "Invalid username or password." angezeigt (ja, die sind richtig ;) ). Er fragt aber auch nicht nicht irgendeinem TOTP. Klar, ohne sollte die Authentifizierung auch nicht funktionieren.

    Im Browser übrigens werden ausschließlich 200er HTTP-Codes geschickt - auch auf den fehlgeschlagenen POST!

    Gibt es hier noch jemanden, der im CCP TOTP aktiviert hat, selbiges zum Login ins SCP nutzt/nutzen muss, aber sich dennoch gegenüber der API authentifizieren kann? Oder wurde im Rahmen der Umgestaltung des SCP und seiner Login-Masken etwas anderes geändert? Gibt's Ideen wie ich wieder an die API komme...?

    Danke!


    [0] SCP-Zugriff schlägt mit 403 fehl

    [1]

    image.png

  • Ich mach wohl 2FA fürs CCP aber kein SCP-Login-via-CCP.
    Was die Authentifzierung angeht - schau mal nach meinen Gehversuchen…

    darkstar
    23. Februar 2026 um 16:59
  • Ich hab keine 2FA und an das SCP komme ich nur über das CCP, aber was ist denn eine API?

    Eine Schnittstelle, womit Du das Ganze ganz ohne SCP steuern kannst.

    Ich lass mit dem verlinkten Skript z.B. vom Server aus das Routing für die Virtual IP anpassen (also auf die richtige IP).

    Das ist eine Teil eines hübschen Active/Passive-Setups, d.h. eine größere Wartung wirkt sich nur durch das Schwenken der Ressourcen sehr kurz aus. Auch bei einem Totalausfall eines Rootservers / Hostsystems habe ich per drbd sämtliche Daten auf dem 2ten Rootserver direkt online verfügbar und kann diesen ggf. aktiv setzen. Die ganze Cluster-Kommunikation läuft über VLAN, über Public-IP gibt es zumindest für den Cluster einen 2ten IP-Ring.

    Ich kann übrigens auch einen anderen (oder auch den aktuellen) Server fencen, d.h. per REST-API ausschalten…
    Bevor das aber wirklich automatisch läuft und damit Split-Brain-Geschichten verhindert muss erstmal SEHR sicher sein, dass es zu keinen Störungen kommt, die auf Rootserver-Ebene wie eine Nichterreichbarkeit - gleichzeitig über public und vlan-Ring - aussehen. Auf alle Fälle sollten beide Rootserver nicht auf demselben System liegen.

  • darkstar Vielen Dank für den Verweis! Auch ich habe nichts anderes gemacht und es funktionierte ja in der Vergangenheit auch. Mir scheint, dass netcup hier erneut die Authentifizierung kaputt gemacht hat. Dieses "via CCP einloggen" war schon immer komisch, aber als braver Nutzer macht man ja das, was Sicherheit verspricht (ich glaube, im SCP konnte man damals kein 2FA aktivieren - wenn man das wollte, musste man eben den Login über das CCP aktivieren). Mit der Einführung des neuen SCP und dem Keycloak für die API im Hintergrund ist das Chaos nun perfekt.

    Olivetti Sehr schön - danke! Wenn das Programm bei Euch funktioniert, dann weiß ich, dass ich eigentlich nichts Großes falsch mache. Zum einen scheitere ich auch mit dem ncctl am gleichen Authentifizierungsschritt, und zum anderen war das auch genau das, was mein Skript machte...

    Naja, vielleicht meldet sich ja noch jemand hier, der ein ähnliches Setup hat. Es hilft leider auch nicht, dass Support-Ticket-Reaktionen (nicht einmal Lösungen) mittlerweile eher in Wochen als in Tagen oder gar Stunden gemessen werden :(

  • Mal als möglicher Workaround:


    Du kannst ja den Token nach einmaliger Authentifizierung immer wieder verwenden (IMHO 30 Tage gültig wenn kein weiterer Login). Dafür genügt eigentlich das „—whoami“, das auf Basis der Authentifizierung den Kundennamen und Kundennummer ausgibt.

    Bei mir wird ja bei vorhandenem Token nach Authentifizierung die Authebtifizierung dann so nicht mehr gebraucht…

    Kannst Du mal das Login-via-CCP temporär abschalten (der direkte Login unter servercontrolpanel.de sollte dann wieder funktionieren), dann die Authentifizierung an der REST-API durchführen samt Token speichern und dann Login-via-CCP wieder anschalten?

  • Grüß' Dich, darkstar!

    Vielen Dank für Deine weitere Beteiligung :)

    Die Authentifizierung (/realms/scp) leitet mich stets auf die neue Anmeldemaske, wo ich noch vor der Abfrage eines 2FA-Codes abgelehnt werde (und ich habe mein aktuelles, sowie ein älteres Kennwort probiert). Ich habe auch im SCP mal den Secure Access Mode und auch Easy Password Mode deaktiviert. Einzeln und zusammen. Und ich habe sogar als Browser mal Chromium - ohne Erweiterungen - ausprobiert. Das Ergebnis im SCP ist stets gleich. Somit komme ich auch leider nicht an irgendein API-Token. Der Browser schickt stattdessen sowohl eine JSESSIONID als auch ein cookiesession1.

    Und nur, damit ich nichts falsch verstand: Du meintest schon diese Einstellungen (hier beide wieder aktiviert)?image.png

  • Vielleicht noch ein paar mögliche Stolperstellen:

    - Du machst das mit den Skripten selbst schon vom Server aus?

    - Was steht bei Dir im SCP unter API/REST-API Einstellungen (IP-Filter)? Deine primäre Server-IP?

    - die User-ID, die Du später zur Zusammenarbeit mit der REST-API brauchst, ist nicht der User-Code (das ist die SCP-Benutzername), die device-ID der v*-Name von Netcup

  • Nö, nö. Das läuft (bzw. lief...) alles von außerhalb. Somit auch momentan keine freigeschalteten Adressen für die API - ganz einfacher Standard. Der Code in meinem bisherigen Programm hat ja früher funktioniert, und ich habe das gleiche Problem mit ncctl, welches Olivettierwähnte. Es muss also schon eine Änderung auf Netcup-Seite gewesen sein. Sollte ich wirklich der einzige (Forumsleser) sein, welcher 2FA und Login via CCP aktivierte (und das jetzt nicht mehr ausschalten kann - egal was ich auswähle, ich kann weiterhin nur via Autologin im CCP ins SCP kommen), dann kann ich mir schon vorstellen, dass schlechte Tests vor dem Ausrollen der neuen Software meinen Fall nicht fanden.

  • Nur um sicherzugehen:
    Was meinst Du mit „früher“? Länger als 7,5 Wochen?

    Die REST-API ist als Beta erst im Oktober 2025 im Parallelbetrieb zur alten SOAP-API in Dienst gegangen und hat letztere erst am 01.05.2026 vollständig ersetzt, d.h. die SOAP-API wurde abgeschaltet.

  • Nur um sicherzugehen:
    Was meinst Du mit „früher“? Länger als 7,5 Wochen?

    Die REST-API ist als Beta erst im Oktober 2025 im Parallelbetrieb zur alten SOAP-API in Dienst gegangen und hat letztere erst am 01.05.2026 vollständig ersetzt, d.h. die SOAP-API wurde abgeschaltet.

    Ich hatte bei der Beta mitgemacht und in der Zeit auch meine Steuerung implementiert. Die SOAP-API habe ich nie genutzt... PTSD aus der Arbeit ;)

  • wenn der secure acces mode im SCP »OFF« ist, sollte man sich doch direkt am SCP anmelden können, ansonsten wäre das sicher ein fall für den support.

    Korrekt - aber das geht ja mal wieder nicht. Und der netcup Support ist ja eher für's Untertauchen als schnelles Helfen bekannt ;-). Aber morgen sind 10 Tage vorbei, da werde ich mal wieder nach dem Status meines Tickets fragen (war aber letztes mal, als netcup mich komplett aus dem SCP aussperrte, auch nicht schneller).

  • Aber das ist doch der neue Login-Screen vom SCP - und ja, der kommt auch bei der Erst-Authentifizierung an der REST-API. Und anschließend kommt was mit Rechte zuweisen.
    Von 2FA sehe ich da jedenfalls noch nichts…

  • Aber das ist doch der neue Login-Screen vom SCP - und ja, der kommt auch bei der Erst-Authentifizierung an der REST-API. Und anschließend kommt was mit Rechte zuweisen.
    Von 2FA sehe ich da jedenfalls noch nichts…

    Japp - völlig korrekt. Als die API in der Beta war, da wurde man noch direkt an eine standard Keycloak-Anmeldeseite weitergeleitet. Da funktionierte das auch. Erst seit der Umstellung hier auf's SCP ist Ende Gelände. Und Du hast völlig Recht mit dem fehlenden 2FA. Das ist auch der Punkt, wo ich nicht einmal mehr weiß, was man als Nutzer machen sollte.

    Zitat von Olivetti

    blöde frage: das passwort im SCP ist aber korrekt gesetzt?

    Hehe, ich kann gut nachvollziehen, dass die Frage gestellt wird. Aber ja, ich gebe jedenfalls das ein, welches ich davor erfolgreich eingegeben hatte - ich nutze nur generierte Kennwörter und muss es daher aus meinem Netcup-Passwordstore holen. Aber wer weiß, was da beim Zusammenspiel der mindestens drei Authentifizerungssysteme bei irgendwelchen Konvertierungen passiert sein könnte ;)

    Als ich kürzlich komplett aus dem SCP ausgesperrt wurde (s. Forumlink ganz am Anfang), kam auch nach zwei oder drei Wochen eine Nachricht "Ja, gab Probleme mit Keycloak, ist jetzt wieder okay." Ich kann mir vorstellen, dass in dem Zuge dafür der API-Zugang, den ich ja noch nicht regelmäßig nutze, kaputt gemacht wurde.

    PS: Leider lässt mich der Support nun schon seit 10 Tagen ohne Kommentar hängen. Ich kann nicht einmal eine Rückmeldung über die vorgesehenen Links schicken, weil bei netcup das Captcha schon länger falsch eingebunden wird. Hmpf. Dann werde ich jetzt mal wieder "hinterher schreiben".

    PPS: Aber ein ganz dickes Dankeschön an Olivetti und darkstar , dass ihr hier so lange mit dabei seid!