Session 클래스는 사용자의 이메일 주소 (일부 경우) 및 언어 설정과 같은 세션 정보에 대한 액세스를 제공합니다.
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
get | User | 현재 사용자에 대한 정보를 가져옵니다. |
get | String | 현재 사용자의 언어 설정을 문자열로 가져옵니다(예: 영어의 경우 en ). |
get | User | 스크립트가 실행되는 사용자의 정보를 가져옵니다. |
get | String | 스크립트의 시간대를 가져옵니다. |
get | String | 활성 사용자에게 고유하지만 사용자 ID를 노출하지 않는 임시 키를 가져옵니다. |
자세한 문서
get Active User()
현재 사용자에 대한 정보를 가져옵니다. 보안 정책에서 사용자 ID에 대한 액세스를 허용하지 않으면 User.getEmail()
는 빈 문자열을 반환합니다. 이메일 주소를 사용할 수 있는 상황은 다양합니다. 예를 들어 간단한 on
또는 on
트리거, Google Sheets의 맞춤 함수, '나로 실행' (즉, 사용자 대신 개발자가 승인)하도록 배포된 웹 앱과 같이 사용자의 승인 없이 스크립트를 실행할 수 있는 컨텍스트에서는 사용자의 이메일 주소를 사용할 수 없습니다.
그러나 개발자가 직접 스크립트를 실행하거나 사용자와 동일한 Google Workspace 도메인에 속해 있는 경우에는 일반적으로 이러한 제한사항이 적용되지 않습니다.
// Log the email address of the person running the script. const email = Session.getActiveUser().getEmail(); Logger.log(email);
리턴
User
: 현재 사용자
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/userinfo.email
get Active User Locale()
현재 사용자의 언어 설정을 문자열로 가져옵니다(예: 영어의 경우 en
).
// Log the language setting of the person running the script. Logger.log(Session.getActiveUserLocale());
리턴
String
: 사용자의 언어 설정을 나타내는 문자열입니다.
get Effective User()
스크립트가 실행되는 사용자의 정보를 가져옵니다. 스크립트가 '나(개발자)로 실행'으로 설정된 웹 앱인 경우 개발자의 사용자 계정이 반환됩니다. 스크립트가 설치 가능한 트리거에서 실행 중인 경우 트리거를 만든 사용자의 계정이 반환됩니다. 대부분의 다른 시나리오에서는 get
와 동일한 계정이 반환됩니다.
// Log the email address of the user under whose authority the script is // running. const email = Session.getEffectiveUser().getEmail(); Logger.log(email);
리턴
User
: 스크립트가 실행되는 사용자의 권한
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/userinfo.email
get Script Time Zone()
스크립트의 시간대를 가져옵니다. 새 스크립트는 기본적으로 소유자의 시간대를 사용하지만 스크립트 편집기에서 File > Project properties를 클릭하여 스크립트의 시간대를 변경할 수 있습니다. 스프레드시트에는 별도의 시간대가 있으며, Google Sheets에서 파일 > 스프레드시트 설정을 클릭하여 변경할 수 있습니다. 스크립트 시간대와 다른 스프레드시트 시간대는 스크립트 버그의 주요 원인입니다.
// Log the time zone of the script. const timeZone = Session.getScriptTimeZone(); Logger.log(timeZone);
리턴
String
: 스크립트의 시간대
get Temporary Active User Key()
활성 사용자에게 고유하지만 사용자 ID를 노출하지 않는 임시 키를 가져옵니다. 임시 키는 30일마다 순환되며 스크립트에 고유합니다.
// Log the temporary key of the person running the script. Logger.log(Session.getTemporaryActiveUserKey());
리턴
String
: 임시 활성 사용자 키