diff --git a/workflow/engine/src/ProcessMaker/Services/OAuth2/PmPdo.php b/workflow/engine/src/ProcessMaker/Services/OAuth2/PmPdo.php index dd1573aea..966b4b05a 100644 --- a/workflow/engine/src/ProcessMaker/Services/OAuth2/PmPdo.php +++ b/workflow/engine/src/ProcessMaker/Services/OAuth2/PmPdo.php @@ -175,9 +175,11 @@ class PmPdo implements \OAuth2\Storage\AuthorizationCodeInterface, { $access_token = new \OauthAccessTokens(); $access_token->load($token); + $stmt = $this->db->prepare(sprintf('DELETE FROM %s WHERE ACCESS_TOKEN = :token', $this->config['access_token_table'])); $stmt->execute(compact('token')); - $stmt = $this->db->prepare(sprintf('DELETE FROM %s WHERE EXPIRES>%s', $this->config['refresh_token_table'], "'".Date('Y-m-d H:i:s')."'")); + + $stmt = $this->db->prepare(sprintf("DELETE FROM %s WHERE EXPIRES < %s", $this->config["refresh_token_table"], "'" . date("Y-m-d H:i:s") . "'")); return $stmt->execute(compact('token')); } diff --git a/workflow/engine/src/ProcessMaker/Services/OAuth2/Server.php b/workflow/engine/src/ProcessMaker/Services/OAuth2/Server.php index 72f288b38..1a9c154f4 100644 --- a/workflow/engine/src/ProcessMaker/Services/OAuth2/Server.php +++ b/workflow/engine/src/ProcessMaker/Services/OAuth2/Server.php @@ -68,7 +68,10 @@ class Server implements iAuthenticate $this->server->addGrantType(new \ProcessMaker\Services\OAuth2\PmClientCredentials($this->storage)); // Add the "Refresh token" grant type - $this->server->addGrantType(new \OAuth2\GrantType\RefreshToken($this->storage)); + $this->server->addGrantType(new \OAuth2\GrantType\RefreshToken( + $this->storage, + array("always_issue_new_refresh_token" => true) + )); // create some users in memory //$users = array('bshaffer' => array('password' => 'brent123', 'first_name' => 'Brent', 'last_name' => 'Shaffer')); @@ -261,7 +264,9 @@ class Server implements iAuthenticate if ($returnResponse) { return $response; } else { - die($response->send()); + $response->send(); + + exit(0); } } @@ -279,9 +284,11 @@ class Server implements iAuthenticate if ($request == null) { $request = \OAuth2\Request::createFromGlobals(); } - $response = $this->server->handleTokenRequest($request); + + $response = $this->server->handleTokenRequest($request); //Set/Get token //PmPdo->setAccessToken() $token = $response->getParameters(); + if (array_key_exists('access_token', $token) && array_key_exists('refresh_token', $token) ) {