>  기사  >  백엔드 개발  >  PHP 언어 프로세스 제어의 능동 및 수동

PHP 언어 프로세스 제어의 능동 및 수동

高洛峰
高洛峰원래의
2016-12-01 11:18:55922검색

지난 한 해 동안 대부분의 PHPer는 Taobao 개정, 클라우드 컴퓨팅, Tencent Open Platform, 온라인 게임 등의 프로젝트에 열심히 노력해 왔습니다. 이러한 작업은 PHP 언어가 계속해서 주도할 수 있다고 믿습니다. 앞으로 50년이 기대됩니다. 100년 후에도 여전히 PHP는 매우 강력합니다. 우리는 PHP를 아는 것 외에는 아무것도 잘 못하는 소수의 사람들입니다.

능동적인 것과 소극적인 것을 예로 들어보겠습니다. 당신 자신의 관점에서 볼 때나 상사의 관점에서 볼 때 당신은 적극적이고 긍정적이고 낙관적인 면을 가지고 있습니다. 상사가 당신에게 회사에 출근하라고 한 다음, 타오바오를 구성하고 급여를 20% 인상해 달라고 요청한다고 가정해 보십시오. 수동형이라고 하면 그냥 수동형이 될 거라고 생각해요. 그리고 프로그램 과정에서 이런 당황스러운 능동형과 수동형도 만나게 될 거에요.

클리어
buy qq가 상품 구매에 성공하면
file_get_contents('http://www.qq.com/api.php?add_saleinfo=buy_qq&orderid=)를 통해 QQ 메인 서버에 알림이 전송됩니다. 12345&pay=888&email=a@qq.com');

이 코드는 buy.qq.com에서 실행되는데 이론적으로는 안전하지만 현실은 어떻습니까? 아무리 소스를 제한하고 데이터를 확인해도 코드를 작성한 사람이 위험에 처하게 됩니다. 코드를 작성하는 사람이 큰 권한을 갖고 있는데 어떻게 방지할 수 있나요? 이를 방지하려면 패시브(qq.com)에서 액티브로 변경해야 합니다. http://www.qq.com/api.php?add_saleinfo=buy_qq 더 이상 수신하지 않도록 수정되었습니다. 토큰 값을 받은 후 인터페이스는 buy.qq의 쿼리 인터페이스를 호출한 다음 이를 데이터베이스에 저장합니다. 일반 사용자는 buy.qq를 알고 있더라도 더 이상 토큰 값을 생성할 수 없습니다. qq.com의 쿼리 인터페이스는 qq.com에 영향을 미칠 수 없습니다. qq.com은 기본적으로 항상 혼란스럽지 않지만 창고에 대해 적극적으로 분석하고 생각합니다. Taobao의 경우에도 마찬가지입니다. 예를 들어 과거에 노출된 일부 브라우저에서는 웹 페이지의 pid 값을 수정하여 사용자에게 큰 손실을 입혔습니다. 이는 다음과 같이 작성된 수동적인 결과입니다. , PHP는 Taobao API 인터페이스를 요청하고 제품 정보를 수신합니다. 제품 구매 링크가 있으며, 이 구매 링크가 웹마스터를 페이지에서 직접 href하는 사용자를 수집하고 pid를 수정합니다. 다음으로 pid는 돈을 의미하는데 어떤 사람들은 나중에 이 문제에 대해 생각하고 버그를 방지하기 위해 수동적이고 적극적인 접근 방식을 채택했습니다. 사용자가 보는 URL은 다음과 유사합니다: www.qq.com /tao/buy.php?sid=aaaa333 sid는 확실히 pid 값이 아닙니다. 모든 작업은 분석 및 보안 탐지 작업을 적극적으로 수행하는 buy.php에 의해 수행됩니다.

QQ Internet 2.0은 사용자 데이터의 주요 센터로서 어떻게 사용자 보안을 보장해야 합니까? 현재 QQ 로그인도 보장해야 합니다. 프로세스는 다음과 같습니다. 먼저 appid appkey callbackurl이 일련의 링크로 결합된 다음 qq.com으로 이동합니다. 이것이 바로 많은 사이트가 qqlogin.php에 직접 액세스하여 qq 로그인 페이지로 이동할 수 있는 이유입니다. 보안은 꽤 좋습니다. 로그인 프로세스는 여전히 qq.com에 있습니다. 이는 phper 싱글 사인온에 대해 자주 이야기되는 사항입니다. 로그인에 성공하면 callbackurl에서 얻은 정보로 바로 이동합니다. 이 시간은 사용자가 성공적으로 로그인했음을 증명하기에는 아직 충분하지 않습니다. 토큰 값만 가져오므로 두 번째 단계에 들어가서 토큰 값을 사용하여 QQ API 인터페이스에서 사용자의 openid를 쿼리하고 로그인을 완료합니다. 즉, QQ가 주도권을 가져야 하며, 쿼리 결과는 단순히 성공 여부가 아니라 해당 매개변수와 프롬프트 정보가 나중에 어떻게 추가되든 상관없이 호환됩니다. 내부 보안에는 도메인 이름과 앱 ID 간의 일치 여부 확인, 토큰 만료 확인, IP 제한 등이 포함됩니다.

이런 방식으로 이루어집니다. PayPal과 Alipay를 포함하여 모두 유사한 예가 많이 있습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.