Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

SymfonyCasts

Starting in Symfony2: Course 2 (2.4+)

via SymfonyCasts

Overview

Over the next hour, we're going to take you through some of the most difficult areas of Symfony learning all about security, forms, and parts of Doctrine. We'll also see testing and learn more about how Symfony's service container works. When you get to the end, you'll be well on your way to mastering Symfony.

One of the things we'll be creating is a security system that stores users in the database. This is functionality similar to what's offered by the very popular FOSUserBundle. That bundle is really great, but until you understand how the security system works, you're going to run into limitations. Once you do, you'll feel at home using FOSUserBundle or configuring the security system all on your own.

Highlights:

  • Learning and building a form-login security system from scratch
  • Loading users from the database
  • Using AdvancedUserInterface and UserProviderInterface classes to give us more control over login
  • Doctrine Repositories and Querying
  • Building forms: creating fields, the data_class option, form type classes
  • Form field options & HTML5 validation
  • Form rendering
  • Functional Testing!

... and of course, tips, tricks, best practices and other little features along the way!

Syllabus

  • Introduction
  • Security Fundamentals
  • Authorization with Access Control
  • Creating a Login Form (Part 1)
  • Creating a Login Form (Part 2)
  • Logging Out and Cleaning Up
  • Twig Security and IS_AUTHENTICATED_FULLY
  • Denying Access: AccessDeniedException
  • Entity Security
  • Saving Users
  • Adding Dynamic Roles to each User
  • Repository Security
  • Doctrine’s QueryBuilder
  • The UserProvider: Custom Logic to Load Security Users
  • User Serialization
  • Registration Form
  • Form Rendering
  • Using More Fields: email and repeated
  • Handling Form Submissions
  • Form: Default Data
  • Cleaning up with a plainPassword Field
  • Using an External Form Type Class
  • Registration Validation
  • Server-Side Validation
  • Adding a Flash Message
  • Automatically Authenticating after Registration
  • Functional Testing
  • Testing Forms
  • Controlling Data / Fixtures in a Test
  • More about Container, the “doctrine” Service and the Entity Manager
  • After-dinner Mint
  • Security: Creating Roles and Role Hierarchies
  • Switching Users / Impersonation
  • Whitelisting: Securing all Pages, except a few
  • Accessing the User
  • Remember Me Functionality

Taught by

Ryan Weaver and Leanna Pelham

Reviews

Start your review of Starting in Symfony2: Course 2 (2.4+)

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.