You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

564 lines
17 KiB
PHTML

<?php
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/**
* Plugin OIDC/oAuth client class.
*
* @package OpenID_Connect_Generic
* @category Authentication
* @author Jonathan Daggerhart <jonathan@daggerhart.com>
* @copyright 2015-2020 daggerhart
* @license http://www.gnu.org/licenses/gpl-2.0.txt GPL-2.0+
*/
/**
* OpenID_Connect_Generic_Client class.
*
* Plugin OIDC/oAuth client class.
*
* @package OpenID_Connect_Generic
* @category Authentication
*/
class OpenID_Connect_Generic_Client {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/**
* The OIDC/oAuth client ID.
*
* @see OpenID_Connect_Generic_Option_Settings::client_id
*
* @var string
*/
private $client_id;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/**
* The OIDC/oAuth client secret.
*
* @see OpenID_Connect_Generic_Option_Settings::client_secret
*
* @var string
*/
private $client_secret;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/**
* The OIDC/oAuth scopes.
*
* @see OpenID_Connect_Generic_Option_Settings::scope
*
* @var string
*/
private $scope;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/**
* The OIDC/oAuth authorization endpoint URL.
*
* @see OpenID_Connect_Generic_Option_Settings::endpoint_login
*
* @var string
*/
private $endpoint_login;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/**
* The OIDC/oAuth User Information endpoint URL.
*
* @see OpenID_Connect_Generic_Option_Settings::endpoint_userinfo
*
* @var string
*/
private $endpoint_userinfo;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/**
* The OIDC/oAuth token validation endpoint URL.
*
* @see OpenID_Connect_Generic_Option_Settings::endpoint_token
*
* @var string
*/
private $endpoint_token;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/**
* The login flow "ajax" endpoint URI.
*
* @see OpenID_Connect_Generic_Option_Settings::redirect_uri
*
* @var string
*/
private $redirect_uri;
3.9.0 Feature & Bugfix Release (#394) * Update openid-connect-generic-client-wrapper.php Add openid-connect-generic-session-expired action before to allow consumers to act on the refresh token expiration * Implement singleton pattern for OpenID_Connect_Generic class This will allow developers who want to be able to call methods belonging to this class (or methods belonging to any of this class's properties) to do so, without having to create a new instance, and therefore repeat all the bootstrapping. Instead, they will just be able to call OpenID_Connect_Generic::instance() to retrieve the singleton. * Add functions.php file for global functions These will act as wrappers for methods you would otherwise call by getting the Open_ID_Connect_Generic singleton and then calling the appropriate method. * Make client_wrapper a public property This allows us to access client_wrapper methods via the singleton of Open_ID_Connect_Generic. * Support aggregated claims (#254) * use tabs instead of spaces * added define config with OIDC_LOGIN_TYPE and OIDC_CLIENT_SCOPE scopes are needed when logging in so this is a no-brainer and this can be deployed using deployments login type can be defined here when you want to enforce SSO from the deployment. * More define-driven settings * fix linting * fix code analysis errors * fix more linting, add more exception handling * Added the OIDC_CREATE_IF_DOES_NOT_EXIST define * Added documentation and phpstan defines * Added data in environment_settings * Fixes QS not being added to the redirect URL * fix #178 Update last-token-response user meta after refresh * add a basic method to refresh user claim outside of this plugin * fix return doc * add a basic method to refresh user claim outside of this plugin * fix return doc * Revert "fix return doc" This reverts commit e19d6f3ffd3f7684dd843408ec911c4b6d614328. * Revert "add a basic method to refresh user claim outside of this plugin" This reverts commit 1a5fa9b045c7b50a17dc3cfd5482fc33be9aa6ee. * Initial Codepsaces Development Environment * Adds Gitpod Support Alongside Codespaces Support * Only load admin CSS when showing settings page * Updates Development Environment for PHP & WordPress - Updates local development environment to use a Composer Docker container. - Updates VS Code/Codespaces devcontainer to bullseye/PHP 7.4. - Updates VS Code/Codespaces devcontainer & GitPod starting commands. - Updates build environment to use PHP 7.4 & Composer 2. - Updates build environment Composer packages. - Updates Composer WordPress install to use the johnpbloch packages. * Fixes Running PHPStan in Docker & Static Analysis Issues - Updates the PHP/Composer Docker image memory limit to allow PHPStand to run properly. - Fixes static analysis issues reported by PHPStan. - Updates PHPStan & extensions to latest versions. - Updates PHPStan configuration for latest version. * Update GitHub Actions for PHP/Composer/WordPress Changes - Updates GitHub Actions to use Composer v2. - Updates GitHub Actions to use PHP 7.4. - Updates GitHub Actions to use WordPress 5.7 as stable. * Updates WordPress Version Composer Dependencies - Updates the installed WordPress version to 5.7. - Updates the installed WordPress stubs version to 5.7. * Fixes GitHub Actions for Composer 2 Changes * Fixes GitHub Actions for PHP Unit testing - Changes PHPUnit switch to dev-master for PHP 8.0. * Updates GrumPHP & GrumPHP Unit Testing PHP 8 Support - Updates GrumPHP to a newer version. - Updates Unit Testing PHP 8.0 to use GrumPHP dev-master. * Updates Unit Testing for PHPUnit Testing w/ PHP8 * Updates Unit Testing Composer Updates to Run w/ PHP 8 * Updates Composer PHPUnit for PHP 8 Override * Multisite/network configurations use your current blog as the default when using the WP_User_Query which means if a user already exists, from a different blog, you will not find them, but also can't create a new account because they already exist. This overrides your current blog and will search 'all' * CodeSpaces Dev Container Updates & Composer Updates * Updating GrumPHP & Composer Dependencies * Updates NPM Modules & Changes Plugin Instance Visibility * Updates @wordpress/scripts & ~wordpress/env to the latest versions. * Changes the visibility of the plugin class instance attribute. * Bump tar from 4.4.13 to 4.4.19 Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.19. - [Release notes](https://github.com/npm/node-tar/releases) - [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.19) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump hosted-git-info from 2.8.8 to 2.8.9 Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9. - [Release notes](https://github.com/npm/hosted-git-info/releases) - [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md) - [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9) --- updated-dependencies: - dependency-name: hosted-git-info dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump lodash from 4.17.19 to 4.17.21 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.19 to 4.17.21. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.19...4.17.21) --- updated-dependencies: - dependency-name: lodash dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ssri from 6.0.1 to 6.0.2 Bumps [ssri](https://github.com/npm/ssri) from 6.0.1 to 6.0.2. - [Release notes](https://github.com/npm/ssri/releases) - [Changelog](https://github.com/npm/ssri/blob/v6.0.2/CHANGELOG.md) - [Commits](https://github.com/npm/ssri/compare/v6.0.1...v6.0.2) --- updated-dependencies: - dependency-name: ssri dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump path-parse from 1.0.6 to 1.0.7 Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7. - [Release notes](https://github.com/jbgutierrez/path-parse/releases) - [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7) --- updated-dependencies: - dependency-name: path-parse dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ws from 6.2.1 to 6.2.2 Bumps [ws](https://github.com/websockets/ws) from 6.2.1 to 6.2.2. - [Release notes](https://github.com/websockets/ws/releases) - [Commits](https://github.com/websockets/ws/compare/6.2.1...6.2.2) --- updated-dependencies: - dependency-name: ws dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * coding standards issues * Fix wordpress coding standards issues * Redone acr-values-support acr-values support * Fix code-standard errors Fixed reported code-standard issues found * Update openid-connect-generic-client.php fixing code-indentment after report * Update openid-connect-generic-client-wrapper.php fix for reported code-standard errors * Update openid-connect-generic-settings-page.php Fixing code-standard reported errors * Update openid-connect-generic-client.php re-aligned line 225 ( indentment error) * Refactors new ACR Handling Code for Better Code Quality * Fixes some incorrect ACR handling code that incorrectly added the ACR when it wasn't set. * Adds missing settings disable handling when ACR constant is set. * Refactors code for simplicity and code quality. * Fixes #243 Nickname from Claim Regression * Fixes the regression caused by the code changes in 3.8.0 which resulted in not performing proper fallbacks for missing cliams such as the nickname. * Fixes invalid Node version in NVM configuration. * Fixes Indentity Mapping & Creation Issues * Fixes issues with improperly handling combinations of the "Link Existing Users", "Create user if does not exist", and "Identify with User Name" configuration options. * Addresses issues related to case sensitivity of usernames when attempting to "Link Existing Users". * Fixes typos and formatting on the plugin Settings screen. * Dependabot Security Related Fixes & Refactoring * Update to require Node v14 & NPM 6.14.15. * Updates to Grunt 1.4.1. * Forces resolution of dependencies for security fixes. * Update @wordpress packages to their latest versions. * Refactors the NPM & Composer scripts. * Updates WP to Latest Dev Standard for Local Development * Refactors Callable Refresh User Claims Function & Action * Moves `openid-connect-generic-update-user-using-current-claim` action to within update user metadata during login. * Adds a new publicly callable method that uses the plugin singleton. * Prep for 3.9.0 Release Co-authored-by: jkouris <35877237+jkouris@users.noreply.github.com> Co-authored-by: Rob Skilling <rob@dxw.com> Co-authored-by: Martin Schanzenbach <schanzen@gnunet.org> Co-authored-by: Chloé "Matcha" Desoutter <chloe.desoutter@bluenove.com> Co-authored-by: Martin <schanzen@users.noreply.github.com> Co-authored-by: Sylwester Kardziejonek <sylwester.kardziejonek@gmail.com> Co-authored-by: Nicolas Dhers <nicolas@rkcreation.fr> Co-authored-by: Tom McCaffery <tom@weareadjacent.com> Co-authored-by: Dan <dan@testinnovators.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: John Kouris <jkouris@everyincome.com> Co-authored-by: Glowsome <administrator@comsolve.nl>
3 years ago
/**
* The specifically requested authentication contract at the IDP
*
* @see OpenID_Connect_Generic_Option_Settings::acr_values
*
* @var string
*/
private $acr_values;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/**
* The state time limit. States are only valid for 3 minutes.
*
* @see OpenID_Connect_Generic_Option_Settings::state_time_limit
*
* @var int
*/
private $state_time_limit = 180;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/**
* The logger object instance.
*
* @var OpenID_Connect_Generic_Option_Logger
*/
private $logger;
/**
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* Client constructor.
*
* @param string $client_id @see OpenID_Connect_Generic_Option_Settings::client_id for description.
* @param string $client_secret @see OpenID_Connect_Generic_Option_Settings::client_secret for description.
* @param string $scope @see OpenID_Connect_Generic_Option_Settings::scope for description.
* @param string $endpoint_login @see OpenID_Connect_Generic_Option_Settings::endpoint_login for description.
* @param string $endpoint_userinfo @see OpenID_Connect_Generic_Option_Settings::endpoint_userinfo for description.
* @param string $endpoint_token @see OpenID_Connect_Generic_Option_Settings::endpoint_token for description.
* @param string $redirect_uri @see OpenID_Connect_Generic_Option_Settings::redirect_uri for description.
3.9.0 Feature & Bugfix Release (#394) * Update openid-connect-generic-client-wrapper.php Add openid-connect-generic-session-expired action before to allow consumers to act on the refresh token expiration * Implement singleton pattern for OpenID_Connect_Generic class This will allow developers who want to be able to call methods belonging to this class (or methods belonging to any of this class's properties) to do so, without having to create a new instance, and therefore repeat all the bootstrapping. Instead, they will just be able to call OpenID_Connect_Generic::instance() to retrieve the singleton. * Add functions.php file for global functions These will act as wrappers for methods you would otherwise call by getting the Open_ID_Connect_Generic singleton and then calling the appropriate method. * Make client_wrapper a public property This allows us to access client_wrapper methods via the singleton of Open_ID_Connect_Generic. * Support aggregated claims (#254) * use tabs instead of spaces * added define config with OIDC_LOGIN_TYPE and OIDC_CLIENT_SCOPE scopes are needed when logging in so this is a no-brainer and this can be deployed using deployments login type can be defined here when you want to enforce SSO from the deployment. * More define-driven settings * fix linting * fix code analysis errors * fix more linting, add more exception handling * Added the OIDC_CREATE_IF_DOES_NOT_EXIST define * Added documentation and phpstan defines * Added data in environment_settings * Fixes QS not being added to the redirect URL * fix #178 Update last-token-response user meta after refresh * add a basic method to refresh user claim outside of this plugin * fix return doc * add a basic method to refresh user claim outside of this plugin * fix return doc * Revert "fix return doc" This reverts commit e19d6f3ffd3f7684dd843408ec911c4b6d614328. * Revert "add a basic method to refresh user claim outside of this plugin" This reverts commit 1a5fa9b045c7b50a17dc3cfd5482fc33be9aa6ee. * Initial Codepsaces Development Environment * Adds Gitpod Support Alongside Codespaces Support * Only load admin CSS when showing settings page * Updates Development Environment for PHP & WordPress - Updates local development environment to use a Composer Docker container. - Updates VS Code/Codespaces devcontainer to bullseye/PHP 7.4. - Updates VS Code/Codespaces devcontainer & GitPod starting commands. - Updates build environment to use PHP 7.4 & Composer 2. - Updates build environment Composer packages. - Updates Composer WordPress install to use the johnpbloch packages. * Fixes Running PHPStan in Docker & Static Analysis Issues - Updates the PHP/Composer Docker image memory limit to allow PHPStand to run properly. - Fixes static analysis issues reported by PHPStan. - Updates PHPStan & extensions to latest versions. - Updates PHPStan configuration for latest version. * Update GitHub Actions for PHP/Composer/WordPress Changes - Updates GitHub Actions to use Composer v2. - Updates GitHub Actions to use PHP 7.4. - Updates GitHub Actions to use WordPress 5.7 as stable. * Updates WordPress Version Composer Dependencies - Updates the installed WordPress version to 5.7. - Updates the installed WordPress stubs version to 5.7. * Fixes GitHub Actions for Composer 2 Changes * Fixes GitHub Actions for PHP Unit testing - Changes PHPUnit switch to dev-master for PHP 8.0. * Updates GrumPHP & GrumPHP Unit Testing PHP 8 Support - Updates GrumPHP to a newer version. - Updates Unit Testing PHP 8.0 to use GrumPHP dev-master. * Updates Unit Testing for PHPUnit Testing w/ PHP8 * Updates Unit Testing Composer Updates to Run w/ PHP 8 * Updates Composer PHPUnit for PHP 8 Override * Multisite/network configurations use your current blog as the default when using the WP_User_Query which means if a user already exists, from a different blog, you will not find them, but also can't create a new account because they already exist. This overrides your current blog and will search 'all' * CodeSpaces Dev Container Updates & Composer Updates * Updating GrumPHP & Composer Dependencies * Updates NPM Modules & Changes Plugin Instance Visibility * Updates @wordpress/scripts & ~wordpress/env to the latest versions. * Changes the visibility of the plugin class instance attribute. * Bump tar from 4.4.13 to 4.4.19 Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.19. - [Release notes](https://github.com/npm/node-tar/releases) - [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.19) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump hosted-git-info from 2.8.8 to 2.8.9 Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9. - [Release notes](https://github.com/npm/hosted-git-info/releases) - [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md) - [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9) --- updated-dependencies: - dependency-name: hosted-git-info dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump lodash from 4.17.19 to 4.17.21 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.19 to 4.17.21. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.19...4.17.21) --- updated-dependencies: - dependency-name: lodash dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ssri from 6.0.1 to 6.0.2 Bumps [ssri](https://github.com/npm/ssri) from 6.0.1 to 6.0.2. - [Release notes](https://github.com/npm/ssri/releases) - [Changelog](https://github.com/npm/ssri/blob/v6.0.2/CHANGELOG.md) - [Commits](https://github.com/npm/ssri/compare/v6.0.1...v6.0.2) --- updated-dependencies: - dependency-name: ssri dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump path-parse from 1.0.6 to 1.0.7 Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7. - [Release notes](https://github.com/jbgutierrez/path-parse/releases) - [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7) --- updated-dependencies: - dependency-name: path-parse dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ws from 6.2.1 to 6.2.2 Bumps [ws](https://github.com/websockets/ws) from 6.2.1 to 6.2.2. - [Release notes](https://github.com/websockets/ws/releases) - [Commits](https://github.com/websockets/ws/compare/6.2.1...6.2.2) --- updated-dependencies: - dependency-name: ws dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * coding standards issues * Fix wordpress coding standards issues * Redone acr-values-support acr-values support * Fix code-standard errors Fixed reported code-standard issues found * Update openid-connect-generic-client.php fixing code-indentment after report * Update openid-connect-generic-client-wrapper.php fix for reported code-standard errors * Update openid-connect-generic-settings-page.php Fixing code-standard reported errors * Update openid-connect-generic-client.php re-aligned line 225 ( indentment error) * Refactors new ACR Handling Code for Better Code Quality * Fixes some incorrect ACR handling code that incorrectly added the ACR when it wasn't set. * Adds missing settings disable handling when ACR constant is set. * Refactors code for simplicity and code quality. * Fixes #243 Nickname from Claim Regression * Fixes the regression caused by the code changes in 3.8.0 which resulted in not performing proper fallbacks for missing cliams such as the nickname. * Fixes invalid Node version in NVM configuration. * Fixes Indentity Mapping & Creation Issues * Fixes issues with improperly handling combinations of the "Link Existing Users", "Create user if does not exist", and "Identify with User Name" configuration options. * Addresses issues related to case sensitivity of usernames when attempting to "Link Existing Users". * Fixes typos and formatting on the plugin Settings screen. * Dependabot Security Related Fixes & Refactoring * Update to require Node v14 & NPM 6.14.15. * Updates to Grunt 1.4.1. * Forces resolution of dependencies for security fixes. * Update @wordpress packages to their latest versions. * Refactors the NPM & Composer scripts. * Updates WP to Latest Dev Standard for Local Development * Refactors Callable Refresh User Claims Function & Action * Moves `openid-connect-generic-update-user-using-current-claim` action to within update user metadata during login. * Adds a new publicly callable method that uses the plugin singleton. * Prep for 3.9.0 Release Co-authored-by: jkouris <35877237+jkouris@users.noreply.github.com> Co-authored-by: Rob Skilling <rob@dxw.com> Co-authored-by: Martin Schanzenbach <schanzen@gnunet.org> Co-authored-by: Chloé "Matcha" Desoutter <chloe.desoutter@bluenove.com> Co-authored-by: Martin <schanzen@users.noreply.github.com> Co-authored-by: Sylwester Kardziejonek <sylwester.kardziejonek@gmail.com> Co-authored-by: Nicolas Dhers <nicolas@rkcreation.fr> Co-authored-by: Tom McCaffery <tom@weareadjacent.com> Co-authored-by: Dan <dan@testinnovators.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: John Kouris <jkouris@everyincome.com> Co-authored-by: Glowsome <administrator@comsolve.nl>
3 years ago
* @param string $acr_values @see OpenID_Connect_Generic_Option_Settings::acr_values for description.
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param int $state_time_limit @see OpenID_Connect_Generic_Option_Settings::state_time_limit for description.
* @param OpenID_Connect_Generic_Option_Logger $logger The plugin logging object instance.
*/
3.9.0 Feature & Bugfix Release (#394) * Update openid-connect-generic-client-wrapper.php Add openid-connect-generic-session-expired action before to allow consumers to act on the refresh token expiration * Implement singleton pattern for OpenID_Connect_Generic class This will allow developers who want to be able to call methods belonging to this class (or methods belonging to any of this class's properties) to do so, without having to create a new instance, and therefore repeat all the bootstrapping. Instead, they will just be able to call OpenID_Connect_Generic::instance() to retrieve the singleton. * Add functions.php file for global functions These will act as wrappers for methods you would otherwise call by getting the Open_ID_Connect_Generic singleton and then calling the appropriate method. * Make client_wrapper a public property This allows us to access client_wrapper methods via the singleton of Open_ID_Connect_Generic. * Support aggregated claims (#254) * use tabs instead of spaces * added define config with OIDC_LOGIN_TYPE and OIDC_CLIENT_SCOPE scopes are needed when logging in so this is a no-brainer and this can be deployed using deployments login type can be defined here when you want to enforce SSO from the deployment. * More define-driven settings * fix linting * fix code analysis errors * fix more linting, add more exception handling * Added the OIDC_CREATE_IF_DOES_NOT_EXIST define * Added documentation and phpstan defines * Added data in environment_settings * Fixes QS not being added to the redirect URL * fix #178 Update last-token-response user meta after refresh * add a basic method to refresh user claim outside of this plugin * fix return doc * add a basic method to refresh user claim outside of this plugin * fix return doc * Revert "fix return doc" This reverts commit e19d6f3ffd3f7684dd843408ec911c4b6d614328. * Revert "add a basic method to refresh user claim outside of this plugin" This reverts commit 1a5fa9b045c7b50a17dc3cfd5482fc33be9aa6ee. * Initial Codepsaces Development Environment * Adds Gitpod Support Alongside Codespaces Support * Only load admin CSS when showing settings page * Updates Development Environment for PHP & WordPress - Updates local development environment to use a Composer Docker container. - Updates VS Code/Codespaces devcontainer to bullseye/PHP 7.4. - Updates VS Code/Codespaces devcontainer & GitPod starting commands. - Updates build environment to use PHP 7.4 & Composer 2. - Updates build environment Composer packages. - Updates Composer WordPress install to use the johnpbloch packages. * Fixes Running PHPStan in Docker & Static Analysis Issues - Updates the PHP/Composer Docker image memory limit to allow PHPStand to run properly. - Fixes static analysis issues reported by PHPStan. - Updates PHPStan & extensions to latest versions. - Updates PHPStan configuration for latest version. * Update GitHub Actions for PHP/Composer/WordPress Changes - Updates GitHub Actions to use Composer v2. - Updates GitHub Actions to use PHP 7.4. - Updates GitHub Actions to use WordPress 5.7 as stable. * Updates WordPress Version Composer Dependencies - Updates the installed WordPress version to 5.7. - Updates the installed WordPress stubs version to 5.7. * Fixes GitHub Actions for Composer 2 Changes * Fixes GitHub Actions for PHP Unit testing - Changes PHPUnit switch to dev-master for PHP 8.0. * Updates GrumPHP & GrumPHP Unit Testing PHP 8 Support - Updates GrumPHP to a newer version. - Updates Unit Testing PHP 8.0 to use GrumPHP dev-master. * Updates Unit Testing for PHPUnit Testing w/ PHP8 * Updates Unit Testing Composer Updates to Run w/ PHP 8 * Updates Composer PHPUnit for PHP 8 Override * Multisite/network configurations use your current blog as the default when using the WP_User_Query which means if a user already exists, from a different blog, you will not find them, but also can't create a new account because they already exist. This overrides your current blog and will search 'all' * CodeSpaces Dev Container Updates & Composer Updates * Updating GrumPHP & Composer Dependencies * Updates NPM Modules & Changes Plugin Instance Visibility * Updates @wordpress/scripts & ~wordpress/env to the latest versions. * Changes the visibility of the plugin class instance attribute. * Bump tar from 4.4.13 to 4.4.19 Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.19. - [Release notes](https://github.com/npm/node-tar/releases) - [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.19) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump hosted-git-info from 2.8.8 to 2.8.9 Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9. - [Release notes](https://github.com/npm/hosted-git-info/releases) - [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md) - [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9) --- updated-dependencies: - dependency-name: hosted-git-info dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump lodash from 4.17.19 to 4.17.21 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.19 to 4.17.21. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.19...4.17.21) --- updated-dependencies: - dependency-name: lodash dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ssri from 6.0.1 to 6.0.2 Bumps [ssri](https://github.com/npm/ssri) from 6.0.1 to 6.0.2. - [Release notes](https://github.com/npm/ssri/releases) - [Changelog](https://github.com/npm/ssri/blob/v6.0.2/CHANGELOG.md) - [Commits](https://github.com/npm/ssri/compare/v6.0.1...v6.0.2) --- updated-dependencies: - dependency-name: ssri dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump path-parse from 1.0.6 to 1.0.7 Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7. - [Release notes](https://github.com/jbgutierrez/path-parse/releases) - [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7) --- updated-dependencies: - dependency-name: path-parse dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ws from 6.2.1 to 6.2.2 Bumps [ws](https://github.com/websockets/ws) from 6.2.1 to 6.2.2. - [Release notes](https://github.com/websockets/ws/releases) - [Commits](https://github.com/websockets/ws/compare/6.2.1...6.2.2) --- updated-dependencies: - dependency-name: ws dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * coding standards issues * Fix wordpress coding standards issues * Redone acr-values-support acr-values support * Fix code-standard errors Fixed reported code-standard issues found * Update openid-connect-generic-client.php fixing code-indentment after report * Update openid-connect-generic-client-wrapper.php fix for reported code-standard errors * Update openid-connect-generic-settings-page.php Fixing code-standard reported errors * Update openid-connect-generic-client.php re-aligned line 225 ( indentment error) * Refactors new ACR Handling Code for Better Code Quality * Fixes some incorrect ACR handling code that incorrectly added the ACR when it wasn't set. * Adds missing settings disable handling when ACR constant is set. * Refactors code for simplicity and code quality. * Fixes #243 Nickname from Claim Regression * Fixes the regression caused by the code changes in 3.8.0 which resulted in not performing proper fallbacks for missing cliams such as the nickname. * Fixes invalid Node version in NVM configuration. * Fixes Indentity Mapping & Creation Issues * Fixes issues with improperly handling combinations of the "Link Existing Users", "Create user if does not exist", and "Identify with User Name" configuration options. * Addresses issues related to case sensitivity of usernames when attempting to "Link Existing Users". * Fixes typos and formatting on the plugin Settings screen. * Dependabot Security Related Fixes & Refactoring * Update to require Node v14 & NPM 6.14.15. * Updates to Grunt 1.4.1. * Forces resolution of dependencies for security fixes. * Update @wordpress packages to their latest versions. * Refactors the NPM & Composer scripts. * Updates WP to Latest Dev Standard for Local Development * Refactors Callable Refresh User Claims Function & Action * Moves `openid-connect-generic-update-user-using-current-claim` action to within update user metadata during login. * Adds a new publicly callable method that uses the plugin singleton. * Prep for 3.9.0 Release Co-authored-by: jkouris <35877237+jkouris@users.noreply.github.com> Co-authored-by: Rob Skilling <rob@dxw.com> Co-authored-by: Martin Schanzenbach <schanzen@gnunet.org> Co-authored-by: Chloé "Matcha" Desoutter <chloe.desoutter@bluenove.com> Co-authored-by: Martin <schanzen@users.noreply.github.com> Co-authored-by: Sylwester Kardziejonek <sylwester.kardziejonek@gmail.com> Co-authored-by: Nicolas Dhers <nicolas@rkcreation.fr> Co-authored-by: Tom McCaffery <tom@weareadjacent.com> Co-authored-by: Dan <dan@testinnovators.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: John Kouris <jkouris@everyincome.com> Co-authored-by: Glowsome <administrator@comsolve.nl>
3 years ago
public function __construct( $client_id, $client_secret, $scope, $endpoint_login, $endpoint_userinfo, $endpoint_token, $redirect_uri, $acr_values, $state_time_limit, $logger ) {
$this->client_id = $client_id;
$this->client_secret = $client_secret;
$this->scope = $scope;
$this->endpoint_login = $endpoint_login;
$this->endpoint_userinfo = $endpoint_userinfo;
$this->endpoint_token = $endpoint_token;
$this->redirect_uri = $redirect_uri;
3.9.0 Feature & Bugfix Release (#394) * Update openid-connect-generic-client-wrapper.php Add openid-connect-generic-session-expired action before to allow consumers to act on the refresh token expiration * Implement singleton pattern for OpenID_Connect_Generic class This will allow developers who want to be able to call methods belonging to this class (or methods belonging to any of this class's properties) to do so, without having to create a new instance, and therefore repeat all the bootstrapping. Instead, they will just be able to call OpenID_Connect_Generic::instance() to retrieve the singleton. * Add functions.php file for global functions These will act as wrappers for methods you would otherwise call by getting the Open_ID_Connect_Generic singleton and then calling the appropriate method. * Make client_wrapper a public property This allows us to access client_wrapper methods via the singleton of Open_ID_Connect_Generic. * Support aggregated claims (#254) * use tabs instead of spaces * added define config with OIDC_LOGIN_TYPE and OIDC_CLIENT_SCOPE scopes are needed when logging in so this is a no-brainer and this can be deployed using deployments login type can be defined here when you want to enforce SSO from the deployment. * More define-driven settings * fix linting * fix code analysis errors * fix more linting, add more exception handling * Added the OIDC_CREATE_IF_DOES_NOT_EXIST define * Added documentation and phpstan defines * Added data in environment_settings * Fixes QS not being added to the redirect URL * fix #178 Update last-token-response user meta after refresh * add a basic method to refresh user claim outside of this plugin * fix return doc * add a basic method to refresh user claim outside of this plugin * fix return doc * Revert "fix return doc" This reverts commit e19d6f3ffd3f7684dd843408ec911c4b6d614328. * Revert "add a basic method to refresh user claim outside of this plugin" This reverts commit 1a5fa9b045c7b50a17dc3cfd5482fc33be9aa6ee. * Initial Codepsaces Development Environment * Adds Gitpod Support Alongside Codespaces Support * Only load admin CSS when showing settings page * Updates Development Environment for PHP & WordPress - Updates local development environment to use a Composer Docker container. - Updates VS Code/Codespaces devcontainer to bullseye/PHP 7.4. - Updates VS Code/Codespaces devcontainer & GitPod starting commands. - Updates build environment to use PHP 7.4 & Composer 2. - Updates build environment Composer packages. - Updates Composer WordPress install to use the johnpbloch packages. * Fixes Running PHPStan in Docker & Static Analysis Issues - Updates the PHP/Composer Docker image memory limit to allow PHPStand to run properly. - Fixes static analysis issues reported by PHPStan. - Updates PHPStan & extensions to latest versions. - Updates PHPStan configuration for latest version. * Update GitHub Actions for PHP/Composer/WordPress Changes - Updates GitHub Actions to use Composer v2. - Updates GitHub Actions to use PHP 7.4. - Updates GitHub Actions to use WordPress 5.7 as stable. * Updates WordPress Version Composer Dependencies - Updates the installed WordPress version to 5.7. - Updates the installed WordPress stubs version to 5.7. * Fixes GitHub Actions for Composer 2 Changes * Fixes GitHub Actions for PHP Unit testing - Changes PHPUnit switch to dev-master for PHP 8.0. * Updates GrumPHP & GrumPHP Unit Testing PHP 8 Support - Updates GrumPHP to a newer version. - Updates Unit Testing PHP 8.0 to use GrumPHP dev-master. * Updates Unit Testing for PHPUnit Testing w/ PHP8 * Updates Unit Testing Composer Updates to Run w/ PHP 8 * Updates Composer PHPUnit for PHP 8 Override * Multisite/network configurations use your current blog as the default when using the WP_User_Query which means if a user already exists, from a different blog, you will not find them, but also can't create a new account because they already exist. This overrides your current blog and will search 'all' * CodeSpaces Dev Container Updates & Composer Updates * Updating GrumPHP & Composer Dependencies * Updates NPM Modules & Changes Plugin Instance Visibility * Updates @wordpress/scripts & ~wordpress/env to the latest versions. * Changes the visibility of the plugin class instance attribute. * Bump tar from 4.4.13 to 4.4.19 Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.19. - [Release notes](https://github.com/npm/node-tar/releases) - [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.19) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump hosted-git-info from 2.8.8 to 2.8.9 Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9. - [Release notes](https://github.com/npm/hosted-git-info/releases) - [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md) - [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9) --- updated-dependencies: - dependency-name: hosted-git-info dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump lodash from 4.17.19 to 4.17.21 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.19 to 4.17.21. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.19...4.17.21) --- updated-dependencies: - dependency-name: lodash dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ssri from 6.0.1 to 6.0.2 Bumps [ssri](https://github.com/npm/ssri) from 6.0.1 to 6.0.2. - [Release notes](https://github.com/npm/ssri/releases) - [Changelog](https://github.com/npm/ssri/blob/v6.0.2/CHANGELOG.md) - [Commits](https://github.com/npm/ssri/compare/v6.0.1...v6.0.2) --- updated-dependencies: - dependency-name: ssri dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump path-parse from 1.0.6 to 1.0.7 Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7. - [Release notes](https://github.com/jbgutierrez/path-parse/releases) - [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7) --- updated-dependencies: - dependency-name: path-parse dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ws from 6.2.1 to 6.2.2 Bumps [ws](https://github.com/websockets/ws) from 6.2.1 to 6.2.2. - [Release notes](https://github.com/websockets/ws/releases) - [Commits](https://github.com/websockets/ws/compare/6.2.1...6.2.2) --- updated-dependencies: - dependency-name: ws dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * coding standards issues * Fix wordpress coding standards issues * Redone acr-values-support acr-values support * Fix code-standard errors Fixed reported code-standard issues found * Update openid-connect-generic-client.php fixing code-indentment after report * Update openid-connect-generic-client-wrapper.php fix for reported code-standard errors * Update openid-connect-generic-settings-page.php Fixing code-standard reported errors * Update openid-connect-generic-client.php re-aligned line 225 ( indentment error) * Refactors new ACR Handling Code for Better Code Quality * Fixes some incorrect ACR handling code that incorrectly added the ACR when it wasn't set. * Adds missing settings disable handling when ACR constant is set. * Refactors code for simplicity and code quality. * Fixes #243 Nickname from Claim Regression * Fixes the regression caused by the code changes in 3.8.0 which resulted in not performing proper fallbacks for missing cliams such as the nickname. * Fixes invalid Node version in NVM configuration. * Fixes Indentity Mapping & Creation Issues * Fixes issues with improperly handling combinations of the "Link Existing Users", "Create user if does not exist", and "Identify with User Name" configuration options. * Addresses issues related to case sensitivity of usernames when attempting to "Link Existing Users". * Fixes typos and formatting on the plugin Settings screen. * Dependabot Security Related Fixes & Refactoring * Update to require Node v14 & NPM 6.14.15. * Updates to Grunt 1.4.1. * Forces resolution of dependencies for security fixes. * Update @wordpress packages to their latest versions. * Refactors the NPM & Composer scripts. * Updates WP to Latest Dev Standard for Local Development * Refactors Callable Refresh User Claims Function & Action * Moves `openid-connect-generic-update-user-using-current-claim` action to within update user metadata during login. * Adds a new publicly callable method that uses the plugin singleton. * Prep for 3.9.0 Release Co-authored-by: jkouris <35877237+jkouris@users.noreply.github.com> Co-authored-by: Rob Skilling <rob@dxw.com> Co-authored-by: Martin Schanzenbach <schanzen@gnunet.org> Co-authored-by: Chloé "Matcha" Desoutter <chloe.desoutter@bluenove.com> Co-authored-by: Martin <schanzen@users.noreply.github.com> Co-authored-by: Sylwester Kardziejonek <sylwester.kardziejonek@gmail.com> Co-authored-by: Nicolas Dhers <nicolas@rkcreation.fr> Co-authored-by: Tom McCaffery <tom@weareadjacent.com> Co-authored-by: Dan <dan@testinnovators.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: John Kouris <jkouris@everyincome.com> Co-authored-by: Glowsome <administrator@comsolve.nl>
3 years ago
$this->acr_values = $acr_values;
$this->state_time_limit = $state_time_limit;
$this->logger = $logger;
}
/**
* Provides the configured Redirect URI supplied to the IDP.
*
* @return string
*/
public function get_redirect_uri() {
return $this->redirect_uri;
}
/**
* Provide the configured IDP endpoint login URL.
*
* @return string
*/
public function get_endpoint_login_url() {
return $this->endpoint_login;
}
/**
* Validate the request for login authentication
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param array<string> $request The authentication request results.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @return array<string>|WP_Error
*/
public function validate_authentication_request( $request ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Look for an existing error of some kind.
if ( isset( $request['error'] ) ) {
return new WP_Error( 'unknown-error', 'An unknown error occurred.', $request );
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Make sure we have a legitimate authentication code and valid state.
if ( ! isset( $request['code'] ) ) {
return new WP_Error( 'no-code', 'No authentication code present in the request.', $request );
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Check the client request state.
if ( ! isset( $request['state'] ) ) {
do_action( 'openid-connect-generic-no-state-provided' );
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
return new WP_Error( 'missing-state', __( 'Missing state.', 'daggerhart-openid-connect-generic' ), $request );
}
if ( ! $this->check_state( $request['state'] ) ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
return new WP_Error( 'invalid-state', __( 'Invalid state.', 'daggerhart-openid-connect-generic' ), $request );
}
return $request;
}
/**
* Get the authorization code from the request
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param array<string>|WP_Error $request The authentication request results.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @return string|WP_Error
*/
public function get_authentication_code( $request ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
if ( ! isset( $request['code'] ) ) {
return new WP_Error( 'missing-authentication-code', __( 'Missing authentication code.', 'daggerhart-openid-connect-generic' ), $request );
}
return $request['code'];
}
/**
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* Using the authorization_code, request an authentication token from the IDP.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param string|WP_Error $code The authorization code.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @return array<mixed>|WP_Error
*/
public function request_authentication_token( $code ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Add Host header - required for when the openid-connect endpoint is behind a reverse-proxy.
$parsed_url = parse_url( $this->endpoint_token );
$host = $parsed_url['host'];
$request = array(
'body' => array(
'code' => $code,
'client_id' => $this->client_id,
'client_secret' => $this->client_secret,
'redirect_uri' => $this->redirect_uri,
'grant_type' => 'authorization_code',
'scope' => $this->scope,
),
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
'headers' => array( 'Host' => $host ),
);
3.9.0 Feature & Bugfix Release (#394) * Update openid-connect-generic-client-wrapper.php Add openid-connect-generic-session-expired action before to allow consumers to act on the refresh token expiration * Implement singleton pattern for OpenID_Connect_Generic class This will allow developers who want to be able to call methods belonging to this class (or methods belonging to any of this class's properties) to do so, without having to create a new instance, and therefore repeat all the bootstrapping. Instead, they will just be able to call OpenID_Connect_Generic::instance() to retrieve the singleton. * Add functions.php file for global functions These will act as wrappers for methods you would otherwise call by getting the Open_ID_Connect_Generic singleton and then calling the appropriate method. * Make client_wrapper a public property This allows us to access client_wrapper methods via the singleton of Open_ID_Connect_Generic. * Support aggregated claims (#254) * use tabs instead of spaces * added define config with OIDC_LOGIN_TYPE and OIDC_CLIENT_SCOPE scopes are needed when logging in so this is a no-brainer and this can be deployed using deployments login type can be defined here when you want to enforce SSO from the deployment. * More define-driven settings * fix linting * fix code analysis errors * fix more linting, add more exception handling * Added the OIDC_CREATE_IF_DOES_NOT_EXIST define * Added documentation and phpstan defines * Added data in environment_settings * Fixes QS not being added to the redirect URL * fix #178 Update last-token-response user meta after refresh * add a basic method to refresh user claim outside of this plugin * fix return doc * add a basic method to refresh user claim outside of this plugin * fix return doc * Revert "fix return doc" This reverts commit e19d6f3ffd3f7684dd843408ec911c4b6d614328. * Revert "add a basic method to refresh user claim outside of this plugin" This reverts commit 1a5fa9b045c7b50a17dc3cfd5482fc33be9aa6ee. * Initial Codepsaces Development Environment * Adds Gitpod Support Alongside Codespaces Support * Only load admin CSS when showing settings page * Updates Development Environment for PHP & WordPress - Updates local development environment to use a Composer Docker container. - Updates VS Code/Codespaces devcontainer to bullseye/PHP 7.4. - Updates VS Code/Codespaces devcontainer & GitPod starting commands. - Updates build environment to use PHP 7.4 & Composer 2. - Updates build environment Composer packages. - Updates Composer WordPress install to use the johnpbloch packages. * Fixes Running PHPStan in Docker & Static Analysis Issues - Updates the PHP/Composer Docker image memory limit to allow PHPStand to run properly. - Fixes static analysis issues reported by PHPStan. - Updates PHPStan & extensions to latest versions. - Updates PHPStan configuration for latest version. * Update GitHub Actions for PHP/Composer/WordPress Changes - Updates GitHub Actions to use Composer v2. - Updates GitHub Actions to use PHP 7.4. - Updates GitHub Actions to use WordPress 5.7 as stable. * Updates WordPress Version Composer Dependencies - Updates the installed WordPress version to 5.7. - Updates the installed WordPress stubs version to 5.7. * Fixes GitHub Actions for Composer 2 Changes * Fixes GitHub Actions for PHP Unit testing - Changes PHPUnit switch to dev-master for PHP 8.0. * Updates GrumPHP & GrumPHP Unit Testing PHP 8 Support - Updates GrumPHP to a newer version. - Updates Unit Testing PHP 8.0 to use GrumPHP dev-master. * Updates Unit Testing for PHPUnit Testing w/ PHP8 * Updates Unit Testing Composer Updates to Run w/ PHP 8 * Updates Composer PHPUnit for PHP 8 Override * Multisite/network configurations use your current blog as the default when using the WP_User_Query which means if a user already exists, from a different blog, you will not find them, but also can't create a new account because they already exist. This overrides your current blog and will search 'all' * CodeSpaces Dev Container Updates & Composer Updates * Updating GrumPHP & Composer Dependencies * Updates NPM Modules & Changes Plugin Instance Visibility * Updates @wordpress/scripts & ~wordpress/env to the latest versions. * Changes the visibility of the plugin class instance attribute. * Bump tar from 4.4.13 to 4.4.19 Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.19. - [Release notes](https://github.com/npm/node-tar/releases) - [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.19) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump hosted-git-info from 2.8.8 to 2.8.9 Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9. - [Release notes](https://github.com/npm/hosted-git-info/releases) - [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md) - [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9) --- updated-dependencies: - dependency-name: hosted-git-info dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump lodash from 4.17.19 to 4.17.21 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.19 to 4.17.21. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.19...4.17.21) --- updated-dependencies: - dependency-name: lodash dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ssri from 6.0.1 to 6.0.2 Bumps [ssri](https://github.com/npm/ssri) from 6.0.1 to 6.0.2. - [Release notes](https://github.com/npm/ssri/releases) - [Changelog](https://github.com/npm/ssri/blob/v6.0.2/CHANGELOG.md) - [Commits](https://github.com/npm/ssri/compare/v6.0.1...v6.0.2) --- updated-dependencies: - dependency-name: ssri dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump path-parse from 1.0.6 to 1.0.7 Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7. - [Release notes](https://github.com/jbgutierrez/path-parse/releases) - [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7) --- updated-dependencies: - dependency-name: path-parse dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ws from 6.2.1 to 6.2.2 Bumps [ws](https://github.com/websockets/ws) from 6.2.1 to 6.2.2. - [Release notes](https://github.com/websockets/ws/releases) - [Commits](https://github.com/websockets/ws/compare/6.2.1...6.2.2) --- updated-dependencies: - dependency-name: ws dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * coding standards issues * Fix wordpress coding standards issues * Redone acr-values-support acr-values support * Fix code-standard errors Fixed reported code-standard issues found * Update openid-connect-generic-client.php fixing code-indentment after report * Update openid-connect-generic-client-wrapper.php fix for reported code-standard errors * Update openid-connect-generic-settings-page.php Fixing code-standard reported errors * Update openid-connect-generic-client.php re-aligned line 225 ( indentment error) * Refactors new ACR Handling Code for Better Code Quality * Fixes some incorrect ACR handling code that incorrectly added the ACR when it wasn't set. * Adds missing settings disable handling when ACR constant is set. * Refactors code for simplicity and code quality. * Fixes #243 Nickname from Claim Regression * Fixes the regression caused by the code changes in 3.8.0 which resulted in not performing proper fallbacks for missing cliams such as the nickname. * Fixes invalid Node version in NVM configuration. * Fixes Indentity Mapping & Creation Issues * Fixes issues with improperly handling combinations of the "Link Existing Users", "Create user if does not exist", and "Identify with User Name" configuration options. * Addresses issues related to case sensitivity of usernames when attempting to "Link Existing Users". * Fixes typos and formatting on the plugin Settings screen. * Dependabot Security Related Fixes & Refactoring * Update to require Node v14 & NPM 6.14.15. * Updates to Grunt 1.4.1. * Forces resolution of dependencies for security fixes. * Update @wordpress packages to their latest versions. * Refactors the NPM & Composer scripts. * Updates WP to Latest Dev Standard for Local Development * Refactors Callable Refresh User Claims Function & Action * Moves `openid-connect-generic-update-user-using-current-claim` action to within update user metadata during login. * Adds a new publicly callable method that uses the plugin singleton. * Prep for 3.9.0 Release Co-authored-by: jkouris <35877237+jkouris@users.noreply.github.com> Co-authored-by: Rob Skilling <rob@dxw.com> Co-authored-by: Martin Schanzenbach <schanzen@gnunet.org> Co-authored-by: Chloé "Matcha" Desoutter <chloe.desoutter@bluenove.com> Co-authored-by: Martin <schanzen@users.noreply.github.com> Co-authored-by: Sylwester Kardziejonek <sylwester.kardziejonek@gmail.com> Co-authored-by: Nicolas Dhers <nicolas@rkcreation.fr> Co-authored-by: Tom McCaffery <tom@weareadjacent.com> Co-authored-by: Dan <dan@testinnovators.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: John Kouris <jkouris@everyincome.com> Co-authored-by: Glowsome <administrator@comsolve.nl>
3 years ago
if ( ! empty( $this->acr_values ) ) {
$request['body'] += array( 'acr_values' => $this->acr_values );
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Allow modifications to the request.
$request = apply_filters( 'openid-connect-generic-alter-request', $request, 'get-authentication-token' );
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Call the server and ask for a token.
$this->logger->log( $this->endpoint_token, 'request_authentication_token' );
$response = wp_remote_post( $this->endpoint_token, $request );
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
if ( is_wp_error( $response ) ) {
$response->add( 'request_authentication_token', __( 'Request for authentication token failed.', 'daggerhart-openid-connect-generic' ) );
}
return $response;
}
/**
* Using the refresh token, request new tokens from the idp
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param string $refresh_token The refresh token previously obtained from token response.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @return array|WP_Error
*/
public function request_new_tokens( $refresh_token ) {
$request = array(
'body' => array(
'refresh_token' => $refresh_token,
'client_id' => $this->client_id,
'client_secret' => $this->client_secret,
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
'grant_type' => 'refresh_token',
),
);
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Allow modifications to the request.
$request = apply_filters( 'openid-connect-generic-alter-request', $request, 'refresh-token' );
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Call the server and ask for new tokens.
$this->logger->log( $this->endpoint_token, 'request_new_tokens' );
$response = wp_remote_post( $this->endpoint_token, $request );
if ( is_wp_error( $response ) ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
$response->add( 'refresh_token', __( 'Refresh token failed.', 'daggerhart-openid-connect-generic' ) );
}
return $response;
}
/**
* Extract and decode the token body of a token response
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param array<mixed>|WP_Error $token_result The token response.
*
* @return array<mixed>|WP_Error|null
*/
public function get_token_response( $token_result ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
if ( ! isset( $token_result['body'] ) ) {
return new WP_Error( 'missing-token-body', __( 'Missing token body.', 'daggerhart-openid-connect-generic' ), $token_result );
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Extract the token response from token.
$token_response = json_decode( $token_result['body'], true );
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Check that the token response body was able to be parsed.
if ( is_null( $token_response ) ) {
return new WP_Error( 'invalid-token', __( 'Invalid token.', 'daggerhart-openid-connect-generic' ), $token_result );
}
if ( isset( $token_response['error'] ) ) {
$error = $token_response['error'];
$error_description = $error;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
if ( isset( $token_response['error_description'] ) ) {
$error_description = $token_response['error_description'];
}
return new WP_Error( $error, $error_description, $token_result );
}
return $token_response;
}
/**
* Exchange an access_token for a user_claim from the userinfo endpoint
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param string $access_token The access token supplied from authentication user claim.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @return array|WP_Error
*/
public function request_userinfo( $access_token ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Allow modifications to the request.
$request = apply_filters( 'openid-connect-generic-alter-request', array(), 'get-userinfo' );
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/*
* Section 5.3.1 of the spec recommends sending the access token using the authorization header
* a filter may or may not have already added headers - make sure they exist then add the token.
*/
if ( ! array_key_exists( 'headers', $request ) || ! is_array( $request['headers'] ) ) {
$request['headers'] = array();
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
$request['headers']['Authorization'] = 'Bearer ' . $access_token;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Add Host header - required for when the openid-connect endpoint is behind a reverse-proxy.
$parsed_url = parse_url( $this->endpoint_userinfo );
$host = $parsed_url['host'];
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
if ( ! empty( $parsed_url['port'] ) ) {
$host .= ":{$parsed_url['port']}";
}
$request['headers']['Host'] = $host;
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Attempt the request including the access token in the query string for backwards compatibility.
$this->logger->log( $this->endpoint_userinfo, 'request_userinfo' );
$response = wp_remote_post( $this->endpoint_userinfo, $request );
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
if ( is_wp_error( $response ) ) {
$response->add( 'request_userinfo', __( 'Request for userinfo failed.', 'daggerhart-openid-connect-generic' ) );
}
return $response;
}
/**
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* Generate a new state, save it as a transient, and return the state hash.
*
* @param string $redirect_to The redirect URL to be used after IDP authentication.
*
* @return string
*/
public function new_state( $redirect_to ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// New state w/ timestamp.
$state = md5( mt_rand() . microtime( true ) );
$state_value = array(
$state => array(
'redirect_to' => $redirect_to,
),
);
set_transient( 'openid-connect-generic-state--' . $state, $state_value, $this->state_time_limit );
return $state;
}
/**
* Check the existence of a given state transient.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param string $state The state hash to validate.
*
* @return bool
*/
public function check_state( $state ) {
$state_found = true;
if ( ! get_option( '_transient_openid-connect-generic-state--' . $state ) ) {
do_action( 'openid-connect-generic-state-not-found', $state );
$state_found = false;
}
$valid = get_transient( 'openid-connect-generic-state--' . $state );
if ( ! $valid && $state_found ) {
do_action( 'openid-connect-generic-state-expired', $state );
}
return boolval( $valid );
}
/**
* Get the authorization state from the request
*
* @param array<string>|WP_Error $request The authentication request results.
*
* @return string|WP_Error
*/
public function get_authentication_state( $request ) {
if ( ! isset( $request['state'] ) ) {
return new WP_Error( 'missing-authentication-state', __( 'Missing authentication state.', 'daggerhart-openid-connect-generic' ), $request );
}
return $request['state'];
}
/**
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* Ensure that the token meets basic requirements.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param array $token_response The token response.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @return bool|WP_Error
*/
public function validate_token_response( $token_response ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
/*
* Ensure 2 specific items exist with the token response in order
* to proceed with confidence: id_token and token_type == 'Bearer'
*/
if ( ! isset( $token_response['id_token'] ) ||
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
! isset( $token_response['token_type'] ) || strcasecmp( $token_response['token_type'], 'Bearer' )
) {
return new WP_Error( 'invalid-token-response', 'Invalid token response', $token_response );
}
return true;
}
/**
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* Extract the id_token_claim from the token_response.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param array $token_response The token response.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @return array|WP_Error
*/
public function get_id_token_claim( $token_response ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Validate there is an id_token.
if ( ! isset( $token_response['id_token'] ) ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
return new WP_Error( 'no-identity-token', __( 'No identity token.', 'daggerhart-openid-connect-generic' ), $token_response );
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Break apart the id_token in the response for decoding.
$tmp = explode( '.', $token_response['id_token'] );
if ( ! isset( $tmp[1] ) ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
return new WP_Error( 'missing-identity-token', __( 'Missing identity token.', 'daggerhart-openid-connect-generic' ), $token_response );
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Extract the id_token's claims from the token.
$id_token_claim = json_decode(
base64_decode(
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
str_replace( // Because token is encoded in base64 URL (and not just base64).
array( '-', '_' ),
array( '+', '/' ),
$tmp[1]
)
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
),
true
);
return $id_token_claim;
}
/**
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* Ensure the id_token_claim contains the required values.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param array $id_token_claim The ID token claim.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @return bool|WP_Error
*/
public function validate_id_token_claim( $id_token_claim ) {
if ( ! is_array( $id_token_claim ) ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
return new WP_Error( 'bad-id-token-claim', __( 'Bad ID token claim.', 'daggerhart-openid-connect-generic' ), $id_token_claim );
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Validate the identification data and it's value.
if ( ! isset( $id_token_claim['sub'] ) || empty( $id_token_claim['sub'] ) ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
return new WP_Error( 'no-subject-identity', __( 'No subject identity.', 'daggerhart-openid-connect-generic' ), $id_token_claim );
}
3.9.0 Feature & Bugfix Release (#394) * Update openid-connect-generic-client-wrapper.php Add openid-connect-generic-session-expired action before to allow consumers to act on the refresh token expiration * Implement singleton pattern for OpenID_Connect_Generic class This will allow developers who want to be able to call methods belonging to this class (or methods belonging to any of this class's properties) to do so, without having to create a new instance, and therefore repeat all the bootstrapping. Instead, they will just be able to call OpenID_Connect_Generic::instance() to retrieve the singleton. * Add functions.php file for global functions These will act as wrappers for methods you would otherwise call by getting the Open_ID_Connect_Generic singleton and then calling the appropriate method. * Make client_wrapper a public property This allows us to access client_wrapper methods via the singleton of Open_ID_Connect_Generic. * Support aggregated claims (#254) * use tabs instead of spaces * added define config with OIDC_LOGIN_TYPE and OIDC_CLIENT_SCOPE scopes are needed when logging in so this is a no-brainer and this can be deployed using deployments login type can be defined here when you want to enforce SSO from the deployment. * More define-driven settings * fix linting * fix code analysis errors * fix more linting, add more exception handling * Added the OIDC_CREATE_IF_DOES_NOT_EXIST define * Added documentation and phpstan defines * Added data in environment_settings * Fixes QS not being added to the redirect URL * fix #178 Update last-token-response user meta after refresh * add a basic method to refresh user claim outside of this plugin * fix return doc * add a basic method to refresh user claim outside of this plugin * fix return doc * Revert "fix return doc" This reverts commit e19d6f3ffd3f7684dd843408ec911c4b6d614328. * Revert "add a basic method to refresh user claim outside of this plugin" This reverts commit 1a5fa9b045c7b50a17dc3cfd5482fc33be9aa6ee. * Initial Codepsaces Development Environment * Adds Gitpod Support Alongside Codespaces Support * Only load admin CSS when showing settings page * Updates Development Environment for PHP & WordPress - Updates local development environment to use a Composer Docker container. - Updates VS Code/Codespaces devcontainer to bullseye/PHP 7.4. - Updates VS Code/Codespaces devcontainer & GitPod starting commands. - Updates build environment to use PHP 7.4 & Composer 2. - Updates build environment Composer packages. - Updates Composer WordPress install to use the johnpbloch packages. * Fixes Running PHPStan in Docker & Static Analysis Issues - Updates the PHP/Composer Docker image memory limit to allow PHPStand to run properly. - Fixes static analysis issues reported by PHPStan. - Updates PHPStan & extensions to latest versions. - Updates PHPStan configuration for latest version. * Update GitHub Actions for PHP/Composer/WordPress Changes - Updates GitHub Actions to use Composer v2. - Updates GitHub Actions to use PHP 7.4. - Updates GitHub Actions to use WordPress 5.7 as stable. * Updates WordPress Version Composer Dependencies - Updates the installed WordPress version to 5.7. - Updates the installed WordPress stubs version to 5.7. * Fixes GitHub Actions for Composer 2 Changes * Fixes GitHub Actions for PHP Unit testing - Changes PHPUnit switch to dev-master for PHP 8.0. * Updates GrumPHP & GrumPHP Unit Testing PHP 8 Support - Updates GrumPHP to a newer version. - Updates Unit Testing PHP 8.0 to use GrumPHP dev-master. * Updates Unit Testing for PHPUnit Testing w/ PHP8 * Updates Unit Testing Composer Updates to Run w/ PHP 8 * Updates Composer PHPUnit for PHP 8 Override * Multisite/network configurations use your current blog as the default when using the WP_User_Query which means if a user already exists, from a different blog, you will not find them, but also can't create a new account because they already exist. This overrides your current blog and will search 'all' * CodeSpaces Dev Container Updates & Composer Updates * Updating GrumPHP & Composer Dependencies * Updates NPM Modules & Changes Plugin Instance Visibility * Updates @wordpress/scripts & ~wordpress/env to the latest versions. * Changes the visibility of the plugin class instance attribute. * Bump tar from 4.4.13 to 4.4.19 Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.19. - [Release notes](https://github.com/npm/node-tar/releases) - [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.19) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump hosted-git-info from 2.8.8 to 2.8.9 Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9. - [Release notes](https://github.com/npm/hosted-git-info/releases) - [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md) - [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9) --- updated-dependencies: - dependency-name: hosted-git-info dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump lodash from 4.17.19 to 4.17.21 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.19 to 4.17.21. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.19...4.17.21) --- updated-dependencies: - dependency-name: lodash dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ssri from 6.0.1 to 6.0.2 Bumps [ssri](https://github.com/npm/ssri) from 6.0.1 to 6.0.2. - [Release notes](https://github.com/npm/ssri/releases) - [Changelog](https://github.com/npm/ssri/blob/v6.0.2/CHANGELOG.md) - [Commits](https://github.com/npm/ssri/compare/v6.0.1...v6.0.2) --- updated-dependencies: - dependency-name: ssri dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump path-parse from 1.0.6 to 1.0.7 Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7. - [Release notes](https://github.com/jbgutierrez/path-parse/releases) - [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7) --- updated-dependencies: - dependency-name: path-parse dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump ws from 6.2.1 to 6.2.2 Bumps [ws](https://github.com/websockets/ws) from 6.2.1 to 6.2.2. - [Release notes](https://github.com/websockets/ws/releases) - [Commits](https://github.com/websockets/ws/compare/6.2.1...6.2.2) --- updated-dependencies: - dependency-name: ws dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * coding standards issues * Fix wordpress coding standards issues * Redone acr-values-support acr-values support * Fix code-standard errors Fixed reported code-standard issues found * Update openid-connect-generic-client.php fixing code-indentment after report * Update openid-connect-generic-client-wrapper.php fix for reported code-standard errors * Update openid-connect-generic-settings-page.php Fixing code-standard reported errors * Update openid-connect-generic-client.php re-aligned line 225 ( indentment error) * Refactors new ACR Handling Code for Better Code Quality * Fixes some incorrect ACR handling code that incorrectly added the ACR when it wasn't set. * Adds missing settings disable handling when ACR constant is set. * Refactors code for simplicity and code quality. * Fixes #243 Nickname from Claim Regression * Fixes the regression caused by the code changes in 3.8.0 which resulted in not performing proper fallbacks for missing cliams such as the nickname. * Fixes invalid Node version in NVM configuration. * Fixes Indentity Mapping & Creation Issues * Fixes issues with improperly handling combinations of the "Link Existing Users", "Create user if does not exist", and "Identify with User Name" configuration options. * Addresses issues related to case sensitivity of usernames when attempting to "Link Existing Users". * Fixes typos and formatting on the plugin Settings screen. * Dependabot Security Related Fixes & Refactoring * Update to require Node v14 & NPM 6.14.15. * Updates to Grunt 1.4.1. * Forces resolution of dependencies for security fixes. * Update @wordpress packages to their latest versions. * Refactors the NPM & Composer scripts. * Updates WP to Latest Dev Standard for Local Development * Refactors Callable Refresh User Claims Function & Action * Moves `openid-connect-generic-update-user-using-current-claim` action to within update user metadata during login. * Adds a new publicly callable method that uses the plugin singleton. * Prep for 3.9.0 Release Co-authored-by: jkouris <35877237+jkouris@users.noreply.github.com> Co-authored-by: Rob Skilling <rob@dxw.com> Co-authored-by: Martin Schanzenbach <schanzen@gnunet.org> Co-authored-by: Chloé "Matcha" Desoutter <chloe.desoutter@bluenove.com> Co-authored-by: Martin <schanzen@users.noreply.github.com> Co-authored-by: Sylwester Kardziejonek <sylwester.kardziejonek@gmail.com> Co-authored-by: Nicolas Dhers <nicolas@rkcreation.fr> Co-authored-by: Tom McCaffery <tom@weareadjacent.com> Co-authored-by: Dan <dan@testinnovators.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: John Kouris <jkouris@everyincome.com> Co-authored-by: Glowsome <administrator@comsolve.nl>
3 years ago
// Validate acr values when the option is set in the configuration.
if ( ! empty( $this->acr_values ) && isset( $id_token_claim['acr'] ) ) {
if ( $this->acr_values != $id_token_claim['acr'] ) {
return new WP_Error( 'no-match-acr', __( 'No matching acr values.', 'daggerhart-openid-connect-generic' ), $id_token_claim );
}
}
return true;
}
/**
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* Attempt to exchange the access_token for a user_claim.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param array $token_response The token response.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @return array|WP_Error|null
*/
public function get_user_claim( $token_response ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Send a userinfo request to get user claim.
$user_claim_result = $this->request_userinfo( $token_response['access_token'] );
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Make sure we didn't get an error, and that the response body exists.
if ( is_wp_error( $user_claim_result ) || ! isset( $user_claim_result['body'] ) ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
return new WP_Error( 'bad-claim', __( 'Bad user claim.', 'daggerhart-openid-connect-generic' ), $user_claim_result );
}
$user_claim = json_decode( $user_claim_result['body'], true );
return $user_claim;
}
/**
* Make sure the user_claim has all required values, and that the subject
* identity matches of the id_token matches that of the user_claim.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param array $user_claim The authenticated user claim.
* @param array $id_token_claim The ID token claim.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @return bool|WP_Error
*/
public function validate_user_claim( $user_claim, $id_token_claim ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Validate the user claim.
if ( ! is_array( $user_claim ) ) {
return new WP_Error( 'invalid-user-claim', __( 'Invalid user claim.', 'daggerhart-openid-connect-generic' ), $user_claim );
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Allow for errors from the IDP.
if ( isset( $user_claim['error'] ) ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
$message = __( 'Error from the IDP.', 'daggerhart-openid-connect-generic' );
if ( ! empty( $user_claim['error_description'] ) ) {
$message = $user_claim['error_description'];
}
return new WP_Error( 'invalid-user-claim-' . $user_claim['error'], $message, $user_claim );
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Make sure the id_token sub equals the user_claim sub, according to spec.
if ( $id_token_claim['sub'] !== $user_claim['sub'] ) {
return new WP_Error( 'incorrect-user-claim', __( 'Incorrect user claim.', 'daggerhart-openid-connect-generic' ), func_get_args() );
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
// Allow for other plugins to alter the login success.
$login_user = apply_filters( 'openid-connect-generic-user-login-test', true, $user_claim );
if ( ! $login_user ) {
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
return new WP_Error( 'unauthorized', __( 'Unauthorized access.', 'daggerhart-openid-connect-generic' ), $login_user );
}
return true;
}
/**
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* Retrieve the subject identity from the id_token.
*
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
* @param array $id_token_claim The ID token claim.
*
* @return mixed
*/
public function get_subject_identity( $id_token_claim ) {
return $id_token_claim['sub'];
}
3.8.0 Release (#230) * Initial Coding Standards & Static Analysis Chanages. * Adds WordPress coding standards configuration. * Adds WordPress/PHP static analysis configuration. * Adds Git hooks to enforce checks and ensure quality on commits. * Adds initial local Docker development environment setup. * Current state of coding standards and analysis fixes. * Near Completion Update of PHP Code Sniffer Compliance Changes. * Fixes all PHP Code Sniffer WordPress Coding Standards Issues. * Updates Code Base to Pass Level 5 Baseline * Ensures PHP Code Sniffs continue to pass. * Fixes all code base issues to pass a level 5 PHP static analysis. * Updates PHPStan configurations to use a level 5 baseline. * Fixes Travis CI Configuration for Static Analysis * Fixes Plugin Pass i18n Checks * Adds i18n check to Travis CI builds. * Adds additional i18n run scripts to package.json. * Internationalization Checking & Fixes * Fixes missing i18n translation in main plugin file. * Adds update POT file. * Enforces i18n checks on commit with GrumPHP. * Adds i18n check step to Travis CI builds. * Gitattributes for export exclusions * Fixes missing loaded settings property assignment. * Adds Support for IDP Settings as Defined Constants - Reads from defined constants on plugin bootstrap. - Disabled plugin settings fields when defined constants are used. - Prevents savings plugin settings that are using defined constants. * Adds Node/NPM Environment Requirements * Fixes GrumPHP Bin Directory Configuration * Updates GrumPHP for Required Features - Bumps Composer package PHP version to 7.3. - Updates GrumPHP configuration to new format. * Plugin Settings Page Updates Using Constants - Ensures that any available defined constants are loaded in place of any database stored settings as an override. * Composer Dependency Updates & Travis CI Caching Fix * Travis CI Build Composer Update Change * NPM Updates & NVM Version Lock * Fixes NPM Package Lock File for Node v12 * Updates NPM Package Dependencies * Updates Changelog & README Files With Relevant Changes * Fixes Localizaion on Error Output * Changes GrumPHP Configuration to Provide a Full PHPCS Report * Fixes Local Dev Setup to Activate Plugin by Default * Adds Contribution Guide and Issue & PR Templates (#222) * Fixes Support GitHub Issue Template (#223) * Fixes space/typo with Wiki link (#224) * Fixes invalid wp-env plugin configuration (#225) * Improve Local Dev Setup by Reducing Setup Commands (#226) * Improve Local Dev Setup by Reducing Setup Commands * Adds Code Owners Configuration for Pull Requests * Fixes Development Dependencies and Setup Scripts (#227) * Dev release/3.8 (#229) * Adds dev Branch to Travis CI Builds * Release Preparation Enhancements & Release Changes Co-authored-by: Jonathan Daggerhart <jonathan@daggerhart.com>
4 years ago
}