Webiny\Component\Security\Authentication\Firewall::getAuthProviderConfig PHP Method

getAuthProviderConfig() private method

Returns the config of current auth provider.
private getAuthProviderConfig ( string $authProvider ) : ConfigObject
$authProvider string Name of the auth provider you wish to use to process the login. If you don't set it, the first registered provider will be used.
return Webiny\Component\Config\ConfigObject
    private function getAuthProviderConfig($authProvider)
    {
        // have we already fetched the auth config
        if ($this->authProviderConfig) {
            return $this->authProviderConfig;
        }
        if ($authProvider == '') {
            // get the first auth provider from the list
            $providers = $this->getConfig()->get('AuthenticationProviders', []);
            $authProvider = $providers[0];
        }
        $this->authProviderConfig = Security::getConfig()->get('AuthenticationProviders.' . $authProvider, new ConfigObject());
        // merge the internal driver
        // merge only if driver is not set and it matches the internal auth provider name
        if (!$this->authProviderConfig->get('Driver', false) && isset(self::$authProviders[$authProvider])) {
            $this->authProviderConfig->mergeWith(['Driver' => self::$authProviders[$authProvider]]);
        }
        // make sure the requested auth provider is assigned to the current firewall
        if (!in_array($authProvider, $this->getConfig()->get('AuthenticationProviders', [])->toArray())) {
            throw new FirewallException('Authentication provider "' . $authProvider . '" is not defined on "' . $this->getFirewallKey() . '" firewall.');
        }
        // check that we have the driver
        if (!$this->authProviderConfig->get('Driver', false)) {
            throw new FirewallException('Unable to detect configuration for authentication provider "' . $authProvider . '".');
        }
        $this->authProviderName = $authProvider;
        return $this->authProviderConfig;
    }