Admin SDK 디렉터리 서비스를 사용하면 Apps Script에서 Admin SDK의 Directory API를 사용할 수 있습니다. 이 API를 사용하면 Google Workspace 도메인 (리셀러 포함)의 관리자가 도메인의 기기, 그룹, 사용자, 기타 항목을 관리할 수 있습니다.
참조
이 서비스에 관한 자세한 내용은 Admin SDK Directory API의 참조 문서를 참고하세요. Apps Script의 모든 고급 서비스와 마찬가지로 Admin SDK 디렉터리 서비스는 공개 API와 동일한 객체, 메서드, 매개변수를 사용합니다. 자세한 내용은 메서드 서명 결정 방법을 참고하세요.
/** * Lists all the users in a domain sorted by first name. * @see https://developers.google.com/admin-sdk/directory/reference/rest/v1/users/list */functionlistAllUsers(){letpageToken;letpage;do{page=AdminDirectory.Users.list({domain:'example.com',orderBy:'givenName',maxResults:100,pageToken:pageToken});constusers=page.users;if(!users){console.log('Nousersfound.');return;}// Print the user's full name and email.for(constuserofusers){console.log('%s(%s)',user.name.fullName,user.primaryEmail);}pageToken=page.nextPageToken;}while(pageToken);}
/** * Get a user by their email address and logs all of their data as a JSON string. * @see https://developers.google.com/admin-sdk/directory/reference/rest/v1/users/get */functiongetUser(){// TODO (developer) - Replace userEmail value with yoursconstuserEmail='liz@example.com';try{constuser=AdminDirectory.Users.get(userEmail);console.log('Userdata:\n%s',JSON.stringify(user,null,2));}catch(err){// TODO (developer)- Handle exception from the APIconsole.log('Failedwitherror%s',err.message);}}
사용자 추가
이 샘플은 필수 정보만 포함하여 도메인에 새 사용자를 추가합니다. 사용자 필드의 전체 목록은 API의 참고 문서를 참고하세요.
/** * Adds a new user to the domain, including only the required information. For * the full list of user fields, see the API's reference documentation: * @see https://developers.google.com/admin-sdk/directory/v1/reference/users/insert */functionaddUser(){letuser={// TODO (developer) - Replace primaryEmail value with yoursprimaryEmail:'liz@example.com',name:{givenName:'Elizabeth',familyName:'Smith'},// Generate a random password string.password:Math.random().toString(36)};try{user=AdminDirectory.Users.insert(user);console.log('User%screatedwithID%s.',user.primaryEmail,user.id);}catch(err){// TODO (developer)- Handle exception from the APIconsole.log('Failedwitherror%s',err.message);}}
/** * Creates an alias (nickname) for a user. * @see https://developers.google.com/admin-sdk/directory/reference/rest/v1/users.aliases/insert */functioncreateAlias(){// TODO (developer) - Replace userEmail value with yoursconstuserEmail='liz@example.com';letalias={alias:'chica@example.com'};try{alias=AdminDirectory.Users.Aliases.insert(alias,userEmail);console.log('Createdalias%sforuser%s.',alias.alias,userEmail);}catch(err){// TODO (developer)- Handle exception from the APIconsole.log('Failedwitherror%s',err.message);}}
/** * Lists all the groups in the domain. * @see https://developers.google.com/admin-sdk/directory/reference/rest/v1/groups/list */functionlistAllGroups(){letpageToken;letpage;do{page=AdminDirectory.Groups.list({domain:'example.com',maxResults:100,pageToken:pageToken});constgroups=page.groups;if(!groups){console.log('Nogroupsfound.');return;}// Print group name and email.for(constgroupofgroups){console.log('%s(%s)',group.name,group.email);}pageToken=page.nextPageToken;}while(pageToken);}
/** * Adds a user to an existing group in the domain. * @see https://developers.google.com/admin-sdk/directory/reference/rest/v1/members/insert */functionaddGroupMember(){// TODO (developer) - Replace userEmail value with yoursconstuserEmail='liz@example.com';// TODO (developer) - Replace groupEmail value with yoursconstgroupEmail='bookclub@example.com';constmember={email:userEmail,role:'MEMBER'};try{AdminDirectory.Members.insert(member,groupEmail);console.log('User%saddedasamemberofgroup%s.',userEmail,groupEmail);}catch(err){// TODO (developer)- Handle exception from the APIconsole.log('Failedwitherror%s',err.message);}}
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2024-12-21(UTC)"],[[["The Admin SDK Directory service enables Google Workspace administrators to manage domain resources like users, groups, and devices within Apps Script using the Directory API."],["This advanced service requires enabling both the Admin SDK and the specific service before use, and it mirrors the functionality of the public Directory API."],["Sample code snippets demonstrate common tasks like listing and managing users, creating aliases, and handling groups and their members via the Admin SDK Directory service."],["Before using the sample code, remember to enable the Admin SDK, replace placeholder values with your specific data, and refer to the documentation for details on API usage and error handling."]]],[]]