Tested oidc system on okta, Keycloak & Auth0
if (!empty($result['jwks_uri'])) {
$keys = $this->loadKeysFromUri($result['jwks_uri'], $httpClient);
if (!empty($result['jwks_uri'])) {
$keys = $this->loadKeysFromUri($result['jwks_uri'], $httpClient);
- $discoveredSettings['keys'] = array_filter($keys);
+ $discoveredSettings['keys'] = $this->filterKeys($keys);
}
return $discoveredSettings;
}
return $discoveredSettings;
protected function filterKeys(array $keys): array
{
return array_filter($keys, function(array $key) {
protected function filterKeys(array $keys): array
{
return array_filter($keys, function(array $key) {
- return $key['key'] === 'RSA' && $key['use'] === 'sig' && $key['alg'] === 'RS256';
+ return $key['kty'] === 'RSA' && $key['use'] === 'sig' && $key['alg'] === 'RS256';
});
$this->app->bind(HttpClientInterface::class, function($app) {
});
$this->app->bind(HttpClientInterface::class, function($app) {
- return new Client(['timeout' => 3]);
+ return new Client([
+ 'timeout' => 3,
+ ]);