Jul 24, 2023 pm 07:07 PM
php laravel fortify

Laravel Fortify를 사용하여 PHP 보안 검증 구현

소개:
인터넷이 널리 보급되면서 네트워크 보안 문제가 점점 더 중요해지고 있습니다. 사용자 정보를 안전하게 유지하는 것은 웹 애플리케이션을 구축하고 개발할 때 중요한 작업입니다. PHP 보안 검증을 강화하기 위해 검증 프로세스를 단순화하고 강화하는 강력한 도구인 Laravel Fortify를 사용할 수 있습니다. 이 글에서는 Laravel Fortify의 기본 개념과 사용법을 소개하고 독자의 이해를 돕기 위해 몇 가지 예제 코드를 제공합니다.

  1. Laravel Fortify 소개
    Laravel Fortify는 Laravel 프레임워크에 최신 인증 시스템을 제공하는 공식적으로 제공되는 PHP 패키지입니다. Fortify는 등록, 로그인, 비밀번호 재설정, 이메일 확인 등을 포함하여 사전 구축된 일련의 인증 기능을 제공하여 안전하고 신뢰할 수 있는 사용자 인증 기능을 신속하게 구축하는 데 도움이 됩니다. 동시에 Fortify는 2단계 인증, 로그인 시도 횟수 제한 등과 같은 일부 다른 기능도 통합하여 보다 포괄적인 보안을 제공합니다.
  2. Laravel Fortify 설치
    먼저 Laravel 프레임워크가 설치되었는지 확인하세요. 그런 다음 터미널에서 프로젝트 디렉터리로 전환하고 다음 명령을 실행하여 Laravel Fortify를 설치하세요:
composer require laravel/fortify
로그인 후 복사

설치가 완료된 후 다음 명령을 실행하여 Fortify 구성 파일을 생성해야 합니다:

php artisan vendor:publish --provider="LaravelFortifyFortifyServiceProvider"
로그인 후 복사

구성 파일 config/fortify.php 아래에서 여기에서 몇 가지 사용자 정의 구성을 만들 수 있습니다. config/fortify.php 下,我们可以在这里进行一些自定义配置。

  1. 基本使用
    在配置完成后,我们就可以开始使用 Laravel Fortify 了。首先,在你的应用程序中引入 Fortify 的一些基本配置和路由:
// routes/web.php

use LaravelFortifyFortify;

// 引入 Fortify 的一些基本配置
Fortify::loginView(function () {
    return view('auth.login');
});

// 引入 Fortify 的路由
Fortify::authenticateUsing(function (Request $request) {
    // 用户验证逻辑
});

// 用户认证相关路由
Route::group(['middleware' => config('fortify.middleware', ['web'])], function () {
    // 注册、登录、密码重置、邮箱验证等路由
    Fortify::registerRoutes();
    Fortify::resetPasswordRoutes();
    Fortify::verifyEmailRoutes();
});
로그인 후 복사

这里的基本配置包括了用户登录界面的视图和用户验证逻辑。Fortify 提供了一些预设的视图模板,你可以根据需求进行修改或者自定义。

  1. 自定义用户认证逻辑
    在上面的示例代码中,我们提到了用户验证逻辑的部分。这里,我们可以通过实现 Laravel Fortify 的 authenticateUsing 方法来自定义用户的认证方式。下面是一个简单的例子:
// routes/web.php

use LaravelFortifyFortify;
use IlluminateSupportFacadesAuth;

Fortify::authenticateUsing(function (Request $request) {
    // 获取表单提交的登录信息
    $credentials = $request->only('email', 'password');

    // 用户认证逻辑
    if (Auth::attempt($credentials)) {
        return redirect()->intended('/dashboard');
    } else {
        return back()->withErrors([
            'email' => 'Email 或密码不正确',
        ]);
    }
});
로그인 후 복사

这个例子中,我们使用了 Laravel 的 Auth Facade 来进行用户认证。你可以根据你的应用程序需求,使用不同的用户认证方式。

  1. 其他功能
    除了基本的认证功能,Laravel Fortify 还提供了一些其他的安全功能。这些功能可以在 config/fortify.php 文件中进行配置。下面是一些常用功能的示例:
  • 两步验证:使用 Laravel 的 TwoFactorAuthentication 中间件来开启两步验证:

    Fortify::authenticateThrough(function (Request $request) {
      return array_filter([
          config('fortify.limiters.login') ? null : RateLimiter::for('login'),
          $request->input('remember') ? null : ThrottleFailedLogins::forUser($request->user()),
          TwoFactorAuthentication::check($request) ? null : PreventsTwoFactorAuthentication::class,
      ]);
    });
    로그인 후 복사
  • 限制登录尝试次数:可以在 config/fortify.php 中配置登录尝试次数和锁定时间:

    'limiters' => [
      'login' => [
          'enabled' => true,
          'tries' => 5,
          'lockout_time' => 300,
      ],
    ],
    로그인 후 복사
  • Email 验证:Fortify 提供了一整套预先构建好的路由来处理邮箱验证相关的逻辑,你可以在 config/fortify.php
    1. 기본 사용구성이 완료되면 Laravel Fortify를 사용할 수 있습니다. 먼저 Fortify의 몇 가지 기본 구성 및 라우팅을 애플리케이션에 도입합니다.


      rrreee

      여기의 기본 구성에는 사용자 로그인 인터페이스 및 사용자 인증 논리 보기가 포함됩니다. Fortify는 필요에 따라 수정하거나 사용자 정의할 수 있는 몇 가지 미리 설정된 보기 템플릿을 제공합니다. 🎜
        🎜맞춤형 사용자 인증 로직🎜위 샘플 코드에서 사용자 인증 로직 부분을 언급했습니다. 여기서는 Laravel Fortify의 authenticateUsing 메소드를 구현하여 사용자의 인증 방법을 맞춤 설정할 수 있습니다. 다음은 간단한 예입니다: 🎜🎜rrreee🎜이 예에서는 사용자 인증을 위해 Laravel의 Auth Facade를 사용합니다. 애플리케이션 요구 사항에 따라 다양한 사용자 인증 방법을 사용할 수 있습니다. 🎜
          🎜기타 기능🎜 Laravel Fortify는 기본 인증 기능 외에도 몇 가지 다른 보안 기능도 제공합니다. 이러한 기능은 config/fortify.php 파일에서 구성할 수 있습니다. 다음은 일반적으로 사용되는 기능의 몇 가지 예입니다: 🎜🎜
        🎜🎜2단계 인증: Laravel의 TwoFactorAuthentication 미들웨어를 사용하여 2단계 인증을 활성화합니다. 🎜rrreee🎜🎜🎜로그인 시도 횟수 제한 : config/fortify.php에서 로그인 시도 횟수와 잠금 시간을 구성할 수 있습니다. 🎜rrreee🎜🎜이메일 확인: Fortify는 이메일 확인 관련 로직을 처리하기 위해 사전 구축된 경로 세트를 제공합니다. config/fortify.php할 수 있습니다. 🎜🎜🎜결론: 🎜Laravel Fortify를 사용하면 PHP 보안 검증 프로세스를 쉽게 구축하고 강화할 수 있습니다. 이 글에서는 Laravel Fortify의 기본 개념과 사용법을 소개하고 독자의 이해를 돕기 위해 몇 가지 예제 코드를 제공합니다. 이 정보가 사용자 정보의 보안을 더욱 잘 보호하고 웹 애플리케이션의 신뢰성을 높이는 데 도움이 되기를 바랍니다. 🎜

      위 내용은 의 상세 내용입니다. 자세한 내용은 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)

    Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

    PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

    CakePHP 날짜 및 시간 CakePHP 날짜 및 시간 Sep 10, 2024 pm 05:27 PM

    cakephp4에서 날짜와 시간을 다루기 위해 사용 가능한 FrozenTime 클래스를 활용하겠습니다.

    CakePHP 파일 업로드 CakePHP 파일 업로드 Sep 10, 2024 pm 05:27 PM

    파일 업로드 작업을 위해 양식 도우미를 사용할 것입니다. 다음은 파일 업로드의 예입니다.

    CakePHP 토론 CakePHP 토론 Sep 10, 2024 pm 05:28 PM

    CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

    PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

    VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

    CakePHP 유효성 검사기 만들기 CakePHP 유효성 검사기 만들기 Sep 10, 2024 pm 05:26 PM

    컨트롤러에 다음 두 줄을 추가하면 유효성 검사기를 만들 수 있습니다.

    CakePHP 빠른 가이드 CakePHP 빠른 가이드 Sep 10, 2024 pm 05:27 PM

    CakePHP는 오픈 소스 MVC 프레임워크입니다. 이를 통해 애플리케이션 개발, 배포 및 유지 관리가 훨씬 쉬워집니다. CakePHP에는 가장 일반적인 작업의 과부하를 줄이기 위한 여러 라이브러리가 있습니다.

    CakePHP 로깅 CakePHP 로깅 Sep 10, 2024 pm 05:26 PM

    CakePHP에 로그인하는 것은 매우 쉬운 작업입니다. 한 가지 기능만 사용하면 됩니다. cronjob과 같은 백그라운드 프로세스에 대해 오류, 예외, 사용자 활동, 사용자가 취한 조치를 기록할 수 있습니다. CakePHP에 데이터를 기록하는 것은 쉽습니다. log() 함수는 다음과 같습니다.

    See all articles