GoogleAppsScript 소유자 변경 시 필요한 작업
GoogleAppsScript 복제
먼저 제목없는 새 프로젝트를 만들고 기존 코드의 내용을 붙여넣고 저장합니다.
"GoogleDrive"→ "신규"→ "GoogleAppsScript"
기존 코드를 새 프로젝트에 붙여넣기 저장
또는 파일 복제
하나하나 수정해 나가는 수단도 있지만 재작성해 버리는 것이 빠르다고 판단
정보 수집
프로젝트(스크립트)의 고유한 자격 증명 등을 수집
프로젝트(스크립트)의 고유한 자격 증명 등을 수집
"인증 정보"→"Apps Script"
API 활성화
"API Manager"화면 → "라이브러리"→ "Google Apps Script Execution API"에서 검색 → "Google Apps Script Execution API"를 클릭 → "활성화"를 클릭
라이브러리 활성화
"자원"→"라이브러리"→"라이브러리 검색"
예를 들어 ChatworkAPI를 사용하는 경우 프로젝트 키 "M6TcEyniCs1xb3sdXFF_FhI-MNonZQ_sT"를 검색하여 최신 버전을 선택하고 "저장"을 클릭하십시오.
인증 코드 취득
client_id=이후를 다시 작성하여 다음과 같이 브라우저에서 액세스
auto
https://accounts.google.com/o/oauth2/auth?response_type=code&redirect_uri=https%3A%2F%2Fscript.google.com%2Foauthcallback&client_id=39303096XXXXX-h2jag0253e6q6d39bbn0vthq9pjXXXXX.apps.googleusercontent.com&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fscript.external_request&access_type=offline&approval_prompt=auto
force
https://accounts.google.com/o/oauth2/auth?response_type=code&redirect_uri=https%3A%2F%2Fscript.google.com%2Foauthcallback&client_id=3930309XXXXX-h2jag0253e6q6d39bbn0vthq9pjXXXXX.apps.googleusercontent.com&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fscript.external_request&access_type=offline&approval_prompt=force
"자원"→"라이브러리"→"라이브러리 검색"
예를 들어 ChatworkAPI를 사용하는 경우 프로젝트 키 "M6TcEyniCs1xb3sdXFF_FhI-MNonZQ_sT"를 검색하여 최신 버전을 선택하고 "저장"을 클릭하십시오.
인증 코드 취득
client_id=이후를 다시 작성하여 다음과 같이 브라우저에서 액세스
auto
https://accounts.google.com/o/oauth2/auth?response_type=code&redirect_uri=https%3A%2F%2Fscript.google.com%2Foauthcallback&client_id=39303096XXXXX-h2jag0253e6q6d39bbn0vthq9pjXXXXX.apps.googleusercontent.com&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fscript.external_request&access_type=offline&approval_prompt=auto
force
https://accounts.google.com/o/oauth2/auth?response_type=code&redirect_uri=https%3A%2F%2Fscript.google.com%2Foauthcallback&client_id=3930309XXXXX-h2jag0253e6q6d39bbn0vthq9pjXXXXX.apps.googleusercontent.com&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fscript.external_request&access_type=offline&approval_prompt=force
https://accounts.google.com/o/oauth2/auth?response_type=code&redirect_uri=https%3A%2F%2Fscript.google.com%2Foauthcallback&client_id=39303096XXXXX-h2jag0253e6q6d39bbn0vthq9pjXXXXX.apps.googleusercontent.com&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fscript.external_request&access_type=offline&approval_prompt=auto
https://accounts.google.com/o/oauth2/auth?response_type=code&redirect_uri=https%3A%2F%2Fscript.google.com%2Foauthcallback&client_id=3930309XXXXX-h2jag0253e6q6d39bbn0vthq9pjXXXXX.apps.googleusercontent.com&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fscript.external_request&access_type=offline&approval_prompt=force
취득한 인증 코드
4/FT9xgav9Y8Hc1ftNQ6rInYHmh-rXv0wHvPwU1BXXXXX
액세스 토큰 및 새로 고침 토큰 획득
$ curl -d client_id=3930309XXXXX-h2jag0253e6q6d39bbn0vthq9pjXXXXX.apps.googleusercontent.com \
> -d client_secret=RHqmnHOSSbFdkLugSbhXXXXX \
> -d redirect_uri=https%3A%2F%2Fscript.google.com%2Foauthcallback \
> -d grant_type=authorization_code \
> -d code=4/v3DBBc_cyBUQB0aIemwGWG3JBJeP2dhPG8nouIXXXXX https://accounts.google.com/o/oauth2/token
{
"access_token" : "ya29.Ci9qA_CaeZjBcfABtaULa0KLmR2Zxy5wz9vd4ZLkRRvFwRbMpj9X6W80fL6ifXXXXX",
"token_type" : "Bearer",
"expires_in" : 3600,
"refresh_token" : "1/ROwYk8-yHnFJXWocZVDIlTbBEu5kJzvFCiTTRXXXXX"
}
새로 고침 토큰으로 액세스 토큰 얻기
$ curl -X POST https://accounts.google.com/o/oauth2/token \
> -d "refresh_token=1/pBTVup7HFGyM27fmqe-fLGTQQE_LQwm7Iip-38XXXXX" \
> -d "client_id=3930309XXXXX-h2jag0253e6q6d39bbn0vthq9pjXXXXX.apps.googleusercontent.com" \
> -d "client_secret=RHqmnHOSSbFdkLugSbhXXXXX" \
> -d "grant_type=refresh_token"
{
"access_token" : "ya29.Ci9qAyAZs5wrgTLcP04SifCNBlzZa0S290EaV3n4TTu6t7VubJVmFrnh98SqXXXXX",
"token_type" : "Bearer",
"expires_in" : 3600
}
오류 출력 예
이미 액세스 토큰이 발급된 경우
{
"error" : "invalid_grant",
"error_description" : "Code was already redeemed."
}
액세스 토큰이 만료된 경우
{
"error" : "invalid_grant"
}
새로 고침 토큰만 발급되지 않는 경우
원인은 잘 모르지만 이 경우 인증 코드를 다시 얻고 다시 액세스 토큰을 얻어 보면 개선하기도 한다.
{
"access_token" : "ya29.CjBqA4Vvj-HCOq791ZcZ7zrCXq4tE17u-ghBV8sdjWoKyFwFETws98QYO8cupDXXXXX",
"token_type" : "Bearer",
"expires_in" : 3490
}
Reference
이 문제에 관하여(GoogleAppsScript 소유자 변경 시 필요한 작업), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ezaqiita/items/97e856ebab8ce7bdf133
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ curl -d client_id=3930309XXXXX-h2jag0253e6q6d39bbn0vthq9pjXXXXX.apps.googleusercontent.com \
> -d client_secret=RHqmnHOSSbFdkLugSbhXXXXX \
> -d redirect_uri=https%3A%2F%2Fscript.google.com%2Foauthcallback \
> -d grant_type=authorization_code \
> -d code=4/v3DBBc_cyBUQB0aIemwGWG3JBJeP2dhPG8nouIXXXXX https://accounts.google.com/o/oauth2/token
{
"access_token" : "ya29.Ci9qA_CaeZjBcfABtaULa0KLmR2Zxy5wz9vd4ZLkRRvFwRbMpj9X6W80fL6ifXXXXX",
"token_type" : "Bearer",
"expires_in" : 3600,
"refresh_token" : "1/ROwYk8-yHnFJXWocZVDIlTbBEu5kJzvFCiTTRXXXXX"
}
$ curl -X POST https://accounts.google.com/o/oauth2/token \
> -d "refresh_token=1/pBTVup7HFGyM27fmqe-fLGTQQE_LQwm7Iip-38XXXXX" \
> -d "client_id=3930309XXXXX-h2jag0253e6q6d39bbn0vthq9pjXXXXX.apps.googleusercontent.com" \
> -d "client_secret=RHqmnHOSSbFdkLugSbhXXXXX" \
> -d "grant_type=refresh_token"
{
"access_token" : "ya29.Ci9qAyAZs5wrgTLcP04SifCNBlzZa0S290EaV3n4TTu6t7VubJVmFrnh98SqXXXXX",
"token_type" : "Bearer",
"expires_in" : 3600
}
오류 출력 예
이미 액세스 토큰이 발급된 경우
{
"error" : "invalid_grant",
"error_description" : "Code was already redeemed."
}
액세스 토큰이 만료된 경우
{
"error" : "invalid_grant"
}
새로 고침 토큰만 발급되지 않는 경우
원인은 잘 모르지만 이 경우 인증 코드를 다시 얻고 다시 액세스 토큰을 얻어 보면 개선하기도 한다.
{
"access_token" : "ya29.CjBqA4Vvj-HCOq791ZcZ7zrCXq4tE17u-ghBV8sdjWoKyFwFETws98QYO8cupDXXXXX",
"token_type" : "Bearer",
"expires_in" : 3490
}
Reference
이 문제에 관하여(GoogleAppsScript 소유자 변경 시 필요한 작업), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ezaqiita/items/97e856ebab8ce7bdf133
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
{
"error" : "invalid_grant",
"error_description" : "Code was already redeemed."
}
{
"error" : "invalid_grant"
}
{
"access_token" : "ya29.CjBqA4Vvj-HCOq791ZcZ7zrCXq4tE17u-ghBV8sdjWoKyFwFETws98QYO8cupDXXXXX",
"token_type" : "Bearer",
"expires_in" : 3490
}
Reference
이 문제에 관하여(GoogleAppsScript 소유자 변경 시 필요한 작업), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ezaqiita/items/97e856ebab8ce7bdf133텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)