λοιπόν, το case μας ειναι εντελώς κουλό. Φτιάχνουμε ενα admin tool σε react που θα χρησιμοποιηθεί αντί του drupal admin tool για manage συγκεκριμένων entities.
Το json api δεν το χρησιμοποιήσαμε γιατί ο τρόπος που είναι τα out of the box json structuresπου επιστρέφονται είναι χάλια και δεν βόλευαν το react κομματι, οπότε όλα ειναι custom rests.
Για το SSO τώρα αλλα και την επικοινωνία react/drupal, χρησιμοποιήσαμε το openid_connect module. Το flow είναι:
Το react admin tool κάνει login τον OICD identity provider (ενας cas στην περιπτωση μας). Παιρνει ενα token.
Κάνει rrequest στο drupal με το token στον header. Στο drupal χρησιμοποιώντας το token το κάνουμε verify , χρηιμοποιώντας το authorization endpoint του wellknown, και αν ολα ΟΚ ο χρήστης φτιάχνεται αυτόματα και στο drupal και το drupal επιστρέφει στην react οτι πρέπει.
Σε κάθε call απο react σε drupal, o header εχει πάντα ως bearer token το token του OICD έτσι ώστε τα rest call να ειναι authorized.
Αυτά τα λίγα απο εμένα... Δεν ξέρω αν βγάζουν νόημα όπως τα γράφω, σε εμένα πριν λίγο καιρο δεν έβγαζαν 😄
PS: πολυ κουραστικό το switch απο Αγγλικα σε ελληνικά, αγαπώ greeklish:)