2013-05-23 1 views
0

나는이 질문이 처음에는 보안에 대한 목적을 이긴다는 것을 알고 있지만 클라이언트가 때때로있을 수있는 방법을 알고 있습니다.Modx, 원격 URL의 하이퍼 링크에 세부 정보를 입력하여 로그인 할 수 있습니까?

기본적으로 클라이언트에는 2 개의 사이트가 있으며, 하나는 modx로, 다른 하나는 ASP로 구성되어 있습니다. 둘 다 모든 방문자가 사용하는 단일 사용자 프로필로 로그인합니다.

나 '...이 가능 모르겠어요 -

그들은 사용자가 ASP 사이트에 로그인 한 후 modx 사이트를 방문하고 자동으로 로그인 링크를 클릭 할 수 있도록하려면 로그인 폼과 같은 변수를 여러 페이지에 전달하려고했지만 성공하지 못하면 매번 로그인 페이지로 돌아갑니다.

www.mywebsite.com/index.phpid=87&username=myusername&password=mypassword&returnUrl=%2F&service=login&Login=Login 

다른 누구도 이전에 비슷한 것을 시도한 적이 있습니까? 나는 PHP로 무언가를 할 수있게 해주는 코드를 가지고있다. 그러나 참조 사이트가 현재 내가 알고있는 asp로 만들어 졌기 때문에 약간 난처하게된다.

는 E2A :

은 내가 Modx 포럼에서 같은 질문을하고 대답의 방법으로이 문제를 받았다 :

내가 가장 좋은 방법은 오픈 ID와 같은 타사 로그인 서비스를 이용해야한다고 생각 . 그러나 이것은 asp에 기반한 사이트의 변경을 의미합니다. URL 매개 변수로이를 수행하려면 "로그인"스 니펫을 사용하지 마십시오. "로그인"은 사용자를 인증하기위한 입력이 필요합니다. 사용자 정의 스 니펫을 만들고 보안/로그인 프로세서 사용법을 익히십시오 (사용자가 Revolution 2.2x를 실행 중이라고 가정합니다). 코드 조각은 다음과 같이 할 수있다 :

<?php 
$loginContext = $modx->context->get('key'); 
$c = array(
    'login_context' => $loginContext, 
    'username' => $_GET['username'], 
    'password' => $_GET['password'], 
    'returnUrl' => null, 
    'rememberme' => false 
); 
$response = $modx->runProcessor('security/login', $c); 
return true; 
?> 

코드 조각이 작동하는 것 같다 1의 값을 반환하지만 나는 이것이 무엇을 의미하는지 모르는 탓에 나를 로그인 아니에요

get usage of the security/login processor 

어디에서 알 수 있습니까?

+1

GET/POST에서 이것을 암호화되지 않은 텍스트로 전달하는 것은 매우 위험합니다. 대신에 Remember-me 옵션을 사용하도록 Modx 로그인을 확장하여 사용할 수 있습니다. 그렇게하면 항상 로그인 할 필요가 없습니다. 그러나 말하고있는 것처럼 다중 사이트 로그인은 어렵습니다. 그것은 시간의 loooot 걸립니다. – OptimusCrime

+0

두 사이트가 같은 서버에 있습니까? – okyanet

+0

나는 위험하다는 것을 알고 있지만 고객은 모든 사용자가 공유 할 수있는 단일 로그인을 사용하고 사이트에서 중요한 정보 나 개인 정보는 보유하지 않습니다 (헤지 펀드 매니저 세금 감면 대상자를 나열하는 방법!). 너무 행복해. 나를 기억하는 옵션을 확장하는 데 어려움이있다. 최소한 적어도 한번은 로그인해야한다. @okaynet, 사이트는 완전히 다른 서버에 있습니다. – Funk247

답변

0

사용자가 modx에 로그인 한 곳에서 전에 수행했습니다 & 인증 이벤트 발생 후 modx에 약간의 SSO 스크립트가 발생하여 무들의 사이트에 로그인하게됩니다 ~ 또는 ~한다면 무들의 병렬 사용자를 만드십시오 존재하지 않는다. 먼저 asp 사이트에 로그인하려면 세션 변수에 사용자 자격 증명 (asp 로그인 양식에서)을 저장 한 다음 modx에 게시 요청을 보낼 페이지를 통해 경로를 다시 지정해야합니다 site ~를 방문한 다음 ASP 페이지가 돌아가는 곳으로 다시 라우팅합니다. IF 당신은 운이 좋다.