Password Policy
Package docs status
Section titled “Package docs status”This page is generated from package source documentation in the Capell packages repository and the checked-in manifest. Source documentation is not distribution status. Before running a Composer command, verify that the exact package and compatible 1.x release are available through public Packagist or the authenticated marketplace account.
| Field | Value |
|---|---|
| Composer package | capell-app/password-policy |
| Package slug | password-policy |
| Product group | Capell Security & Compliance |
| Tier | premium |
| Bundle | security-compliance |
| Runtime contexts | admin, console |
| Capell version | ^1.0 |
| Catalogue role | extension |
| Release channel | Beta |
| Source repository | capell-app/packages |
| Source path | packages/password-policy |
| Docs source | packages/password-policy/docs |
| Manifest | capell.json |
What This Plugin Adds
Section titled “What This Plugin Adds”Password Policy is an Available, Schema-owning Capell package in the Capell Security & Compliance product group. It ships as capell-app/password-policy and extends these surfaces: admin, console.
Password Policy adds configurable password strength, expiry, forced-change, reuse-history, and compromised-password checks for Capell accounts.
Admins configure the policy and can require a user to change their password. Users are directed through the forced-change screen when they are flagged for a change or their password has expired.
Status details:
- Status: Available
- Tier: premium
- Bundle: security-compliance
- Composer package:
capell-app/password-policy - Namespace:
Capell\PasswordPolicy - Theme key: not applicable
Why It Matters
Section titled “Why It Matters”For developers: Policy evaluation and password updates live in typed Actions, while middleware enforces the result consistently across admin requests.
For teams: Operators can apply one account-password standard and identify users who need to update their credentials.
Screens And Workflow
Section titled “Screens And Workflow”Screenshot contract: docs/screenshots.json.




- Password Policy settings page (admin, required evidence).
- Forced password change form (admin, required evidence).
- User table password policy columns and filters (admin, required evidence).
Technical Shape
Section titled “Technical Shape”Service providers
Section titled “Service providers”Capell\PasswordPolicy\Providers\PasswordPolicyServiceProvider
Config files
Section titled “Config files”packages/password-policy/config/capell-password-policy.php
Migrations
Section titled “Migrations”packages/password-policy/database/migrations/2026_05_10_190863_01_add_password_policy_columns_to_users_table.phppackages/password-policy/database/migrations/2026_05_10_190863_02_create_password_policy_password_histories_table.phppackages/password-policy/database/migrations/2026_07_08_000001_add_password_policy_notification_timestamps_to_users_table.php
Settings migrations
Section titled “Settings migrations”packages/password-policy/database/settings/2026_05_10_190864_01_create_password_policy_settings.phppackages/password-policy/database/settings/2026_06_04_000001_01_add_password_complexity_settings.phppackages/password-policy/database/settings/2026_06_16_000001_01_add_password_expiry_warning_settings.php
Settings classes
Section titled “Settings classes”PasswordPolicySettings
Filament classes
Section titled “Filament classes”PasswordPolicyPanelExtenderPasswordPolicyUserResourceBridgeForcedPasswordChangePagePasswordPolicySettingsPagePasswordPolicySettingsSchema
Events
Section titled “Events”PasswordChangedPasswordExpiredUserMarkedForPasswordChange
Actions
Section titled “Actions”BuildPasswordSecurityPostureReportActionEvaluatePasswordPolicyActionMarkUserForPasswordChangeActionNotifyPasswordPolicyLifecycleEventActionPrunePasswordHistoryActionRecordPasswordHistoryActionSendPasswordExpiryWarningNotificationsActionUpdatePasswordActionValidatePasswordChangeAction
Data objects
Section titled “Data objects”PasswordChangeDataPasswordPolicyStatusDataPasswordSecurityPostureReportDataResolvedPasswordPolicySettingsData
Command signatures
Section titled “Command signatures”capell:password-policy:doctorcapell:password-policy:expire-stalecapell:password-policy:prune-historycapell:password-policy:require-changecapell:password-policy:send-expiry-warnings
Console command classes
Section titled “Console command classes”ExpireStalePasswordsCommandPasswordPolicyDoctorCommandPrunePasswordHistoryCommandRequirePasswordChangeCommandSendExpiryWarningsCommand
Manifest contributions
Section titled “Manifest contributions”admin-action-extender: Capell\PasswordPolicy\Manifest\PasswordPolicyAdminExtendersContributionadmin-page: Capell\PasswordPolicy\Manifest\PasswordPolicyAdminPagesContributionconsole-command: Capell\PasswordPolicy\Manifest\PasswordPolicyConsoleCommandsContributionhealth-check: Capell\PasswordPolicy\Manifest\PasswordPolicyHealthContributionsetting: Capell\PasswordPolicy\Manifest\PasswordPolicySettingsContribution
Health checks
Section titled “Health checks”Capell\PasswordPolicy\Health\PasswordPolicyHealthCheck
Blade views
Section titled “Blade views”packages/password-policy/resources/views/filament/pages/forced-password-change.blade.php
Data Model
Section titled “Data Model”- Required tables:
password_policy_password_histories. - Core record references in migrations:
users via user_id. - Migration files:
2026_05_10_190863_01_add_password_policy_columns_to_users_table.php,2026_05_10_190863_02_create_password_policy_password_histories_table.php,2026_07_08_000001_add_password_policy_notification_timestamps_to_users_table.php. - Migration impact: run host migrations through the package install flow before opening package surfaces.
- Deletion/retention behaviour: migrations declare cascade-on-delete relationships; no timed pruning or retention schedule is declared in
capell.json.
Install Impact
Section titled “Install Impact”- Required packages:
capell-app/admin,capell-app/core. - Admin navigation: declares
admin-page: PasswordPolicyAdminPagesContribution; each Filament page or resource controls its own navigation visibility. - Admin/editor extensions:
admin-action-extender: PasswordPolicyAdminExtendersContribution. - Permissions: Shield-generated page permissions for
Capell\PasswordPolicy\Filament\Pages\PasswordPolicySettingsPage(names and grants depend on host Shield configuration). - Public routes: none declared.
- Database changes: package migrations are declared.
- Config:
config/capell-password-policy.php. - Settings:
Capell\PasswordPolicy\Settings\PasswordPolicySettings. - Queues or schedules: none declared.
- Cache tags: none declared.
- Commands:
capell:password-policy:doctor,capell:password-policy:expire-stale,capell:password-policy:prune-history,capell:password-policy:require-change,capell:password-policy:send-expiry-warnings.
Common Pitfalls
Section titled “Common Pitfalls”- Keep required Capell packages on compatible v4 releases:
capell-app/admin,capell-app/core. - Run migrations before opening package resources or public routes.
- Review package configuration before production-like verification:
config/capell-password-policy.php,Capell\PasswordPolicy\Settings\PasswordPolicySettings.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Likely cause | Check | Fix |
|---|---|---|---|
| Package health check reports a problem | Package configuration or runtime dependencies are not ready | Run php artisan capell:password-policy:doctor | Follow the reported checks, then rerun the doctor command |
| Package surface is missing after install | Provider or manifest is not loaded | Confirm capell.json, package composer.json, and provider registration | Reinstall the package, refresh Composer autoload, and clear host caches |
| Admin screen or command fails on missing table | Package migrations have not run | Check the tables listed in Data Model | Run host migrations and rerun the focused package test |
Quick Start
Section titled “Quick Start”- Install the package:
composer require capell-app/password-policy. - Open the package admin surface at
/admin/password-policy/settingsand confirm Password Policy is available.
Next Steps
Section titled “Next Steps”- Package docs
- Overview
- Admin guide
- Configuration files:
config/capell-password-policy.php. - Troubleshooting
- Screenshot contract
- Marketplace assets
- Capell content language plan
- Capell documentation design system
- Capell and package ERD notes
- Related packages: Access Gate, Diagnostics, Login Audit, Privacy Center.