Admin Settings API 개요

Admin Settings API를 사용하면 Google Workspace 도메인 관리자가 Google Data API 피드 형식의 도메인 설정을 검색하고 변경할 수 있습니다.

이러한 도메인 설정에는 Google Workspace 관리 콘솔에서 사용할 수 있는 여러 기능이 포함되어 있습니다. 이 API를 사용하는 예로는 맞춤 제어판을 만들거나 Google Workspace 도메인을 기존 환경에 통합하는 경우가 있습니다.

Admin Settings API는 Google Data API 프로토콜을 구현합니다. Google Data API는 AtomPublish Protocol (AtomPub) 게시 및 수정 모델을 따릅니다. AtomPub HTTP 요청은 웹 서비스에 대한 RESTful (Representational Set Transfer) 디자인 접근 방식을 사용합니다. 자세한 내용은 Google 데이터 개발자 가이드를 참고하세요.

대상

이 문서는 Google Workspace 도메인에 관한 정보를 수정하고 가져올 수 있는 클라이언트 애플리케이션을 작성하려는 개발자를 대상으로 합니다. 원시 XML 및 HTTP를 사용한 기본적인 Admin Settings API 상호작용의 예시를 제공합니다.

이 문서에서는 사용자가 Google Data API 프로토콜에 관한 일반적인 개념을 이해하고 있으며 Google Workspace 관리 콘솔에 익숙하다고 가정합니다. 관리 콘솔에 대한 자세한 내용은 관리 콘솔 사용하기를 참고하세요.

시작하기

계정 만들기

Google Workspace 계정에 Admin Settings API가 사용 설정되었습니다. 테스트 목적으로 Google Workspace 계정에 가입합니다. 관리자 설정 서비스는 Google 계정을 사용하므로 이미 Google Workspace 도메인에 계정이 있는 경우 모든 준비가 완료된 것입니다.

Admin Settings API 피드 유형 정보

Admin Settings API를 사용하여 다음과 같은 카테고리의 도메인 설정을 관리할 수 있습니다.

싱글 사인온(SSO) 설정

SAML 기반 싱글 사인온 (SSO)을 사용하면 Google Workspace 호스팅 서비스뿐만 아니라 조직 내에서 호스팅 중인 기타 서비스에도 동일한 로그인 및 비밀번호를 사용할 수 있습니다. 특히 SSO를 사용하는 경우 Google Workspace와 같은 호스팅된 웹 애플리케이션에서는 사용자가 로그인할 때 사용자를 인증하도록 사용자를 조직의 ID 공급업체로 리디렉션합니다. 자세한 내용은 Google Workspace용 SAML 기반 SSO 이해하기를 참고하세요.

SSO를 구성하려면 Google Workspace 서비스에서 사용자의 로그인 정보를 저장하는 ID 공급업체와 통신하는 데 필요한 정보를 입력해야 하며 로그인, 로그아웃, 비밀번호 변경 시 사용자에게 전송해야 하는 링크를 설정해야 합니다. Admin Settings API를 사용하면 이러한 설정을 프로그래매틱 방식으로 업데이트하고 가져올 수 있습니다. Google은 생성된 공개 키를 사용하여 ID 공급업체에 이 SSO 요청을 확인하고 네트워크 전송 중에 비공개 키 SAML 응답이 수정되지 않았는지 확인합니다.

SSO 설정 사용에 대한 간단한 API별 요약은 ID 공급업체에서 공개 키 인증서를 받아 Google에 공개 키를 등록하고 SAML 기반 SSO 쿼리 설정을 구성합니다. 오류 메시지는 SSO 문제 해결을 참고하세요.

  • 키 생성 -- ID 공급업체에서 DSA 또는 RSA 알고리즘을 사용하여 공개 및 비공개 키 집합을 생성합니다. 공개 키는 X.509 형식의 인증서에 있습니다. SAML 기반 싱글 사인온(SSO) 서명 키에 대한 자세한 내용은 Google Workspace 싱글 사인온(SSO) 서비스를 위한 키 및 인증서 생성을 참고하세요.
  • Google에 등록 -- 공개 설정 인증서를 Google에 등록하려면 Admin Settings API의 싱글 사인온(SSO) 설정을 사용합니다.
  • SSO 설정 지정: Admin ID API의 싱글 사인온(SSO) 설정을 사용하여 도메인의 ID 공급업체 서버와 통신하는 데 사용되는 설정을 구성합니다.

게이트웨이 및 라우팅 설정

이 피드를 사용하면 도메인 관리자가 도메인의 이메일 라우팅을 제어할 수 있습니다.

이메일 라우팅 작업을 사용하면 관리자가 도메인 수준의 이메일 라우팅 설정을 지정할 수 있습니다. 이것은 관리 콘솔 Gmail 설정의 이메일 라우팅 기능과 유사합니다. 자세한 내용은 이메일 라우팅이메일 라우팅 기능의 이중 전송 구성을 참고하세요.

Admin Settings API XML 요청 및 응답 샘플

이 문서에서는 원시 XML 및 HTTP를 사용하여 기본적인 Admin Settings API 요청 및 응답의 코드 예시를 제공합니다. 이 도메인 기본 언어 예에서는 각 작업에 공통되는 요청 및 응답 항목의 본문에 대한 전체 XML 및 HTTP 구문을 보여줍니다.

도메인의 발신 이메일 게이트웨이 설정을 변경하려면 HTTP PUT를 게이트웨이 피드 URL로 보냅니다.

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/email/gateway

도메인 기본 언어 PUT 요청 AtomPub entry XML:

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom'
  xmlns:apps='http://schemas.google.com/apps/2006'>
  <apps:property name='smartHost' value='smtp.out.domain.com' />
  <apps:property name='smtpMode' value='SMTP' />
</atom:entry>

atom:property 속성은 작업별 속성과 값을 제외하고 검색 또는 업데이트하려는 속성 정보가 포함된 단일 키-값 쌍을 나타냅니다. 이는 모든 Admin Settings API 요청 본문에 공통으로 적용됩니다.

도메인 기본 언어 응답 entry 요소는 모든 Admin Settings API 응답 본문에 공통된 XML 구문과 함께 smartHostsmtpMode 속성을 반환합니다.

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
<id>https://apps-apis.google.com/a/feeds/domain/2.0/domainName/email/gateway</id>
<updated>2008-12-17T23:59:23.887Z</updated>
<link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/domain/
  2.0/domainName/email/gateway'/>
<link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/domain/
  2.0/domainName/email/gateway'/>
<apps:property name='smartHost' value='smtp.out.domain.com' />
<apps:property name='smtpMode' value='SMTP' />
</entry>

싱글 사인온(SSO) 설정 관리

Google Workspace 싱글 사인온 (SSO) 기능을 사용하면 사용자가 로그인 및 비밀번호를 한 번만 입력하면 여러 서비스에 로그인할 수 있습니다. 이 비밀번호는 Google Workspace가 아닌 도메인의 ID 공급업체에 의해 저장됩니다. 자세한 내용은 고객센터의 SSO 페이지를 참고하세요. 다음 섹션에서는 싱글 사인온(SSO) 설정에 사용되는 XML 형식을 보여줍니다.

싱글 사인온(SSO) 설정 검색

싱글 사인온(SSO) 설정을 검색하려면 SSO 일반 피드 URL에 HTTP GET를 보내고 관리자 설정 서비스에 인증에 설명된 대로 Authorization 헤더를 포함합니다. 오류 메시지의 경우 SSO 문제 해결을 참고하세요.

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/sso/general

이 작업은 요청 본문에 매개변수가 없습니다.

요청에 성공하면 HTTP 200 OK 상태 코드와 함께 도메인의 SSO 설정이 있는 AtomPub 피드가 반환됩니다.

GET 응답 XML은 samlSignonUri, samlLogoutUri, changePasswordUri, enableSSO, ssoWhitelist, useDomainSpecificIssuer 속성을 반환합니다.

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
<apps:property name='samlSignonUri' value='http://www.example.com/sso/signon'/>
...
<apps:property name='samlLogoutUri' value='http://www.example.com/sso/logout'/>
<apps:property name='changePasswordUri' value='http://www.example.com/sso/changepassword'/>
<apps:property name='enableSSO' value='true'/>
<apps:property name='ssoWhitelist' value='CIDR formatted IP address'/>
<apps:property name='useDomainSpecificIssuer' value='false'/>
</entry>

속성에는 다음이 포함됩니다.

samlSignonUri
Google Workspace에서 사용자 인증을 위한 SAML 요청을 보내는 ID 공급업체의 URL입니다.
samlLogoutUri
사용자가 웹 애플리케이션에서 로그아웃할 때 연결되는 주소입니다.
changePasswordUri
웹 애플리케이션의 SSO 비밀번호를 변경하고자 할 때 사용자가 이동하게 될 주소입니다.
SSO 사용
이 도메인에 SAML 기반 SSO를 사용 설정합니다. 이전에 SSO 설정을 구성한 후 나중에 enableSSOenableSSO=false로 설정했다면 이전에 입력한 설정이 계속 저장됩니다.
SSO 화이트리스트
sso허용 목록은 클래스 없는 도메인 간 라우팅 (CIDR) 형식의 네트워크 마스크 IP 주소입니다. sso화이트리스트는 SSO를 사용하여 로그인하는 사용자와 Google Workspace 계정 인증 페이지를 사용하여 로그인하는 사용자를 결정합니다. 마스크를 지정하지 않으면 모든 사용자가 SSO를 사용하여 로그인합니다. 자세한 내용은 네트워크 마스크의 작동 방식을 참고하세요.
useDomainSpecificIssuer
ID 요청에 대한 SAML 요청에는 도메인별 발급기관을 사용할 수 있습니다. 대부분의 SSO 배포에는 이 기능이 필요하지 않지만 단일 ID 공급업체를 통해 여러 조직을 사용하여 전체 조직을 인증하는 대기업에 유용합니다. 특정 도메인 발급기관에 요청하면 요청과 연결할 하위 도메인이 결정됩니다. 자세한 내용은 SAML 요청의 발급기관 요소는 어떻게 작동하나요?

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 대한 자세한 내용은 HTTP 상태 코드를 참조하세요.

싱글 사인온(SSO) 설정 업데이트

도메인의 SSO 설정을 업데이트하려면 먼저 싱글 사인온(SSO) 설정 검색 작업을 사용하여 SSO 설정을 검색하고 수정한 다음 SSO 피드 URL로 PUT 요청을 보냅니다. 업데이트된 항목의 <id> 값이 기존 항목의 <id>과 정확하게 일치해야 합니다. Admin Settings API 서비스에 인증에 설명된 대로 Authorization 헤더를 포함합니다. 오류 메시지는 SSO 문제 해결하기를 참고하세요.

싱글 사인온(SSO) 설정을 업데이트할 때 HTTP PUT을 SSO 일반 피드 URL로 전송합니다.

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/sso/general

PUT 요청의 XML 본문은 다음과 같습니다.

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
<apps:property name='enableSSO' value='false' />
<apps:property name='samlSignonUri' value='http://www.example.com/sso/signon' />
<apps:property name='samlLogoutUri' value='http://www.example.com/sso/logout' />
<apps:property name='changePasswordUri' value='http://www.example.com/sso/changepassword' />
<apps:property name='ssoWhitelist' value='127.0.0.1/32' />
<apps:property name='useDomainSpecificIssuer' value='false'/>
</atom:entry>

요청에 성공하면 SSO 설정이 있는 AtomPub 피드와 함께 HTTP 200 OK 상태 코드가 반환됩니다.

PUT 응답 XML은 다음과 같습니다.

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
...
<apps:property name='samlSignonUri' value='http://www.example.com/sso/signon'/>
<apps:property name='samlLogoutUri' value='http://www.example.com/sso/logout'/>
<apps:property name='changePasswordUri' value='http://www.example.com/sso/changepassword'/>
<apps:property name='enableSSO' value='false'/>
<apps:property name='ssoWhitelist' value='127.0.0.1/32'/>
<apps:property name='useDomainSpecificIssuer' value='false'/>
</entry>

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 대한 자세한 내용은 HTTP 상태 코드를 참조하세요.

싱글 사인온(SSO) 서명 키 가져오기

싱글 사인온(SSO) 서명 키를 검색하려면 SSO 서명 키 피드 URL에 HTTP GET를 전송하고 관리자 설정 서비스에 인증에 설명된 대로 Authorization 헤더를 포함합니다. 오류 메시지의 경우 SSO 문제 해결을 참고하세요.

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/sso/signingkey

이 작업은 요청 본문에 매개변수가 없습니다.

성공적인 응답은 서명 키가 있는 AtomPub 피드와 함께 HTTP 200 OK 상태 코드를 반환합니다.

GET 응답 XML은 signingKey 속성을 반환합니다.

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
...
<apps:property name='signingKey' value='yourBase64EncodedPublicKey'/>
</entry>

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 대한 자세한 내용은 HTTP 상태 코드를 참조하세요.

싱글 사인온(SSO) 서명 키 업데이트

도메인의 SSO 서명 키를 업데이트하려면 먼저 싱글 사인온(SSO) 서명 키 검색 작업을 사용하여 서명 키를 검색하고 수정한 다음 PUT 요청을 SSO 서명 키 피드 URL로 보내세요. 업데이트된 항목의 <id> 값이 기존 항목의 <id>과 정확하게 일치해야 합니다. SAML 기반 싱글 사인온(SSO) 서명 키에 대한 자세한 내용은 Google Workspace 싱글 사인온(SSO) 서비스를 위한 키 및 인증서 생성을 참고하세요.

싱글 사인온(SSO) 서명 키를 업데이트할 때 HTTP PUT를 SSO 서명 키 피드 URL로 보냅니다.

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/sso/signingkey

PUT 요청 XML은 다음과 같습니다.

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps="http://schemas.google.com/apps/2006">
<apps:property name='signingKey' value='yourBase64EncodedPublicKey'/>
</atom:entry>

이메일 게이트웨이 및 라우팅 관리

발신 이메일 게이트웨이 섹션은 Admin Settings API가 도메인의 사용자가 보낸 메일의 발신 라우팅을 어떻게 지원하는지 보여줍니다. 이메일 라우팅 섹션에서는 메일을 다른 메일 서버로 라우팅하는 방법을 보여줍니다.

발신 이메일 게이트웨이 설정 검색

발신 이메일 게이트웨이 설정을 검색하려면 HTTP 피드(GET)를 게이트웨이 피드 URL로 보내고 관리자 설정 서비스에 인증에 설명된 대로 Authorization 헤더를 포함합니다.

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/email/gateway

이 작업은 요청 본문에 매개변수가 없습니다.

요청에 성공하면 이메일 게이트웨이 상태 정보가 포함된 AtomPub 피드와 함께 HTTP 200 OK 상태 코드가 반환됩니다.

GET 응답은 smartHostsmtpMode 속성을 반환합니다. 이러한 속성에 대한 자세한 내용은 발신 이메일 게이트웨이 설정 업데이트를 참조하세요.

가능한 응답의 예는 다음과 같습니다.

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
...
<apps:property name='smartHost' value='smtpout.domain.com'/>
<apps:property name='smtpMode' value='SMTP'/>
</entry>

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 대한 자세한 내용은 HTTP 상태 코드를 참조하세요.

발신 이메일 게이트웨이 설정 업데이트

도메인의 발신 이메일 게이트웨이 설정을 업데이트하려면 게이트웨이 피드 URL로 HTTP PUT 요청을 보냅니다.

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/email/gateway

PUT 요청 XML은 다음과 같습니다.

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps="http://schemas.google.com/apps/2006">
<apps:property name='smartHost' value='smtp.out.domain.com' />
<apps:property name='smtpMode' value='SMTP' />
</atom:entry>

요청 속성은 다음과 같습니다.

스마트 호스트
SMTP 서버의 IP 주소 또는 호스트 이름. Google Workspace에서 발신 메일을 이 서버로 라우팅합니다.
SMTP 모드
기본값은 SMTP입니다. 다른 값인 SMTP_TLS는 메일을 전송할 때 TLS와의 연결을 보호합니다.

요청에 성공하면 이메일 게이트웨이 설정 상태와 함께 AtomPub 피드와 함께 HTTP 200 OK 상태 코드가 반환됩니다.

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 대한 자세한 내용은 HTTP 상태 코드를 참조하세요.

이메일 라우팅 설정 관리

먼저 XML 요청을 만듭니다.

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps="http://schemas.google.com/apps/2006">
<apps:property name='routeDestination' value='route-smtp.domain.com'/>
<apps:property name='routeRewriteTo' value='true'/>
<apps:property name='routeEnabled' value='true'/>
<apps:property name='bounceNotifications' value='true'/>
<apps:property name='accountHandling' value='can be either allAccounts | provisionedAccounts | unknownAccounts'/>
</atom:entry>

요청 속성은 다음과 같습니다.

경로 대상
이 목적지는 이메일이 라우팅되는 SMTP-In 메일 서버의 호스트 이름 또는 IP 주소입니다. Google의 호스트 이름 또는 IP 주소가 확인되어야 합니다. 메일 호스트 이름 해결에 대한 자세한 내용은 이메일 라우팅을 사용하여 Google Workspace 파일럿 실행하기를 참고하세요.
경로 다시 쓰기
true인 경우 메일의 SMTP 봉투의 to: 필드가 대상 호스트 이름 (user@destinations의 호스트 이름)으로 변경되고 메일이 대상 메일 서버의 이 사용자 주소로 전송됩니다. false인 경우 이메일은 대상 메일 서버에 있는 원본 메일의 to: 이메일 주소 (사용자@원본 호스트 이름)로 전송됩니다. 이는 관리 콘솔의 'SMTP 봉투 변경' 설정과 유사합니다. 자세한 내용은 이메일 라우팅을 위한 도메인 설정을 참고하세요.
routeEnabled
true이면 이메일 라우팅 기능이 사용 설정됩니다. false인 경우 기능이 사용 중지됩니다.
반송 알림
true인 경우 Google Workspace는 전송 실패 시 발신자에게 반송 알림을 전송하도록 사용 설정됩니다.
계정 처리

이 설정에 따라 도메인 내 다양한 유형의 사용자가 이메일 라우팅의 영향을 받는 방식이 결정됩니다.

  • allAccounts -- 모든 이메일을 이 목적지로 전송합니다.
  • provisionedAccounts -- 사용자가 Google Workspace에 있는 경우 이 목적지로 메일을 전송합니다.
  • unknownAccounts -- 사용자가 Google Workspace에 존재하지 않는 경우 이 대상으로 메일을 전송합니다. 이는 관리 콘솔의 '메일 전송' 설정과 유사합니다. 기본 요건 및 메일 라우팅 사용 방법에 대한 자세한 내용은 이메일 라우팅의 도메인 설정을 참고하세요. ~ 이 요청을 게시하려면 이메일 라우팅 피드 URL에 HTTP POST를 보내고 관리자 설정 서비스에 인증에 설명된 대로 Authorization 헤더를 포함합니다.

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/emailrouting

성공적인 응답은 HTTP 200 OK 상태 코드와 함께 보관 정보가 포함된 AtomPub 피드를 반환합니다.

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 대한 자세한 내용은 HTTP 상태 코드를 참조하세요.

2018년 10월 31일에 엔드포인트 서비스 종료

공지사항의 일환으로 다음 엔드포인트에 대한 지원이 중단되었습니다. 2018년 10월 31일에 서비스가 종료되어 더 이상 사용할 수 없습니다.

  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/general/defaultLanguage
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/general/organizationName
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/general/currentNumberOfUsers
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/general/maximumNumberOfUsers
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/supportPIN
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/customerPIN
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/adminSecondaryEmail
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/edition
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/creationTime
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/countryCode
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/appearance/customLogo
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/verification/mx