Обычная аутентификация в Laravel API и использование авторизации: Basic <token>?

Как интегрировать базовую аутентификацию в Laravel API и использовать Authorization: Basic?

Благодарю.

1 ответ

Решение

Как интегрировать базовую аутентификацию в Laravel API

Официальные документы дают хороший пример здесь:

Route::get('profile', function () {
    // Only authenticated users may enter...
})->middleware('auth.basic');

промежуточное программное обеспечение встроено в Laravel 5.7, поэтому вам не нужно его определять.

и использовать авторизацию: Basic?

Для потока авторизации Laravel 5.7 предоставляет нам Gates:

/**
 * Register any authentication / authorization services.
 *
 * @return void
 */
public function boot()
{
    $this->registerPolicies();

    Gate::define('update-post', function ($user, $post) {
        return $user->id == $post->user_id;
    });
}

Пожалуйста, прочитайте более подробно, как реализовать Гейтс, прочитав официальные документы здесь:

Ворота - это замыкания, которые определяют, авторизован ли пользователь для выполнения заданного действия, и обычно определяются в классе App\Providers\AuthServiceProvider с использованием фасада Gate. Гейтс всегда получает пользовательский экземпляр в качестве первого аргумента и может дополнительно получать дополнительные аргументы, такие как соответствующая модель Eloquent:

Вы также можете выполнить это Введение в Laravel Gates, которое является пошаговым руководством:

В этом посте мы создадим приложение для игрушек, чтобы показать, как Gate дает вам свободу и развязку. Веб-приложение будет иметь две пользовательские роли (авторов и редакторов) со следующими> разрешениями:

  • Авторы могут создать пост.
  • Авторы могут обновлять свои посты.
  • Редакторы могут обновить любой пост.
  • Редакторы могут публиковать сообщения.
Другие вопросы по тегам