php教程 PHP开发 SSO Single Sign-On의 PHP 구현 방법(Laravel 프레임워크)

SSO Single Sign-On의 PHP 구현 방법(Laravel 프레임워크)

Dec 28, 2016 pm 04:12 PM

Laravel은 간단하고 우아한 PHP 웹 개발 프레임워크(PHP Web Framework)입니다. 누들과 같은 지저분한 코드에서 벗어날 수 있으며 완벽한 네트워크 앱을 구축하는 데 도움이 될 수 있으며 모든 코드 줄은 간결하고 표현력이 뛰어납니다.

제가 SSO를 제대로 이해하고 있는지 모르겠습니다.

세 개의 사이트가 있다고 가정합니다. a.baidu.com b.baidu.com c.baidu.com

a.baidu.com은 검증된 사용자입니다.

b와 c는 클라이언트(하위 시스템) 역할을 합니다.

b와 c는 로그인이 필요할 때 a로 점프하고, 로그인 후 점프할 링크를 나타내는 매개변수 소스를 전달합니다.

사이트는 일반적인 로그인 방식(사용자 비밀번호 확인)이며, 확인 성공 후 일부 처리가 이루어집니다. 티켓은 생성되어야 합니다. 안전하다면 생성 방법은 중요하지 않습니다. 그런 다음 캐시에 저장합니다. 여기서 궁금한 점이 있으시면 나중에 요약해 드리겠습니다. 로그인에 성공한 후 (url.

``` php private function getTicketUrl(\)source)
{
\(ticket = md5(time()+key); Cache::put(\)ticket, $user, 120);
$url = $source . '?ticket=' . $ticket;
return $url;
}
로그인 후 복사

A역이 티켓을 가지고 B역으로 점프한다고 가정해 보겠습니다. (b.baidu.com?ticket=xxxxxxxxxxxxxxxx```)

사이트 b는 글로벌 필터를 만들고 티켓을 수락한 다음 스테이션 a에 티켓이 a에 의해 생성되었는지 확인하도록 요청합니다.

사이트 b 필터 AppHttpMiddlewareCasAuthenticate 코드가 있는지 확인합니다. 티켓과 요청이 스테이션 a로 전송됩니다. 로그인하면 사용자 UID를 가져오고 로직이 완료되지만 몇 가지 질문이 있습니다.

1.
public function handle($request, Closure $next)
{
$ticket = $request->input('ticket');
if ($ticket) {
$result = json_decode('http://a.baidu.com' . '/auth/check-ticket?ticket=' . $ticket), true);
if ($result['state'] == "SUCCESS") {
$request->session()->flush();
Auth::loginUsingId($result['result']['uid']);
return redirect(redirect()->getUrlGenerator()->current());
}
}
return $next($request);
로그인 후 복사


2. 스테이션 b가 이제 스테이션 c로 점프하면 사이트 B가 더 자주 활성화되고 캐시 시간이 항상 존재하기 때문입니다. 이때 사이트 B에서 사이트 C로 점프하고, 사이트 C는 로그인을 확인하기 위해 사이트 A로 점프하는데, 아직 로그인이 필요한 것으로 확인됩니다. 이것은 문제입니다. 우리의 비즈니스 모듈은 관련성이 없고 마음대로 점프하지 않을 것이기 때문에 지금은 이 문제를 고려하지 않겠습니다. 그러나 이것이 저에게는 정말 문제가 됩니다.

이 편집자는 SSO Single Sign-On의 PHP 구현 방법(Laravel 프레임워크).

SSO Single Sign-On의 추가 PHP 구현 방법(Laravel Framework)을 보려면 비용을 지불하세요. PHP 중국어 웹사이트를 주목하세요

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

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)