} } $user['refreshTokens'] = $liveRefreshTokens; if ($refreshToken['expire'] > $user['expire']) { $user['expire'] = $refreshToken['expire']; } if (($index = array_search($authorizationTokenId, $user['authorizationCodes'])) !== false) { unset($user['authorizationCodes'][$index]); } } else { $refreshToken = $authorizationToken; } if ($accessToken['expire'] > $refreshToken['expire']) { $accessToken['expire'] = $refreshToken['expire']; } $tokenStore->addAccessToken($accessToken); $liveAccessTokens = array($accessToken['id']); foreach ($user['accessTokens'] as $tokenId) { if (!is_null($tokenStore->getAccessToken($tokenId))) { array_push($liveAccessTokens, $tokenId); } } $user['accessTokens'] = $liveAccessTokens; if (isset($client['expire'])) { $clientGracePeriod = $config->getValue('client_grace_period', 30 * 24 * 60 * 60); $now = time(); if ($client['expire'] < $now + $clientGracePeriod / 2) { $client['expire'] = $now + $clientGracePeriod; $clientStore->updateClient($client); } if ($client['expire'] > $user['expire']) {
/** * @group unit * @group oauth2 */ public function testAccessTokenIsolation() { $store = new \sspmod_oauth2server_OAuth2_TokenStore($this->getDefaultConfiguration()); $token1 = array('id' => 'dummy', 'expire' => time() + 1000); $store->addAccessToken($token1); $this->assertNull($store->getAuthorizationCode($token1['id'])); $this->assertNull($store->getRefreshToken($token1['id'])); }