En la devolución de llamada de google OAuth, ¿es un riesgo para la seguridad proporcionar redirect_uri por parte del cliente?

0

por ejemplo, en la url de devolución de llamada de google oauth, para convertir el 'código' a access_token, necesito:

lado del cliente href:

https://accounts.google.com/o/oauth2/auth?scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile&redirect_uri=https://my_url&response_type=code&client_id=xxxxx

lado del servidor php:

require('google-api-php-client-2.2.2_PHP54/vendor/autoload.php');
$client = new \Google_Client(Constant::PARAMS);
$client->setAccessType('offline');
$client->setRedirectUri('https://my_url');
$accessToken = $client->fetchAccessTokenWithAuthCode($_GET['code']); 

que enlace está codificado en el lado del cliente y del servidor, cuando se cambia, creo que puedo olvidar cambiar ambos lados, así que quiero el enlace a ser proporcionado por el lado del cliente usando el parámetro 'estado':

lado del cliente href:

https://accounts.google.com/o/oauth2/auth?scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile&redirect_uri=https://my_url&response_type=code&client_id=xxxxx&state=https://my_url

lado del servidor php:

require('google-api-php-client-2.2.2_PHP54/vendor/autoload.php');
$client = new \Google_Client(Constant::PARAMS);
$client->setAccessType('offline');
$client->setRedirectUri($_GET['state']);
$accessToken = $client->fetchAccessTokenWithAuthCode($_GET['code']); 

Mi pregunta es, ¿aumenta el riesgo de seguridad?

    
pregunta mmmaaa 20.07.2018 - 04:57
fuente

0 respuestas

Lea otras preguntas en las etiquetas