2009-05-19 6 views
0

서버에서 XML 데이터를 가져 오는 데 새 서비스를 사용하고 있습니다.내 서버에서 PHP 스크립트를 통해 인증하는 방법

이 서비스는 로그인하는 두 가지 방법, URL에 쿼리를 통해 하나 제공

http://<server>/login.asp?username=<User Name>&password=<Password> 

를 서버 7 일간 유효 쿠키를 반환합니다. 즉, 모든 쿼리에 로그인하는 대신 (내 스크립트의 효율성을 떨어 뜨리는 것), 일주일에 한 번만 로그인하면됩니다.

나는 스크립트가 웹 브라우저에서 실행되지 않고 서버의 cron 스크립트에서 실행되기 때문에이 작업을 수행 할 수 없다는 것을 깨달았습니다. 데스 알고리즘을 사용하여 암호화 사용자 이름, passwork 및 사용자 그룹입니다

토큰

토큰 : 내 서버에 쿠키를 저장하는 방법이 있나요, 아니면 내가 두 번째 방법을 위해 가야 할 키와 타임 스탬프. 적절한 키 또는 아래 보안 호출하여 DES 알고리즘 를 사용하는 애플리케이션에 의해 생성 될 수있는 토큰을 사용할 수있다 : 토큰 반환 페이지의 본문에 포함 이며 1 시간 동안 유효

나는이 방법에 대해 아무것도 모른다. 올바른 방향으로 나를 가리킬 수 있습니까? 감사.

에드

답변

1

내 서버에 쿠키를 저장할 수있는 방법이 있습니까?

예. 방법은 다음과 같습니다.

curl -c cookies.txt http://<server>/login.asp?username=<User Name>&password=<Password> 

이렇게하면 넷스케이프 형식으로 cookies.txt에 기록합니다.

노아

0

당신이 실제 로그인 스크립트에 액세스 할 수있는 경우, 당신은 항상 만이 알고있는 고유 ID의 일종 ..

더 나은

일부 HMAC-을 사용하는 것입니다 (MD5를 포함하는 대신 수/SHA1) scheme은 OpenAuth와 같습니다. 게으른 경우 사용자 이름 + 비밀번호를 무시하고 액세스하는 모든 URL에 '? key = somethingonlyyouknow'와 같은 내용을 포함하면됩니다. 사용자 + 암호 체계는 '기계'가 아니라 '인간 만 사용해야'합니다.

모두 실패하면 쿠키를 저장하도록 스크립트를 변경하십시오. '컬 (curl)'을 사용하면 쿠키를 저장해야하는지, 어떤 파일에 저장해야하는지 지정할 수 있습니다.

관련 문제