{ "manifests": { "fastfony/identity-bundle": { "manifest": { "bundles": { "Fastfony\\IdentityBundle\\FastfonyIdentityBundle": [ "all" ] }, "copy-from-recipe": { "config/": "%CONFIG_DIR%/" }, "add-lines": [ { "file": "config/packages/stof_doctrine_extensions.yaml", "content": " orm:\n default:\n timestampable: true\n", "position": "after_target", "target": "stof_doctrine_extensions:", "warn_if_missing": true }, { "file": "config/packages/security.yaml", "content": " fastfony_identity_user_provider:\n entity:\n class: Fastfony\\IdentityBundle\\Entity\\Identity\\User # if you extend the User class, change this to your class\n property: email\n\n", "position": "after_target", "target": " providers:", "warn_if_missing": true }, { "file": "config/packages/security.yaml", "content": "\n fastfony_identity:\n lazy: true\n provider: fastfony_identity_user_provider\n user_checker: Fastfony\\IdentityBundle\\Security\\UserChecker\n form_login:\n login_path: form_login\n check_path: form_login\n enable_csrf: true\n csrf_token_id: login\n form_only: true\n default_target_path: fastfony_identity_secure_area\n login_link:\n check_route: login_check\n signature_properties: [ id, email ]\n max_uses: 3\n default_target_path: fastfony_identity_secure_area\n entry_point: Fastfony\\IdentityBundle\\Security\\CustomEntryPoint\n remember_me:\n always_remember_me: true\n signature_properties: [ 'id', 'email', 'password' ]\n switch_user: true\n login_throttling:\n max_attempts: 3\n logout:\n path: /logout\n clear_site_data:\n - cookies\n - storage\n\n", "position": "after_target", "target": " security: false", "warn_if_missing": true }, { "file": "config/packages/security.yaml", "content": " - { path: ^/secure-area/, roles: ROLE_USER } # Adjust as needed\n", "position": "after_target", "target": " access_control:", "warn_if_missing": true } ], "post-install-output": [ "Fastfony/IdentityBundle is almost ready:", "", "1. The config/packages/security.yaml and config/packages/stof_doctrine_extensions.yaml files have been updated where the expected configuration lines were found; please verify these changes.", "", "2. Merge the content of config/packages/mailer.yaml.dist into your config/packages/mailer.yaml file and set your MAILER_DSN environment variable if it is not already done.", "", "3. Create the database schema:", "", " Option 1 - Generate and run migrations to create the database tables:", "", " php bin/console doctrine:migrations:diff", " php bin/console doctrine:migrations:migrate", "", " Option 2 - Or without migrations, you can create the schema directly:", "", " php bin/console doctrine:schema:update --force", "", "4. Use the bundle:", "", " Option 1 - Create an user with command:", "", " php bin/console fastfony:user:create", "", " Option 2 - Create an user on browser (if registration is enabled):", "", " Go to the /register route. Please be sure that your MAILER_DSN is correctly configure and sending messages async is disabled (or your messages consumer command is running) for receive the login link e-mail.", "", "By default, routes behind /secure-area require the user logged in." ] }, "files": { "config/packages/fastfony_identity.yaml": { "contents": [ "fastfony_identity:", " user:", " #require_email_verification: true # Require email verification for new users (default: false)", " role:", " # Default role assigned to new users (if you want to assign one different from ROLE_USER)", " #default_role: 'ROLE_ADMIN'", " login:", " #default_method: 'login_link' # Default login method: 'form_login' or 'login_link' (default: 'form_login')", " registration:", " enabled: true # Enable or disable user registration (default: false)", " login_link:", " #enabled: false # Enable or disable login via email link (default: true)", " #email_subject: 'Your login link' # Subject of the email sent with the login link (text or translation key)", " #limit_max_ask_by_minute: 3 # Maximum number of login link requests in one minute", " request_password:", " #email_subject: 'Reset your password' # Subject of the email sent with the password reset link (text or translation key)", " #email_content: 'Click on the button below to reset your password.' # Content of the email sent with the password reset link (text or translation key)", " #email_action_text: 'Reset my password' # Text of the action button in the email sent with the password reset link (text or translation key)", " #lifetime: 900 # Lifetime of the password reset token in seconds (default: 900 seconds = 15 minutes)", " #redirect_route: 'app_homepage' # Route to redirect to after a successful password reset", "", "" ], "executable": false }, "config/packages/mailer.yaml.dist": { "contents": [ "framework:", " mailer:", " envelope:", " sender: 'noreply@your-website.com'", "" ], "executable": false }, "config/routes/fastfony_identity.yaml": { "contents": [ "fastfony_identity:", " resource: \"@FastfonyIdentityBundle/config/routes/all.yaml\"", "" ], "executable": false } }, "ref": "71e9e7c9efb6fbae0a7ef3e6a7f9536acc1f6b53" } } }