2017-03-08 11 views
0

우리 시스템에서는 amood와 moodle 플러그인 (버전 3.1)을 통합하고자합니다. 우리는 암호화 된 형식의 암호를 사용하는 무들의 일부 사용자를 보유하고 있으며 사용자 암호를 변경하지 않고 amember으로 가져 오기를 원합니다 api.moodle 버전 3.1 amember와 통합

아무도 우리가 이것을 어떻게 처리 할 수 ​​있는지 제안 할 수 있습니까?

다음 코드를 사용하여 amember.it에 사용자를 만들면 amember에 사용자를 만들지 만 로그인을 시도하면 거부됩니다.

$url = 'http://YOURDOMAIN.COM/amember/api/users'; 

$fields = array(
'_key' => 'SECRETKEY', 
'_format' => 'xml', 
'login' => 'USERNAME', 
'pass' => 'PASSWORD', 
'email' => 'EMAIL', 
'name_f' => 'FIRST NAME', 
'name_l' => 'LAST NAME', 
); 
//open connection 
$ch = curl_init(); 

//set the url, number of POST vars, POST data 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($fields)); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-type: application/x- www-form-urlencoded")); 

//execute post 
$result = curl_exec($ch); 

//close connection 
curl_close($ch); 

미리 감사드립니다.

답변

0

무들의 암호가 암호화되어 있으므로 암호를 해독 할 수 없습니다. 귀하의 코드를 읽으면서, amember api는 사용자 생성시 일반 비밀번호가 필요합니다.

내가 볼 수있는 유일한 해결책은 무들의 자신의 인증 플러그인을 갖는 결과를 초래할 것입니다. 기존의 무들의 사용자가 로그인을 시도하면이 플러그인이 호출됩니다. 그런 다음 user_login 메소드를 사용하여 무들 데이터베이스에 대한 비밀번호를 확인할 수 있습니다. 또한이 단계에서는 일반 텍스트 비밀번호가 있으므로 로그인이 성공하면 새로운 amember 사용자를 만들 수 있습니다.

0

사용자를 가져 오기 위해 API를 사용할 필요가 없습니다.

a 회원은 CSV 파일에서 사용자를 가져올 수있는 관리 도구가 있습니다. 이 도구를 사용하면 암호화 된/해시 된 암호로 사용자를 가져올 수 있습니다.

aMember의 CP -> 사용자 -> 사용자 가져 오기

당신은 CSV 파일로 무들 데이터베이스에서 사용자를 내보낼 수 있습니다.

이러한 가져 오기를 수행하기 전에 a 회원 내에서 moodle 통합 플러그인을 활성화해야합니다.