Ankündigung

Einklappen
Keine Ankündigung bisher.

Google Calendar - update für "neue" GoogleAPI

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
    z1marco
    Forums-Einsteiger

  • z1marco
    antwortet
    Hallo,

    gibt es noch weitere Ideen? Ich schaffe es auch nicht mich bei Google zu authentifizieren da nur noch https Adressen bei Google hinterlegt werden können.

    Leider sind in nginx keine Zertifikate abgelegt und die Konfiguration scheint wohl nicht so einfach zu sen.

    vielen Dank

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    Wenn für den Webserver (Apache oder nginx) Zertifikate vorhanden sind, dann müsstest Du smartVISU per https aufrufen können. Zwar bekommst Du dann keine Daten vom Backend über den Websocket, aber für die einmalige Autorisierung der Schlüssel bei Google könnte es reichen.
    Willst Du das nochmal probieren (mit der Änderung in der base.js)?

    Gruß
    Wolfram

    Einen Kommentar schreiben:


  • ilex
    antwortet
    Das klappt leider nicht. Ich kann über den Dialog keine Ausnahme einfügen. Es wird nur dieser Link angeboten.

    Viele Grüße

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    Kannst Du Firefox nicht dazu überreden, die Verbindung trotzdem zu öffnen? Am Zertifikat kann es IMHO nicht liegen, da nip.io sicher ein dem Browser bekanntes Zertifikat besitzt. Das Problem ist wahrscheinlich eher, dass Firefox den gemischten Betrieb ( unverschlüsselt zu smartVISU / verschlüsselt zu nip.io) nicht ohne weiteres akzeptiert.

    Gruß
    Wolfram
    Zuletzt geändert von wvhn; 03.06.2021, 13:32.

    Einen Kommentar schreiben:


  • ilex
    antwortet
    Danke für die Hinweise. Stefan hat recht. Ohne Zertifikat verweigert der Browser nach der Änderung in base.js den Zugriff:
    Kein Verbindungsversuch unternommen: Mögliches Sicherheitsproblem
    Firefox hat ein mögliches Sicherheitsrisiko erkannt und daher 192.168.xx.yy.nip.io nicht aufgerufen, denn die Website benötigt eine verschlüsselte Verbindung.

    Der ReverseProxy-Workaround ist für mich schon sehr aufwendig. Vielleicht gibt es ja noch eine einfachere Lösung des Problems...

    Viele Grüße

    Einen Kommentar schreiben:


  • stoepf
    antwortet
    Ich denke nur auf https umstellen wird nichts bringen, weil es dafür kein gültiges Zertifikat gibt.

    Ich hatte bereits einen ReverseProxy konfiguriert. Hab dann die Seite einfach darüber (https://meinedynamischeip.de/smartVISU) aufgerufen.
    Da war dann auch gleich die richtige Adresse eingetragen und ich konnte die Authentifizierung durchführen.
    Zuvor hatte ich die gleiche Adresse in der Google Developer Console als URI eingetragen.

    Hoffentlich hilft dir das.

    Viele Grüße
    Stefan

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    In der ./lib/base/base.js wird in Zeile 1848 der oben erwähnte JavaScript Origin gesetzt:
    Code:
    googleOrigin = location.origin.replace(location.hostname, location.hostname + '.nip.io');
    Nach Deiner Änderung in der Google Developers Console musst Du hier sicherlich auch https verwenden. Als quick and dirty Versuch ohne Gewähr kannst Du nach der Zeile eine neue Zeile einfügen und dort folgendes eingeben:
    Code:
    googleOrigin = googleOrigin.replace('http:', 'https:');
    Falls Du eine Sicherheitskopie der base.js anlegst, vermeide die Endung .js, da dies zu Konflikten führen kann.

    Gruß
    Wolfram

    Einen Kommentar schreiben:


  • ilex
    antwortet
    Die Google API schreibt nun vor: URIs must use the HTTPS scheme, not plain HTTP.

    smartVISU schlägt bei mir aber http://192.168.xx.yy.nip.io vor. Ich habe Goggle konform in der Google Developer Console die URI der Autorisierten JavaScript-Quelle nach https://192.168.xx.yy.nip.io geändert.
    Ich bekomme bei der Autorisierung dann folgenden Fehler:

    Problem: Fehler bei der Autorisierung

    Fehler 400: redirect_uri_mismatch
    The JavaScript origin in the request, http://192.168.xx.yy.nip.io, does not match the ones authorized for the OAuth client. Visit https://console.developers.google.co...s.googleuserco ntent.com?project=123 (anonymisiert) to update the authorized JavaScript origins.

    stoepfDer Trick mit der dynamischen Adresse würde mich auch interessieren.

    Viele Grüße

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    stoepf Steht auch dabei, was man tun muss, um die URI konform zu machen?
    Bei mir ist weitgehend Google-freie Zone. Deshalb kann ich das nicht testen.

    Gruß
    Wolfram

    Einen Kommentar schreiben:


  • stoepf
    antwortet
    Habe gerade eine Mail von Google bekommen: Mein Projekt soll gelöscht werden, weil die URI nicht konform ist.
    Konnte es über eine dynamische Adresse lösen.
    Zuletzt geändert von stoepf; 02.06.2021, 22:25.

    Einen Kommentar schreiben:


  • ilex
    antwortet
    Yepp - das waren die richtigen Hinweise. Mit dem hosts-Eintrag auf meinem Windows-Client hat die Autorisierung sofort funktioniert.
    Danke für den schnellen Support.

    Einen Kommentar schreiben:


  • Lonie
    antwortet
    smai richtig erinnert. Der Rechner der auf Smartvisu zugreift muss den Namen x.x.x.x.nip.io zu x.x.x.x auflösen wobei x.x.x.x die IP des SmartVisu Servers ist. Der DNS der Fritzbox macht dies nicht darum muss man am lokalen Rechner (nicht auf dem Smartvisu Server) entweder einen Host-Eintrag setzen oder kurzfristig einen anderen DNS Server nutzen.

    Im übrigen finde ich diese DNS Verbiegerei welches die Fritzbox da macht nicht sonderlich löblich

    Einen Kommentar schreiben:


  • smai
    antwortet
    Wenn ich mich richtig erinnere, muss 192.168.66.26.nip.io nicht vom Server her erreichbar sein sondern vom Client mit dem Browser.

    Falls dieser unter Windows läuft, kannst du den nip.io Eintrag auch in der Hosts-Datei unter   %windir%\system32\drivers\etc  machen. Dieser wird nur einmalig während der Autorisierung benötigt.

    Einen Kommentar schreiben:


  • ilex
    antwortet
    Ich möchte das Thema nochmal aufgreifen. Ich kann den Google v3-Kalender nicht integrieren. Ich bekomme, wie Mike01 vorher beschrieben, ebenfalls die Rückmeldung bei der Autorisierung mit generierter Client-Id und Clientschlüssel, dass die Seite nicht gefunden wird. Ein "wget 192.168.66.26.nip.io" auf meinem smartVISU-Server führt zu der Meldung: "Resolving 192.168.66.26.nip.io (192.168.66.26.nip.io)... failed: No address associated with hostname."
    192.168.66.26 ist die IP meines smartVISU-Servers. Ich habe diverse Hinweise ausprobiert (nameserver 8.8.8.8 auf dem Server ergänzt, IPv6 auf meiner Fritzbox deaktiviert, nip.io in der Whitelist der Fritzbox eingetragen), aber bisher keinen Erfolg gehabt.
    Nach einem Autorisierungsversuch finde ich z.B. folgende Fehlermeldungen in meinem nginx-WebServer-Log:
    2019/01/25 15:37:47 [error] 573#573: *33 FastCGI sent in stderr: "PHP message: PHP Warning: file_get_contents(https://accounts.google.com/o/oauth2/token): failed to open stream: HTTP request failed! HTTP/1.0 400 Bad Request in /var/www/html/smartvisu/lib/calendar/service/googleV3.php on line 64
    PHP message: PHP Warning: Creating default object from empty value in /var/www/html/smartvisu/lib/calendar/service/googleV3.php on line 69
    PHP message: PHP Warning: Invalid argument supplied for foreach() in /var/www/html/smartvisu/lib/calendar/service/googleV3.php on line 149" while reading response header from upstream, client: 192.168.66.25, server: _, request: "GET /smartvisu/lib/calendar/service/googleV3.php?count=5&calendar=Familienkalender HTTP/1.1", upstream: "fastcgi://unix:/run/php/php7.0-fpm.sock:", host: "192.168.66.26", referrer: "http://192.168.66.26/smartvisu/index.php"
    Meine Umgebung: smartVISU v2.9, Debian Stretch, Fritzbox OS 7.01

    Ich hoffe, dass mir hier im Forum jemand mit weiteren Hinweisen weiterhelfen kann.

    Einen Kommentar schreiben:


  • Mike01
    antwortet
    Lonie Danke für den Hinweis, es lag tatsächlich am Nameserver.
    Darauf muss man erstmal kommen. Hab die ganzen 17 Seiten durchgelesen, aber dass es am DNS Eintrag scheitern könnte das hab ich nicht gefunden.

    Kalender funktioniert wieder.

    Einen Kommentar schreiben:

Lädt...
X