Laravel 사교계 명사 : Microsoft Azure 구성
패키지 설치 및 구성:
1. 설치 :
먼저 다음 명령을 실행하여 공급자를 설치합니다.
composer require socialiteproviders/microsoft-azure
2. 서비스 제공자 :
config/app.php
에서 \SocialiteProviders\Manager\ServiceProvider::class
를 providers[]
배열에 추가하고 이미 추가한 경우 Laravel\Socialite\SocialiteServiceProvider
에서 providers[]
를 제거합니다.예를 들어 :
'providers' => [
// a whole bunch of providers
// remove 'Laravel\Socialite\SocialiteServiceProvider',
\SocialiteProviders\Manager\ServiceProvider::class, // add
];
3. 이벤트 리스너
SocialiteProviders\Manager\SocialiteWasCalled
이벤트를 listen[]
의 app/Providers/EventServiceProvider
배열에 추가합니다. SocialiteProviders\Manager\SocialiteWasCalled[]
에 리스너(즉, 공급자의 리스너)를 추가합니다. \SocialiteProviders\Azure\AzureExtendSocialite::class.'@handle',
입니다.protected $listen = [
\SocialiteProviders\Manager\SocialiteWasCalled::class => [
\SocialiteProviders\Azure\AzureExtendSocialite::class.'@handle',
],
];
4. config/services.php에 구성 추가
'azure' => [
'client_id' => env('AZURE_CLIENT_ID'),
'client_secret' => env('AZURE_CLIENT_SECRET'),
'redirect' => env('AZURE_REDIRECT_URI'),
'tenant' => env('AZURE_TENANT_ID'),
'proxy' => env('PROXY') // optionally
],
5. 애플리케이션에서의 사용
이제 사용할 수 있습니다(파사드 설치 프로그램이 있다고 가정).
return Socialite::driver('azure')->redirect();
앱과 Azure에서 로그아웃하려면:
public function logout(Request $request)
{
Auth::guard()->logout();
$request->session()->flush();
$azureLogoutUrl = Socialite::driver('azure')->getLogoutUrl(route('login'));
return redirect($azureLogoutUrl);
}
laravel documentation에서 OAuth 공급자로 사용자를 인증하려면 두 개의 경로가 필요합니다. 하나는 사용자를 OAuth 공급자로 리디렉션하기 위한 경로이고 다른 하나는 인증 후 공급자로부터 콜백을 수신하기 위한 경로입니다.
use Laravel\Socialite\Facades\Socialite;
Route::get('/auth/redirect', function () {
return Socialite::driver('azure')->redirect();
});
Route::get('/auth/callback', function () {
$user = Socialite::driver('azure')->user();
// $user->token
});
Azure 구성
1. 앱 만들기
//for example
http://localhost:8000/auth/callback
Laravel에서 앱 구성:
.env 파일에 다음을 추가하십시오.
AZURE_CLIENT_ID=
AZURE_CLIENT_SECRET=
AZURE_REDIRECT_URI=
AZURE_TENANT_ID=
PROXY=
AZURE_CLIENT_ID는 Azure 애플리케이션의 "애플리케이션(클라이언트) ID"입니다.
AZURE_REDIRECT_URI는 콜백 경로 URI입니다.
AZURE_TENANT_ID는 Azure 애플리케이션의 "Directorty(테넌트) ID"입니다.
AZURE_CLIENT_SECRET의 경우:
이제 사용자는 자신의 Microsoft 계정을 사용하여 애플리케이션에 연결할 수 있습니다!
Reference
이 문제에 관하여(Laravel 사교계 명사 : Microsoft Azure 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/judicaelg/laravel-socialite-configure-microsoft-azure-16hj텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)