Autentificarea oAuth2 în WordPress folosind WP OAuth Server și plugin-urile WP API (WordPress, Pluginuri, Api Wp, Oauth)

Ghazanfar Mir a intrebat.
a intrebat.

Mă bâjbâi cu modul în care funcționează autentificarea în scenariul meu.

Am un site WordPress care oferă un set de API-uri personalizate securizate în spatele oAuth2 Authentication folosind Wp OAuth Server plugin.

Am început cu construirea unui simplu endpoint personalizat prin extinderea WP REST API (WP API) plugin. Mi-am configurat punctul final ca fiind POST /api/v1/projects, unde funcția mea de callback este și mai simplă,

function create_projects() {

      // my code to create new project
      return ['code'=>201, 'message'=>'project created'];
}

Până acum totul este bine. Acest API este disponibil și pot obține lista de proiecte folosind POSTMAN Chrome Extension.

Partea în care am probleme este de a implementa autentificarea. Astfel, numai utilizatorii autentificați pot utiliza această API. Cum pot configura autentificarea și care autentificare mi se va potrivi în acest scenariu în care site-ul meu wordpress găzduiește proiectele și numai utilizatorii autentificați vor putea crea proiecte noi pe site-ul meu folosind API-ul pe care l-am furnizat mai sus.

Poate cineva să mă îndrume în direcția corectă?

Actualizare#1

Am reușit să implementez Autentificarea oAuth2 și voi răspunde la întrebarea mea când voi avea timp. În cazul în care sunteți interesați să aflați cum se face, lăsați-mi un comentariu

2 răspunsuri
Justin P Greer

Va trebui să urmați detaliile de pe site-ul web al dezvoltatorilor aflat aici. (FYI, eu sunt unul dintre liderii proiectului). Practic, ceea ce se rezumă la, este că veți crea un client în WP OAuth Server și veți da detaliile utilizatorilor autentificați. Utilizatorii dvs. ar fi apoi configurat folosind tipul de grant de „parolă” (credențiale de utilizator). Acest lucru nu este ideal, dar vă va duce la un loc în care puteți extinde cadrul.

Dacă aveți chef să vă murdăriți mâinile, puteți adăuga un câmp meta personalizat la conturile dvs. de utilizator care va spune dacă li se permite sau nu accesul la date. Apoi, de fiecare dată când un utilizator se autentifică, îi puteți permite accesul la serverul WP OAuth sau îi puteți bloca accesul în funcție de faptul dacă contul său are sau nu valoarea meta corectă.

Comentarii

  • Mulțumesc @Justin – am reușit să realizez acest lucru prin adăugarea unei capacități suplimentare la utilizator, să spunem „consume_api” și apoi verific permisiunile folosind funcția current_user_can('consume_apis'). –  > Por Ghazanfar Mir.
ana

Eu folosesc acest plugin https://garazlab.com/product/wp-oauth-sso-multiple-wordpress-user-sync/ pentru oauth2 și SSO. îl puteți încerca și voi.