사용자 인증 정보 보호

이 가이드에서는 애플리케이션과 사용자 인증 정보가 안전한지 확인하는 방법을 설명합니다.

OAuth 앱 인증 완료하기

Google Ads API의 OAuth 2.0 범위는 제한된 범위로 분류되므로 애플리케이션을 프로덕션화하기 전에 OAuth 애플리케이션 인증 절차를 완료해야 합니다. 자세한 내용은 Google ID 문서고객센터 도움말을 참고하세요.

애플리케이션 사용자 인증 정보 보호

애플리케이션의 OAuth 2.0 클라이언트 ID와 클라이언트 비밀번호를 안전하게 보호해야 합니다. 이러한 사용자 인증 정보는 사용자와 Google에서 애플리케이션을 식별하는 데 도움이 되므로 신중하게 처리해야 합니다. 이러한 애플리케이션 사용자 인증 정보를 비밀번호처럼 취급해야 합니다. 공개 포럼에 게시하거나, 이메일 첨부파일에 이러한 사용자 인증 정보가 포함된 구성 파일을 전송하거나, 사용자 인증 정보를 하드 코딩하거나, 코드 저장소에 커밋하는 등 안전하지 않은 메커니즘을 사용하여 사용자 인증 정보를 공유하면 안 됩니다. 가능하면 Google Cloud Secret Manager 또는 AWS Secret Manager와 같은 보안 비밀 관리자를 사용하는 것이 좋습니다.

OAuth 2.0 클라이언트 보안 비밀번호가 도용된 경우 비밀번호를 재설정할 수 있습니다. 개발자 토큰을 재설정할 수도 있습니다.

개발자 토큰 보안

개발자 토큰을 사용하면 계정에 API를 호출할 수 있지만, 호출하는 데 사용할 수 있는 계정에는 제한이 없습니다. 따라서 손상된 개발자 토큰을 다른 사람이 사용하여 애플리케이션에 표시된 호출을 만들 수 있습니다. 이러한 시나리오를 방지하려면 다음과 같은 예방 조치를 취하세요.

  • 개발자 토큰을 비밀번호처럼 취급하세요. 공개 포럼에 게시하거나 개발자 토큰이 포함된 구성 파일을 이메일 첨부파일로 포함하는 등 안전하지 않은 메커니즘을 사용하여 이 파일을 공유하지 마세요. 가능하면 Google Cloud Secret Manager 또는 AWS Secret Manager와 같은 보안 비밀 관리자를 사용하는 것이 좋습니다.

  • 개발자 토큰이 손상된 경우 토큰을 재설정해야 합니다.

    • Google Ads API를 신청할 때 사용한 Google Ads 관리자 계정에 로그인합니다.
    • 도구 및 설정 > API 센터로 이동합니다.
    • 개발자 토큰 옆에 있는 드롭다운 화살표를 클릭합니다.
    • 토큰 재설정 링크를 클릭합니다. 이전 개발자 토큰은 즉시 작동이 중지됩니다.
    • 새 개발자 토큰을 사용하려면 애플리케이션의 프로덕션 구성을 업데이트합니다.

서비스 계정 보호

서비스 계정이 Google Ads API에서 올바르게 작동하려면 도메인 전체 가장이 필요합니다. 또한 Google Workspace 고객이어야 도메인 전체 가장을 설정할 수 있습니다. 따라서 Google Ads API를 호출할 때 서비스 계정을 사용하지 않는 것이 좋습니다. 하지만 서비스 계정을 사용하기로 결정한 경우 다음과 같이 보호해야 합니다.

사용자 토큰 보안

앱에서 여러 사용자를 승인하는 경우 사용자의 갱신 및 액세스 토큰을 보호하기 위한 추가 조치를 취해야 합니다. 토큰을 저장 상태로 안전하게 저장하고 일반 텍스트로 전송하지 마세요. 플랫폼에 적합한 보안 저장소 시스템을 사용하세요.

갱신 토큰 취소 및 만료 처리

앱에서 승인의 일부로 OAuth 2.0 갱신 토큰을 요청하는 경우 무효화 또는 만료도 처리해야 합니다. 갱신 토큰은 여러 가지 이유로 무효화될 수 있으며 애플리케이션은 다음 로그인 세션 중에 사용자를 다시 승인하거나 데이터를 적절하게 정리하여 적절하게 응답해야 합니다. 크론 작업과 같은 오프라인 작업은 요청을 계속하는 대신 갱신 토큰이 만료된 계정을 감지하고 기록해야 합니다. Google은 API 서버의 안정성을 유지하기 위해 지속적으로 오류가 많이 발생하는 애플리케이션을 제한할 수 있습니다.

여러 범위의 동의 관리

앱에서 여러 OAuth 2.0 범위에 대한 승인을 요청하는 경우 사용자가 요청된 모든 OAuth 범위를 부여하지 않을 수 있습니다. 앱은 관련 기능을 사용 중지하여 범위 거부를 처리해야 합니다. 범위가 필요한 특정 기능을 사용하겠다는 의도를 분명히 한 후에만 사용자에게 메시지를 다시 표시할 수 있습니다. 이러한 경우 증분 승인을 사용하여 적절한 OAuth 범위를 요청합니다.

앱의 기본 기능에 여러 범위가 필요한 경우 동의를 요청하기 전에 사용자에게 이 요구사항을 설명하세요.