РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1195 of 1361 menu

Команда secrets:set

Команда secrets:set создаёт новый секрет или перезаписывает значение уже существующего секрета в хранилище секретов приложения. Первым параметром передаётся имя секрета. Если секрет уже существует, Symfony запросит подтверждение на его перезапись, если не указан флаг --force. Значение секрета вводится интерактивно, либо передаётся через STDIN, либо задаётся опцией --random для генерации случайной строки.

Синтаксис

php bin/console secrets:set [options] [--] <name> [<value>]

Аргументы

Команда принимает следующие аргументы:

name Имя секрета (обязательный аргумент) value Значение секрета (необязательный аргумент)

Опции

Команда поддерживает следующие опции:

--random Сгенерировать случайное значение секрета --force, -f Перезаписать секрет без подтверждения --local Записать секрет в локальное хранилище --env=ENV Записать секрет для указанного окружения

Пример

Давайте создадим новый секрет с именем DATABASE_PASSWORD. Команда запросит значение секрета интерактивно:

php bin/console secrets:set DATABASE_PASSWORD

Результат выполнения команды:

Please type the value of the secret: > [OK] Secret "DATABASE_PASSWORD" was set successfully.

Пример

Давайте сгенерируем случайное значение секрета при помощи опции --random:

php bin/console secrets:set APP_SECRET --random

Результат выполнения команды:

[OK] Secret "APP_SECRET" was set successfully.

Пример

Давайте перезапишем существующий секрет DATABASE_PASSWORD без интерактивного подтверждения при помощи флага --force:

php bin/console secrets:set DATABASE_PASSWORD --force

Результат выполнения команды:

Please type the value of the secret: > [OK] Secret "DATABASE_PASSWORD" was set successfully.

Пример

Давайте прочитаем значение секрета в контроллере через параметр окружения %env(DATABASE_PASSWORD)%:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; class SecretController extends AbstractController { #[Route('/secret', name: 'secret_show')] public function show(string $databasePassword): Response { return new Response($databasePassword); } } ?>

Параметр $databasePassword связывается с секретом в конфигурации сервиса:

services: App\Controller\SecretController: arguments: $databasePassword: '%env(DATABASE_PASSWORD)%'

Результат выполнения кода для секрета со значением 'abcde':

abcde

Смотрите также

  • команда secrets:list,
    которая выводит список всех секретов
  • команда secrets:decrypt-to-local,
    которая расшифровывает секреты в локальный файл
  • команда debug:dotenv,
    которая показывает переменные окружения
  • команда debug:container,
    которая выводит информацию о сервисах
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить