2012-11-26 4 views
1

그래서 본질적으로 우리 회사 웹 사이트의 일부는 Drupal 7 plus commerce 플러그인을 실행합니다. Drupal을 사용하지 않는 웹 사이트의 다른 부분에서이 시스템에 이미 존재하는 사용자를 안전하게 이용하는 방법이 있는지 궁금합니다. 이것은 프로그램 간 통신 부족으로 인해 단일 사용자에 대해 두 개의 개별 사용자 계정을 갖는 것을 피하기위한 것입니다. Drupal 데이터베이스의 정보 또는이 문제를 해결하기위한 표준 방법을 기반으로 애플리케이션의 사용자를 자동으로 인증하는 안전한 방법이 있습니까? 드루팔 (Drupal backing) 데이터베이스는 크고, 이상하고, 복잡한 거물이며, 나는 그것을 화나게하지 않을 것입니다.다른 애플리케이션으로 Drupal 7 사용자를 인증 하시겠습니까?

내가 할 일은 내 인증 양식을 통해 로그인 할 때 사용자의 자격 증명이 유효한지 여부를 결정하는 것입니다. Drupal 로그인 시스템을 사용하여이를 수행 할 수 있다면 (아마도 이후에 전달할 URL을 전달함으로써) 우수 할 것입니다. 아니면 이미 이것을 관리하는 스크립트가 있습니까?

또한 사용자가 이미 로그인했는지 여부를 확인할 수 있고 Drupal 소프트웨어가 설정 한 쿠키를 기반으로 여전히 기억하고 있는지 알고 싶습니다.

참고 자료, Drupal 코어에서 사용할 수있는 관련 스크립트, 기타는 많이 감사하겠습니다. 나는 Drupal에 대해 아무것도 모르는 사람이지만, 수년간 전문적으로 웹 개발을 해오면서 좋은 PHP/지식을 가지고 있습니다.

답변

4

넵 쉽습니다. 두 가지 방법 중 하나를 수행 할 수 있습니다.

옵션 1, 서비스 모듈을 사용하고 REST를 사용하여 사용자를 로그인/인증 할 수 있습니다.

옵션 2, 사용자 정의 코드를 작성할 수 있습니다. Drupal Boostrap 또는 필요한 개별 파일을 사용자 모듈에 포함 시키십시오. 그런 다음 user_authenticate() 기능을 사용하여 사용자 이름과 암호를 확인하십시오. 우리는 우리가 개발 및 인기가 하루 하루를 달성하고 얘기를 가지고 드루팔 기술에 대해 이야기 할 때

0

세부 정보를 볼 수 있습니다. 그러나 여기 drupal 7이 사용자에게 번영을위한 완벽한 플랫폼을 제공하는지에 대한 질문이옵니다. 게시글에 오면 Drupal의 애플리케이션 데이터베이스에서 사용자를 인증하는 안전한 방법이 있다고 생각합니다. PHP는이 파일이 드루팔 설치 내부에 있어야한다 드루팔 부트 스트랩
을 사용하여

+0

이 질문은 질문에, 아마도 당신이 잘못 읽을 할 수 없다? – thatidiotguy

1


그것은이다 쉽게 지옥

//set the working directory to your Drupal root 
define("DRUPAL_ROOT",  "/var/www/drupal/"); 

//require the bootstrap include 
require_once 'includes/bootstrap.inc'; 

//Load Drupal 
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL); 
//(loads everything, but doesn't render anything) 

$name = 'admin'; 
$password = 'admin'; 

//use drupal user_authenticate function 
if(!user_authenticate($name, $password)){ 
    echo 'invalid'; 
}else{ 
    echo 'valid'; 
} 
+0

거기에 drupal 모듈 방법이 있지만 나를 위해 작동하지 않습니다 https://drupal.org/project/udc – Thilina