2013-07-18 4 views
1

Google 조직은 Google Apps에 SSO 용 SAML을 사용합니다. SSO를 사용하려면 API를 통해 비밀번호 변경 기능을 관리해야합니다. Provisioning API는 Admin SDK Directory API를 사용하지 않으므로이 API에 맞서 개발 중입니다.directory.user.update api를 호출하는 데 필요한 권한은 무엇입니까?

내가 개발중인 것은 최종 사용자가 Google OAuth2를 사용하여 내 애플리케이션에 로그인한다는 것입니다. 그런 다음 사용자 액세스 토큰을 사용하여 https://www.googleapis.com/admin/directory/v1/users/ API를 호출하여 새 암호를 입력하려고 시도하지만 403 "이 리소스/api에 액세스 할 수 없음"오류가 발생합니다.

내 질문에 사용자가 자신의 암호를 업데이트 할 수 있도록하려면 어떤 권한이 필요합니까? 이 API를 GET으로 호출하면 사용자 정보를 성공적으로 검색 할 수 있지만 새 비밀번호 (또는 그와 관련된 다른 필드)를 넣으려고하면 실패합니다. 여기

내 요청 및 응답의 예는 다음과 같습니다 요청 :

PUT https://www.googleapis.com/admin/directory/v1/users/user%40domain.org?key={YOUR_API_KEY} 

Content-Type: application/json 
Authorization: Bearer ya29.AHES6ZT_7onp48edpClD72X-************************* 
X-JavaScript-User-Agent: Google APIs Explorer 

{ 
    "password": "wlKsf.##2af" 
} 

응답 :

{ 
"error": { 
    "errors": [ 
    { 
    "domain": "global", 
    "reason": "forbidden", 
    "message": "Not Authorized to access this resource/api" 
    } 
    ], 
    "code": 403, 
    "message": "Not Authorized to access this resource/api" 
} 
} 

답변

2

super admins, delegated admins and resellers가 관리 SDK 디렉토리 API에 액세스 할 수 있습니다.

API를 통해 사용자를 업데이트하고 웹 응용 프로그램에이 위임 된 관리자 용으로 생성 된 OAuth 토큰을 활용할 수있는 액세스 권한이있는 위임 된 관리자를 만드는 것이 좋습니다.

+0

제이, 응답 해 주셔서 감사합니다. 내 암호를 변경할 수 없다는 의미입니다. 방금 테스트 계정에서 다시 테스트했는데 제대로 작동했습니다. –

관련 문제