애플리케이션 설정

이 페이지로 이동하여 애플리케이션 전체 설정을 관리합니다. 다음 작업을 할 수 있습니다.

설정을 변경하려면 앱을 열고 설정 아이콘을 클릭합니다

앱 설정

설명

설명을 사용하여 애플리케이션의 용도를 서술합니다. 필요에 따라 다른 정보를 추가할 수 있습니다.

앱 시작

홈페이지

이 설정을 사용하여 사용자가 앱을 열 때 로드되는 페이지를 지정합니다.

앱 시작 스크립트

사용자가 앱을 처음 로드할 때 실행할 스크립트를 입력합니다. App Maker는 홈페이지를 열기 전에 스크립트를 실행합니다. 예를 들어 스크립트를 사용하여 UI를 표시하기 전에 데이터를 미리 로드하거나 사용자를 기준으로 서로 다른 홈페이지를 열 수 있습니다. 이 코드가 실행되는 시점에는 외부 라이브러리가 모두 로드된 상태이므로 이를 이 스크립트에서 사용할 수 있습니다.

예를 들어 사용자 환경설정 레코드에 각 사용자가 원하는 시작 뷰를 저장할 수 있습니다. 다음 샘플 스크립트는 앱 로드를 일시중지(로더 사용)하고 데이터 소스를 로드하여 기본 시작 뷰를 검색한 후 앱 로드를 다시 시작하고 기본 뷰를 엽니다. 데이터 소스를 로드하는 동안 앱 로드를 정지하지 않으면 스크립트가 완료되는 즉시 앱이 로드되고 데이터 소스의 비동기 결과를 기다리지 않습니다.

var datasource = app.datasources.MyUserDatasource;
    // Stop app from loading until the datasource loads.
    loader.suspendLoad();
    datasource.load(function() {
        app.showPage(datasource.item.StartView);
        // Continue load now that data is loaded and view is set.
        loader.resumeLoad();
    });
    

외부 리소스

이 섹션의 필드를 사용하여 다음을 지정합니다.

자바스크립트 URL

앱과 함께 로드해야 하는 자바스크립트 라이브러리를 추가합니다. 라이브러리가 호스팅된 URL을 지정하면 됩니다. 편의를 위해 Google에서는 가장 널리 사용되는 여러 라이브러리를 호스팅하고 있습니다. 라이브러리는 목록에 나오는 순서대로 로드되므로 라이브러리에 종속 항목이 있다면 종속 항목이 먼저 나와야 합니다.

CSS URL

앱에서 커스텀 CSS를 사용하여 App Maker의 기본 스타일을 재정의하는 경우 해당 URL을 추가합니다.

Apps Script 라이브러리

앱에 Apps Script 라이브러리를 추가하면 스크립트에서 선택한 객체와 관련된 함수를 사용할 수 있습니다. 참고: 가져온 라이브러리에서 코드 완성을 사용할 수 없습니다.

라이브러리를 추가하려면 스크립트 ID, 버전, 객체가 필요합니다.

보안

액세스 역할을 통해 앱을 게시한 후 다른 사용자가 앱과 상호작용하는 방법을 제어합니다. 다음을 제어할 수 있습니다.

  • 애플리케이션을 사용할 수 있는 사용자
  • 특정 페이지에 액세스하고 모델의 레코드를 수정할 수 있는 사용자
  • (관리자 전용) 배포를 게시할 수 있는 사용자. 관리자 역할은 삭제할 수 없습니다.

보안 워크플로

앱 보안을 제어하는 기본 워크플로는 다음과 같습니다.

  1. 설정 앱 설정 보안에서 역할을 추가합니다.
  2. 보호가 필요한 개별 페이지와 모델에 역할을 추가합니다.
  3. 새 배포를 만들 때 역할에 사용자를 추가합니다.

액세스 역할에 대한 추가 정보

역할을 직접 지정할 수 있으며, 기본적으로는 권한이 할당되지 않습니다. 현재는 모델 및 관계 수정 이벤트, 뷰 액세스, 서비스 데이터 소스 실행에 대한 권한을 할당할 수 있습니다. 이를 통해 사용자 그룹이 모델과 상호작용하는 방법을 지정할 수 있습니다. 예를 들어 Admins 역할만 레코드를 수정할 수 있도록 지정할 수도 있고, Manager 등의 역할을 직접 만든 후 모든 모델에 대한 생성 권한을 부여할 수도 있습니다. 자세한 내용은 모델 권한을 참조하세요.

애플리케이션의 데이터를 안전하게 보호하는 것은 모델 권한 설정이라는 점에 유의해야 합니다. 즉, 악의적인 사용자가 데이터에 액세스하고 수정할 수 없도록 방지하는 데 UI에 의존해서는 안 됩니다. 예를 들어 안전한 '등록 양식' 유형 애플리케이션을 만들려면 데이터 읽기 및 수정 액세스를 제공하는 UI가 없더라도 모델 권한 설정에서 해당 작업이 가능한 사용자를 명시적으로 제한해야 합니다.

App Maker 편집기에서는 역할 생성 및 삭제만 가능합니다. 이러한 역할의 멤버를 지정하려면 애플리케이션이 게시될 때까지 기다려야 합니다. 이를 통해 애플리케이션의 여러 버전을 서로 다른 권한으로 게시할 수 있습니다. 예를 들어 애플리케이션의 게시된 프로덕션 버전에는 자신만 관리자로 지정하고, 테스트 버전에는 신뢰할 수 있는 여러 개발자와 테스터를 관리자 역할로 지정할 수 있습니다. 또한 애플리케이션의 콘텐츠를 업데이트하지 않아도 게시된 애플리케이션의 역할 멤버십을 수정할 수 있으므로 유연성 있는 권한 관리가 가능합니다.

추가하는 각 멤버는 개별 계정 또는 Google 그룹의 이메일 주소여야 합니다. 애플리케이션을 처음 게시할 때 설정한 후 애플리케이션의 배포 설정을 수정하여 업데이트할 수 있습니다.

스크립트에서는 user.roles 매개변수를 사용하여 애플리케이션의 현재 사용자가 속한 모든 역할에 액세스할 수 있습니다. 이 방법은 클라이언트와 서버 모두에서 가능합니다.

역할 멤버십은 게시된 애플리케이션에 국한되므로 미리보기 중에는 존재하지 않습니다. 미리보기 중에는 사용자에게 모든 권한이 있습니다. 권한을 테스트하려면 애플리케이션의 테스트 배포를 게시하고 역할 멤버십을 지정해야 합니다.

앱 삽입 허용

조직의 구성원이 다른 웹사이트에 앱을 삽입해야 할 수 있습니다. 앱 삽입에는 다음을 비롯한 장점이 있습니다.

  • 조직의 사용자에게 이미 익숙한 사이트에 앱을 통합할 수 있습니다.
  • 현재 게시된 앱을 호스팅하는 데 사용되는 길고 복잡한 URL을 숨길 수 있습니다.

google.com URL을 사용하는 대부분의 웹사이트에 App Maker 앱을 삽입할 수 있습니다. 사이트에서 Google이 아닌 URL을 사용하는 경우에는 앱 관리자의 허가가 필요합니다.

사이트 유형 관리자 허가 필요 여부 참고
Google 이외의 웹사이트 클릭재킹 취약점이 생길 수 있습니다.
google.com URL을 사용하는 신규 Google 사이트 아니요 기본적으로 사용 설정됩니다.
커스텀 URL을 갖는 신규 Google 사이트 도구
  • 미리보기는 Google 인프라에 호스팅되므로 사이트 작성자는 삽입된 앱의 미리보기를 표시할 수 있습니다.
  • 앱 관리자가 삽입을 사용 설정할 때까지 게시된 페이지에서 앱이 차단됩니다.
기존 Google 사이트 도구 iframe 가젯에 삽입될 수 있습니다.
scripts.google.com URL을 사용하는 사이트 또는 앱 아니요 기본적으로 사용 설정됩니다.

보안 취약점

삽입을 사용 설정하면 앱에 액세스할 수 있는 모든 사용자가 자신이 제어하는 사이트에 앱을 삽입할 수 있습니다. 이로 인해 클릭재킹(clickjacking)이라는 웹 공격에 노출될 위험이 있습니다. 여러 가지 방법으로 클릭재킹을 대처할 수 있지만 삽입 가능한 앱에서는 위험한 작업을 제공하지 않아야 합니다. 불가피한 경우라면 사용자가 개인정보 입력 또는 데이터 삭제와 같은 작업을 진행하기 전에 앱에서 경고 등의 안내문을 시각적으로 표시해야 합니다.

삽입 사용 설정

설정 앱 설정 보안에서 체크박스를 클릭하여 앱을 삽입할 수 있도록 설정합니다.

환경설정

환경설정 섹션에서는 몇 가지 UI 및 스크립트 설정을 제어합니다.

표시 영역 해상도

커스텀 화면 크기를 생성, 수정, 삭제하여 페이지 편집기의 뷰를 제어할 수 있습니다. 페이지 편집기의 기기 해상도를 설정하면 해당 크기의 화면에서 앱이 렌더링되는 모양을 볼 수 있습니다.

화면 해상도를 추가하려면 해상도 추가를 클릭합니다. 해상도 이름과 크기를 입력하고 추가를 클릭합니다.

화면 해상도를 수정 및 삭제하려면 수정하거나 삭제할 해상도를 가리키고 수정 또는 삭제 아이콘을 클릭합니다.

앱 언어

App Maker 앱은 현재 앱당 언어 하나를 지원합니다. 기본 언어는 영어입니다. UI 텍스트 문자열, 메시지, 숫자 형식, 날짜 형식이 영어에 맞춰집니다.

앱의 언어를 다른 언어로 변경하면 사용자는 UI 텍스트 문자열, 메시지, 숫자 형식, 날짜 형식이 해당 언어로 표시될 것으로 예상합니다.

일부 UI 문자열은 앱 개발자에게 위젯 속성으로 제공됩니다. 앱 개발자는 이러한 문자열을 앱의 언어로 현지화해야 합니다.

일부 UI 문자열은 개발자가 직접 현지화할 수 없으며 App Maker가 자동으로 맞춤설정합니다. App Maker는 숫자 형식과 날짜 형식도 자동으로 맞춤설정합니다.

App Maker가 자동으로 현지화하는 위젯은 다음과 같습니다.

  • 날짜 상자: 날짜 형식
  • Google 지도: UI 문자열
  • 차트: 표, 선 차트, 원형 차트, 막대 그래프의 숫자 형식 및 날짜 형식
  • 모든 위젯: 바인딩 가능한 모든 속성의 바인딩에 사용되는 숫자 형식 및 날짜 형식
  • 양식: 유효성 검사 메시지

시간대

이 설정은 서버가 사용하는 시간대를 제어합니다. 클라이언트 스크립트는 사용자의 브라우저가 보고하는 시간대를 사용합니다.

파비콘 URL

배포 시 앱에서 사용할 파비콘의 위치를 입력합니다.

고급 Google 서비스

앱에서 고급 Google 서비스의 API를 호출합니다. 고급 서비스를 사용하려면 앱 설정에서 해당 서비스를 추가하세요. Apps Script에서 사용 가능한 모든 고급 서비스를 App Maker에서 사용할 수 있습니다.

기본 제공 Google 서비스는 추가할 필요가 없습니다.

고급 서비스 추가

  1. Settings(설정) App Settings(앱 설정)Advanced Services(고급 서비스)Add Service(서비스 추가)를 클릭합니다.
  2. 추가할 서비스의 체크박스를 선택하고 추가를 클릭합니다.

고급 서비스 호출

서버 스크립트에서 다른 Google 서비스를 호출할 때와 같은 방법으로 고급 서비스를 호출합니다. 서버 스크립트는 Apps Script 스크립트와 같이 자바스크립트로 실행됩니다.

App Maker의 서버 스크립트에서 API를 호출하는 방법은 가이드 4를 참조하세요.

고급 서비스 삭제

  1. 설정 앱 설정을 클릭합니다.
  2. Advanced Services(고급 서비스)에서 서비스의 행에 마우스를 가져가 를 클릭합니다.