모바일 애플리케이션

[안드로이드/JAVA] The current user has insufficient permissions to perform the requested operation.

안드로이드Google Play Developer API를 통해 각종 서비스를 구현하려 할 때, PHP로 구현된 페이지를 실행하려 할 때 다음과 같은 에러 메시지가 출력되며 진행되지 않는 경우가 있습니다.

2019/08/15 20:17:22 [error] 10229#0: *36830 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Google_Service_Exception: {
 "error": {
  "errors": [
   {
    "domain": "androidpublisher",
    "reason": "permissionDenied",
    "message": "The current user has insufficient permissions to perform the requested operation."
   }
  ],
  "code": 401,
  "message": "The current user has insufficient permissions to perform the requested operation."
 }
}
...

여기서 살펴봐야 하는 에러는 ‘The current user has insufficient permissions to perform the requested operation.’ 입니다. 해석하면 요청된 명령을 실행하기 위한 적합한 권한이 해당 사용자에게는 없다는 뜻입니다.

먼저 첫번째 원인으로는 요청했을 때의 인증 정보가 잘못되었거나, 읽어오지 못하였거나, 만료된 경우에 발생합니다. 올바른 인증 정보를 요청하였는지 확인해 볼 필요가 있습니다.

두번째 원인으로는 인증 정보에서 사용된 사용자의 서비스 관련 권한 자체가 부여되지 않은 경우입니다.

 

Google Play Console로 이동하여 좌측에서 설정 – 개발자 계정 – API 액세스 메뉴를 클릭합니다. 이후 하단의 ‘서비스 계정’ 란을 살펴봅니다. 권한이 필요한 사용자를 이미 만들었다면, 해당 계정의 ‘권한 보기’를 클릭합니다.

다음으로 인증 정보에 사용되었던 사용자에 대한 설정 아이콘을 클릭한 후 ‘권한 변경’을 클릭합니다.

여기서 해당 사용자의 권한 정보를 확인할 수 있습니다. 잘못된 것이 없는지 확인해봅니다.

 

만약 위와 같은 문제들이 해결되었는데도 불구하고 문제가 지속된다면, 다음을 참고해 볼 필요가 있습니다.

구글 플레이 콘솔에서 새로운 사용자를 추가한 경우 해당 사용자의 권한을 취득받기 위해서는 최소 24시간 이상이 소요될 수 있습니다.

 

사용자 권한이 허용되는데까지 최대 하루정도의 시간이 필요한 것으로 보입니다. 계정의 권한 상태를 변경하지 않은 상태로 대략 24시간 후에 다시 시도해보면 될 것 같습니다.

JooTC

안녕하세요. 테크놀로지에 관심이 많은 블로거입니다.

Recent Posts

[iOS] Xcode ‘You do not have required contracts to perform an operation’ 해결

Xcode에서 iOS 애플리케이션을 빌드(Archive)하고 App Store Connect에 앱을 업로드하는 도중, 아래와 같은 에러가 발생하면서 더…

1개월 ago

[안드로이드] INSTALL_FAILED_INSUFFICIENT_STORAGE 해결

INSTALL_FAILED_INSUFFICIENT_STORAGE 문제 안드로이드 스튜디오에서 에뮬레이터를 실행하고 개발중인 애플리케이션을 실행하려 하면 로그 창에 아래와 같이 표시되면서…

7개월 ago

Zalgo 텍스트와 이를 방지하는 방법

인터넷 커뮤니티 사이트에서 게시글이나 댓글에 간혹 장난을 목적으로 작성된 특이한 글자를 볼 수 있습니다. 위…

9개월 ago

리눅스 kill, killall 명령어 – 특정 프로세스 종료하기

리눅스 명령어 - kill, killall 리눅스 kill 명령어는 특정 프로세스를 종료해주는 명령어입니다. 백그라운드에서 실행되고 있는…

9개월 ago

JavaScript typeof null이 ‘object’인 이유

JavaScript는 역사가 긴 스크립트 프로그래밍 언어입니다. 세월이 흐르면서 많은 자바스크립트 표준이 만들어졌고, 현재는 많은 문법적…

9개월 ago

Mocha Error: Resolution method is overspecified. 해결 방법

NodeJS 테스트 프레임워크인 Mocha는 비동기 테스트를 지원합니다. 간혹 특정 테스트 스크립트를 작성하고 실행하면 아래와 같이…

9개월 ago