
Open Source, #PHP, #Symfony Developer. Writer @SymfonyCasts, @Symfony Core Member. Author of https://xitter.cf/t.co/MK05b2VaRK packages.
Kitchener, Ontario, Canada
Joined March 2009
- Tweets1.2K
- Following269
- Followers918
- Likes2.8K
Kevin Bond retweeted
🔐 Symfony Security: Going Further #10
Need a forgot password flow? There's a maker for that! Let's generate the whole thing, log the user in automatically after a reset, and see how it avoids leaking who has an account! symfonycasts.com/screencast/…
Kevin Bond retweeted
🔐 Symfony Security: Going Further #9
Let's swap the built-in switch_user role for a custom attribute, let a voter make the call, & see how to check the permissions of any user - not just the one logged in. And, now our admins can't impersonate each other! symfonycasts.com/screencast/…
🚀 New in Symfony 8.2: Single-Use and Safer Signed URLs
➡️ symfony.com/blog/new-in-symf…
Kevin Bond retweeted
🔐 Symfony Security: Going Further #8
Let's give users the choice to log in with their email or username! We'll add unique usernames, update our login form, and teach Symfony how to find users by either one. symfonycasts.com/screencast/…
Kevin Bond retweeted
🔐 Symfony Security: Going Further #7
After logging in, users should return to the page they were on, not the homepage! Let's use Symfony's _target_path to send them right back where they left off, making the login experience a little smoother! symfonycasts.com/screencast/…
Kevin Bond retweeted
🔐 Symfony Security: Going Further #6
Need a super admin who can do (almost) anything? Let's build a custom voter that grants sweeping permissions across our app, while making sure important authentication checks still behave normally! symfonycasts.com/screencast/…
Kevin Bond retweeted
🔐 Symfony Security: Going Further #5
Ever notice how GitHub asks you to confirm your password before sensitive actions? Let's build that same "sudo mode" in Symfony, requiring full authentication with a smooth password confirmation flow! symfonycasts.com/screencast/…
Kevin Bond retweeted
🔐 Symfony Security: Going Further #4
Wrong password, unknown email, disabled account... your login form answers all three with "Invalid credentials." That's deliberate. Let's decide how much we actually want to give away. symfonycasts.com/screencast/…
Kevin Bond retweeted
Symfony Cache Contracts have a sneaky little trick 👀
Use `beta: INF` to force-refresh a cached value without deleting the old one first - so other requests can keep using it while the fresh value is computed.
See how it works 👇
symfonycasts.com/blog/symfon…
Kevin Bond retweeted
🔐 Symfony Security: Going Further #3
Disabling an account blocks the next login... but a user already browsing doesn't even notice. Let's show them the door mid-click. 👋 symfonycasts.com/screencast/…
Kevin Bond retweeted
🔐 Symfony Security: Going Further #2
Deleting a user is forever. Sometimes you just want to switch them off. Let's teach our login to check more than the password. symfonycasts.com/screencast/…
🚀 New in Symfony 8.2: Attribute-based Forms
➡️ symfony.com/blog/new-in-symf…
Kevin Bond retweeted
🚀 New on the blog: our ideal GitHub Actions setup for Symfony apps!
Tests, linting, PHPStan, code style, database/schema checks, Symfony-aware diagnostics, asset compilation, plus a scheduled Composer security audit.
A solid CI baseline you can actually build from:
symfonycasts.com/blog/ideal-…
Kevin Bond retweeted
🚨 New Course 🚨
🔐 Symfony Security: Going Further #1
A 403 status code tells us we don't have access... but it also tells us the thing exists. Let's borrow the trick GitHub uses on private repositories 🖖 symfonycasts.com/screencast/…
Kevin Bond retweeted
I'm excited to be heading to @symfonycon Warsaw this November!
I'll be talking about PlaywrightPHP, and some of the new things it brings to testing Symfony apps...
Real browsers. Symfony's test environment. And a few things that become possible...
smnandre.dev/blog/see-you-at…
Kevin Bond retweeted
This one has been sitting pretty high on the LiveComponent wishlist.
Downloads from LiveActions: redirect to a URL, send a file, or stream it on the fly!
And yes.. LiveProps and state update in the same response too!
(Coming in LiveComponent 3.5)
ux.symfony.com/demos/live-co…
Kevin Bond retweeted
🔐 Symfony Security Basics #19
Let's finish by building a complete user registration flow! We'll generate the registration form, add validation, save our new user, log them in automatically, and finish with a discussion about user enumeration. symfonycasts.com/screencast/…
Kevin Bond retweeted
🔐 Symfony Security Basics #18
Symfony dispatches events throughout the security process. Let's explore some of the most useful ones, then put one to work tracking each user's last login! symfonycasts.com/screencast/…
Kevin Bond retweeted
🔐 Symfony Security Basics #17
Let's protect our login form from brute-force attacks! We'll enable Symfony's login throttling, see what happens when we trip the limiter, then dig into its configuration and how it works. Delightful nerdery! symfonycasts.com/screencast/…
Few weeks ago, I finally released "zenstruck/foundry-behat"
don't hesitate to try it and give some feedback!
symfony.com/bundles/Zenstruc…
@zenstruck #PHP #symfony





