{"id":23900851,"url":"https://github.com/born05/craft-enforcepassword","last_synced_at":"2025-04-10T20:55:21.112Z","repository":{"id":62496143,"uuid":"166391260","full_name":"born05/craft-enforcepassword","owner":"born05","description":"Craft plugin for incrementally enforced new and secure passwords.","archived":false,"fork":false,"pushed_at":"2024-03-29T15:09:20.000Z","size":41,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":6,"default_branch":"craft4","last_synced_at":"2025-03-24T18:46:04.202Z","etag":null,"topics":["craftcms","craftcms-plugin","security"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/born05.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-01-18T10:57:57.000Z","updated_at":"2024-12-09T15:12:18.000Z","dependencies_parsed_at":"2025-01-04T20:49:56.609Z","dependency_job_id":null,"html_url":"https://github.com/born05/craft-enforcepassword","commit_stats":{"total_commits":29,"total_committers":2,"mean_commits":14.5,"dds":"0.13793103448275867","last_synced_commit":"244ef0c220ca3f86b3d1ab403887caef49c3245f"},"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/born05%2Fcraft-enforcepassword","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/born05%2Fcraft-enforcepassword/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/born05%2Fcraft-enforcepassword/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/born05%2Fcraft-enforcepassword/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/born05","download_url":"https://codeload.github.com/born05/craft-enforcepassword/tar.gz/refs/heads/craft4","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248298154,"owners_count":21080313,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["craftcms","craftcms-plugin","security"],"created_at":"2025-01-04T20:39:48.619Z","updated_at":"2025-04-10T20:55:21.092Z","avatar_url":"https://github.com/born05.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Craft Enforce Password plugin\n\nIncrementally enforces a new and secure password not matching the last 5 passwords.\nStores password history in a database table.\n\nValidates passwords by the following:\n- Minimal length\n- Maximum length\n- At least 1 uppercase character\n- At least 1 lowercase character\n- At least 1 digit\n- At least 1 symbol\n- Can't match username or email\n- Different from previous passwords\n\n## Config\n\nCreate a `config/enforce-password.php` with the following contents:\n\n```php\n\u003c?php\n\nreturn [\n    'passwordMinLength'     =\u003e 16,\n    'passwordMaxLength'     =\u003e 255,\n    'passwordHistoryLimit'  =\u003e 5, // Number of passwords kept in history, set to 0 to disable this feature\n    'passwordMaxLifetime'   =\u003e 90, // Number of days a password can be used\n    'enforceUppercase'      =\u003e true, // Min 1 uppercase letter \n    'enforceLowercase'      =\u003e true, // Min 1 lowercase letter\n    'enforceDigit'          =\u003e true, // Min 1 digit\n    'enforceSymbol'         =\u003e true, // Min 1 symbol\n];\n```\n\n## Commandline usage\n\n```sh\ncraft enforce-password/default\n```\n\n## License\n\nCopyright © [Born05](https://www.born05.com/)\n\nSee [license](https://github.com/born05/craft-enforcepassword/blob/master/LICENSE.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fborn05%2Fcraft-enforcepassword","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fborn05%2Fcraft-enforcepassword","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fborn05%2Fcraft-enforcepassword/lists"}