{"id":17723583,"url":"https://github.com/doriantaylor/p5-app-oauth-authenticator","last_synced_at":"2025-06-16T16:11:08.851Z","repository":{"id":142094171,"uuid":"119457100","full_name":"doriantaylor/p5-app-oauth-authenticator","owner":"doriantaylor","description":"Stand-alone PSGI/FastCGI authenticator against multiple OAuth(2) providers","archived":false,"fork":false,"pushed_at":"2019-02-12T01:27:07.000Z","size":48,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-03-12T10:11:35.689Z","etag":null,"topics":["authentication","fastcgi","oauth","oauth2","psgi"],"latest_commit_sha":null,"homepage":null,"language":"Perl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/doriantaylor.png","metadata":{"files":{"readme":"README.md","changelog":"Changes","contributing":null,"funding":null,"license":"LICENSE","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":"2018-01-29T23:51:47.000Z","updated_at":"2019-02-12T01:27:09.000Z","dependencies_parsed_at":null,"dependency_job_id":"30d7604a-93f7-44c2-a082-efbe46bd315b","html_url":"https://github.com/doriantaylor/p5-app-oauth-authenticator","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"purl":"pkg:github/doriantaylor/p5-app-oauth-authenticator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doriantaylor%2Fp5-app-oauth-authenticator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doriantaylor%2Fp5-app-oauth-authenticator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doriantaylor%2Fp5-app-oauth-authenticator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doriantaylor%2Fp5-app-oauth-authenticator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/doriantaylor","download_url":"https://codeload.github.com/doriantaylor/p5-app-oauth-authenticator/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doriantaylor%2Fp5-app-oauth-authenticator/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260194771,"owners_count":22972639,"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":["authentication","fastcgi","oauth","oauth2","psgi"],"created_at":"2024-10-25T15:43:23.998Z","updated_at":"2025-06-16T16:11:08.821Z","avatar_url":"https://github.com/doriantaylor.png","language":"Perl","funding_links":[],"categories":[],"sub_categories":[],"readme":"# App::OAuth::Authenticator - A (standalone) OAuth(2) authenticator\n\n## Synopsis\n\n    # on the shell\n\n    $ plackup -e 'App::OAuth::Authenticator-\u003econfig(\"auth.conf\")-\u003eto_app'\n\n## Description\n\nThis module is intended to be a pluggable bus for authenticating\npeople via OAuth(2) against an existing database. In other words, we\nuse information found in th API responses of the user's chosen\nprovider to match them against a set of known people and facts about\nthem. If a principal (a conventional term for \"entity that accesses a\ncomputer system\") is found, the system associates that principal with\nan ordinary HTTP cookie, which is subsequently retrieved through an\nauthentication handler. The handler uses the cookie to look up the\nprincipal, and sets the Web server request object's `r-\u003euser` field,\nand thus the `REMOTE_USER` environment variable, with the principal's\nidentifier. This can be used subsequently in authorization handlers\nand likewise in the application layer, providing a vendor-neutral—and\neven protocol-neutral—interface for access control on the Web.\n\nThe ultimate goal of this module is therefore to demonstrate a second\nnatural cleavage plane in Web development: We know about separating\ncontent from presentation, hopefully this will demonstrate the value\nin separating access control from the other two.\n\n## License \u0026 Copyright\n\nCopyright 2018 Dorian Taylor.\n\nLicensed under the Apache License, Version 2.0 (the \"License\"); you\nmay not use this file except in compliance with the License. You may\nobtain a copy of the License\nat http://www.apache.org/licenses/LICENSE-2.0 .\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied.  See the License for the specific language governing\npermissions and limitations under the License.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoriantaylor%2Fp5-app-oauth-authenticator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdoriantaylor%2Fp5-app-oauth-authenticator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoriantaylor%2Fp5-app-oauth-authenticator/lists"}