0

Мы разработали приложение, в котором оно будет взаимодействовать с приложением GAE из сценария GAS с использованием OAuth 1.0, но с OAuth 2.0 мы не смогли это сделать получить отказ доступа от OAuth.как аутентифицировать скрипт приложения Google с помощью приложения GAE с использованием OAuth 2.0 [GAS и GAE]

Функция getervice.hasAccess() всегда возвращает false. Я очень смущен, какой URL я должен использовать для процесса аутентификации.

Я прикреплял источник для Oauth 1 и 2 OAuth для справки

Oauth 1.0 
========= 
envVars.url = myapp.appspot.com; 

    var oAuthConfig = UrlFetchApp.addOAuthService(envVars.serviceName); 
    oAuthConfig.setRequestTokenUrl(envVars.url + '/_ah/OAuthGetRequestToken'); 
    oAuthConfig.setAuthorizationUrl(envVars.url + '/_ah/OAuthAuthorizeToken'); 
    oAuthConfig.setAccessTokenUrl(envVars.url + '/_ah/OAuthGetAccessToken'); 

    var requestData = { 
    "oAuthServiceName": envVars.serviceName, 
    "oAuthUseToken": "always" 
    }; 

    requestData.muteHttpExceptions = true; 




Oauth 2.0 
========= 

envVars.url = myapp.appspot.com 
getservice = getService(); 


if (getservice.hasAccess()) { 
    Logger.log("All OK"); 
    return; 
    } 
else { 
    var authorizationUrl = getservice.getAuthorizationUrl(); 
    Logger.log('Open the following URL and re-run the script: %s', 
       authorizationUrl); 
    showURL(authorizationUrl); 
    } 

function getService() 
{ 
    return OAuth2.createService(envVars.serviceName) 
    // Set the endpoint URLs. 
    .setAuthorizationBaseUrl(envVars.url + '/_ah/OAuthAuthorizeToken') 
    .setTokenUrl(envVars.url + '/_ah/OAuthGetAccessToken')    


    // Set the client ID and secret. 
    .setClientId(CLIENT_ID) 
    .setClientSecret(CLIENT_SECRET) 

    // Set the name of the callback function that should be invoked to complete 
    // the OAuth flow. 
    .setCallbackFunction('authCallback') 

    // Set the property store where authorized tokens should be persisted. 
    .setPropertyStore(PropertiesService.getUserProperties()); 
} 

ответ

0

Пожалуйста, помните, что OAuth 1.0 был официально объявлен устаревшим последний 20 апреля 2012 г. Предполагается, что вам нужно перенести OAuth 1.0 to OAuth 2.0, как только насколько это возможно.

Если скрипт использует службы, которые могут обращаться к личным данным, вы столкнетесь с диалоговым окном авторизации. Скрипты приложений определяют области авторизации.

Сценарии, которые вы ранее разрешили, также запрашивают дополнительное разрешение, если смена кода добавляет новые услуги. Сценарии не запрашивать разрешение, если они используют только услуги, которые не могут доступ к данным пользователя

Проверьте этот документ, который обсуждает разрешения и тип сценариев: https://developers.google.com/apps-script/guides/services/authorization#permissions_and_types_of_scripts

+0

Привет Datul, Спасибо за ответ, но я реализовал код для oauth2 I У меня возникли проблемы с тем, какой URL-адрес должен использоваться для аутентификации GAE. – gokulakrishnan

Смежные вопросы