feat(oauth): set redirect uri as optional and add default value (#5760)
This commit is contained in:
@@ -25,11 +25,11 @@ class OauthSetting extends Model
|
|||||||
{
|
{
|
||||||
switch ($this->provider) {
|
switch ($this->provider) {
|
||||||
case 'azure':
|
case 'azure':
|
||||||
return filled($this->client_id) && filled($this->client_secret) && filled($this->redirect_uri) && filled($this->tenant);
|
return filled($this->client_id) && filled($this->client_secret) && filled($this->tenant);
|
||||||
case 'authentik':
|
case 'authentik':
|
||||||
return filled($this->client_id) && filled($this->client_secret) && filled($this->redirect_uri) && filled($this->base_url);
|
return filled($this->client_id) && filled($this->client_secret) && filled($this->base_url);
|
||||||
default:
|
default:
|
||||||
return filled($this->client_id) && filled($this->client_secret) && filled($this->redirect_uri);
|
return filled($this->client_id) && filled($this->client_secret);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,10 @@ function get_socialite_provider(string $provider)
|
|||||||
{
|
{
|
||||||
$oauth_setting = OauthSetting::firstWhere('provider', $provider);
|
$oauth_setting = OauthSetting::firstWhere('provider', $provider);
|
||||||
|
|
||||||
|
if (! filled($oauth_setting->redirect_uri)) {
|
||||||
|
$oauth_setting->update(['redirect_uri' => route('auth.callback', $provider)]);
|
||||||
|
}
|
||||||
|
|
||||||
if ($provider === 'azure') {
|
if ($provider === 'azure') {
|
||||||
$azure_config = new \SocialiteProviders\Manager\Config(
|
$azure_config = new \SocialiteProviders\Manager\Config(
|
||||||
$oauth_setting->client_id,
|
$oauth_setting->client_id,
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
label="Client ID" />
|
label="Client ID" />
|
||||||
<x-forms.input id="oauth_settings_map.{{ $oauth_setting->provider }}.client_secret"
|
<x-forms.input id="oauth_settings_map.{{ $oauth_setting->provider }}.client_secret"
|
||||||
type="password" label="Client Secret" autocomplete="new-password" />
|
type="password" label="Client Secret" autocomplete="new-password" />
|
||||||
<x-forms.input id="oauth_settings_map.{{ $oauth_setting->provider }}.redirect_uri"
|
<x-forms.input id="oauth_settings_map.{{ $oauth_setting->provider }}.redirect_uri" placeholder="{{ route('auth.callback', $oauth_setting->provider) }}"
|
||||||
label="Redirect URI" />
|
label="Redirect URI" />
|
||||||
@if ($oauth_setting->provider == 'azure')
|
@if ($oauth_setting->provider == 'azure')
|
||||||
<x-forms.input id="oauth_settings_map.{{ $oauth_setting->provider }}.tenant"
|
<x-forms.input id="oauth_settings_map.{{ $oauth_setting->provider }}.tenant"
|
||||||
|
|||||||
Reference in New Issue
Block a user