2014-03-19 1 views
0

은 WordPress에있는 Node.js 웹 앱 (http://my.example.com에 바인딩 됨)과 공식 앱 웹 사이트 (http://example.com)를 가지고 있습니다.Node.js 및 WordPress 통합에 관한 조언이 필요합니다.

WordPress 사이트는 등록, 앱 구독 구매, 제휴사 추적 등 모든 사용자 관리 기능을 처리해야합니다.이 기사를 직접 개발하는 것보다 WordPress를 사용하는 것이 더 빠르기 때문에 제가 사용합니다 . 그래서 ...

내가 지금 직면하고있는 문제는 응용 프로그램에 로그인 할 때 WordPress에 저장된 사용자의 자격 증명에 액세스하는 것입니다. 내 생각 엔 앱에서 로그인 게시물 요청을 받으면 RPC api 또는 MySQL을 사용하는 WordPress에서 사용자의 데이터를 가져와야합니다. 사용자가 존재하고 암호가 맞으면 사용자가 응용 프로그램에 액세스하고 새 사용자 인 경우 응용 프로그램 데이터베이스 (MongoDB)에 새 레코드가 만들어집니다.

이 문제에 대한 더 나은 해결책이 있습니까? 이 솔루션의 보안에 대해 우려하고 있습니다. 이런 식으로 문제를 풀어도 안전합니까? 가능한 함정은 무엇입니까? 어떤 답장을

감사)

답변

1

는 이럴

내가 그것을 사용하는 워드 프레스에서 사용자의 데이터를 페치는 RPC API를 나 MySQL이 (더 나은 아직 무엇인지 모르는) 쿼리합니다.

MySQL. AFAIK, WP RPC는 사용자가 존재하고 암호는 사용자가 응용 프로그램에 액세스 올바른지 경우 addUser

(아래 참조)를 지원하지 않습니다이 새 사용자, 새 레코드가 만들어집니다 인 경우 응용 프로그램의 데이터베이스 (MongoDB).

이제 사용자 데이터베이스가 2 개 있습니다. 새 사용자를 WP 데이터베이스에 추가하면 앱에서 새로 오는 사용자가 이미 블로그에 계정을 가지고 있어야하므로 더 좋을 것입니다.

이 문제에 대한 더 나은 해결책이 있습니까?

독자적인 사용자 데이터베이스가되도록 사용자 데이터베이스를 분할합니다. StackOverflow 및 StackExchange 제품군과 동일합니다.

이 솔루션의 보안에 대해 우려하고 있습니다. 이런 식으로 문제를 풀어도 안전합니까? 가능한 함정은 무엇입니까?

예. 노드와 MySQL이 동일한 상자 또는 로컬 네트워크에 있지 않은 경우 보안 연결을 사용하십시오. 적절한 액세스 권한을 가진 각 앱마다 다른 MySQL 사용자를 사용하십시오.

+0

응답 해 주셔서 감사합니다. @soemarko. > 이제 사용자 데이터베이스가 2 개 있습니다. > 새 사용자를 WP 데이터베이스 ( )에 추가하면 앱에서 오는 새 사용자가 이미 블로그에 계정을 가지고 있어야하므로 더 좋을 것입니다. 사용자는 앱에서 등록 할 수 없습니다. 그들은 워드 프레스 사이트에서만 올 것입니다. 따라서 앱의 데이터베이스는 사용자의 설정 만 저장합니다.그것은 무엇이든 바뀌 었습니까? – cyxou

+1

더 좋습니다. 그러나 사소한 UX는 불만을 품는다. 가입 한 후에 바로 로그인해야합니다. 쿠키를 통해 세션을 공유하기 만해도이를 해결할 수 있습니다. 행운을 빕니다. – soemarko

+0

고맙습니다. @soemarko! ,) – cyxou

관련 문제