Microsoft 365 / PowerShell / Microsoft Graph

Microsoft Graph PowerShell은 관리자와 개발자가 Microsoft Graph API를 PowerShell cmdlet을 사용하여 상호 작용할 수 있게 해주는 모듈입니다. 이 모듈은 Azure Active Directory(Azure AD), SharePoint, Teams 등과 같은 Microsoft 365 서비스와 관련된 자동화 작업을 간소화합니다.

실행 정책 확인

  • 현재 실행 정책을 확인합니다.
Get-ExecutionPolicy
  • 만약 Restricted라고 나오면 아래와 같이 명령하여 RemoteSigned로 바꿉니다.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

모듈 설치 및 연결

모듈 설치

  • Microsoft Graph 모듈을 설치합니다.
Install-Module Microsoft.Graph -Scope CurrentUser

연결

  • Microsoft Graph에 연결합니다. 아무런 옵션이 없으면 권한은 User.Read입니다.
Connect-MgGraph
  • 작업에 필요한 적절한 권한을 부여할 수 있습니다. 다음과 같이 하면 모든 사용자의 프로필 정보를 읽고 모든 그룹을 읽고 업데이트할 수 있는 권한을 부여합니다.
Connect-MgGraph -Scopes "User.Read.All", "Group.ReadWrite.All"
  • 자주 사용되는 권한은 다음과 같습니다.
    사용자 관련 권한
    User.Read : 사용자가 로그인한 사용자에 대한 기본 프로필 정보를 읽습니다.
    User.ReadBasic.All : 모든 사용자의 기본 프로필 정보를 읽습니다.
    User.Read.All : 모든 사용자의 전체 프로필 정보를 읽습니다.
    User.ReadWrite : 로그인한 사용자의 프로필을 읽고 업데이트합니다.
    User.ReadWrite.All : 모든 사용자의 프로필을 읽고 업데이트합니다.
    그룹 관련 권한
    Group.Read.All : 모든 그룹의 기본 정보(예: 이름, 설명)를 읽습니다.
    Group.ReadWrite.All : 모든 그룹의 기본 정보를 읽고 업데이트합니다.
    GroupMember.Read.All : 모든 그룹의 멤버 정보를 읽습니다.
    GroupMember.ReadWrite.All : 모든 그룹의 멤버 정보를 읽고 업데이트합니다.
  • 전체 권한 목록은 다음 링크에 있습니다.
    https://learn.microsoft.com/ko-kr/graph/permissions-reference

연결 끊기

  • 연결을 끊고 싶다면 다음과 같이 명령합니다.
Disconnect-MgGraph

사용자 관리

사용자 조회

  • 모든 사용자의 DisplayName, Id, Mail, UserPrincipalName을 출력합니다.
Get-MgUser -All
  • 사용자 abc@manualfactory.net의 모든 속성을 출력합니다.
Get-MgUser -UserId abc@manualfactory.net | Select *

사용자 생성

  • 성 : 가
    이름 : 가나
    표시 이름 : 가 가나
    사용자 이름 : gnga@manualfactory.net
    비밀번호 : xxxxxxxx
$PasswordProfile = @{ Password = 'xxxxxxxx' }
New-MgUser -Surname '가' -GivenName '가나' -DisplayName '가 가나' -UserPrincipalName 'gnga@manualfactory.net' -MailNickName 'gnga' -PasswordProfile $PasswordProfile -AccountEnabled

사용자 삭제

 

라이선스 관리

  • 보유한 라이선스를 출력합니다.
Get-MgSubscribedSku -All | Select *
  • 특정 사용자에게 할당된 라이선스를 출력합니다.
Get-MgUserLicenseDetail -UserId abc@manualfactory.net
  • 특정 사용자에게서 라이선스를 제거합니다. SkuId는 라이선스 정보에서 확인합니다.
Set-MgUserLicense -UserId abc@manualfactory.net -RemoveLicenses @{ SkuId = "xxxx" }

 

기타

Get-MgUser 에러

Get-MgUser 명령 시 다음과 같은 에러가 뜬다면

Get-MgUser : 'Get-MgUser' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다.

Microsoft.Graph.Users를 설치합니다.

Install-Module Microsoft.Graph.Users -Scope CurrentUser

 

같은 카테고리의 다른 글

Microsoft 365 / Microsoft Cloud App Security

Microsoft Cloud App Security(MCAS)는 Microsoft의 클라우드 기반 보안 솔루션으로, 클라우드 애플리케이션과 서비스를 사용하는 환경에서의 데이터 보호 및 위협 탐지를 지원합니다. MCAS는 **Cloud Access Security Broker (CASB)**로서 다양한 SaaS(Software as a Service) 애플리케이션을 보호하고, 클라우드 애플리케이션 사용에 대한 가시성, 데이터 보호, 위협 방지 및 실시간 제어 기능을 제공합니다. 이를 통해 조직이 ...

워드 / 목차 만드는 방법

워드 / 목차 만드는 방법

워드로 글을 쓸 때 목차를 만드는 것이 좋습니다. 전체 목차를 먼저 정하면 글이 체계적이 되고, 문서를 탐색하기도 편합니다. 워드에서 목차를 만드는 방법은 수동 목차와 자동 목차가 있는데, 주로 사용하는 자동 목차를 어떻게 만드는지 알아보겠습니다. 스타일 적용 자동 목차는 스타일이 제목 1, 제목 2 등으로 지정된 문단을 가져와서 목차를 만듭니다. 따라서 목차를 만들기 기 ...

파워포인트 / 그룹화 하는 방법, 그룹 해제하는 방법

파워포인트 / 그룹화 하는 방법, 그룹 해제하는 방법

여러 도형을 마치 하나의 도형처럼 만드는 것을 그룹화한다고 한다. 도형 뿐 아니라 텍스트, 이미지 등 다양한 개체를 그룹화할 수 있다. 그룹으로 만든 것을 각각의 개체로 분리하는 것을 그룹 해제라고 한다. 그룹화 하기 그룹화하려는 대상을 선택한다. 마우스 드래그로 선택하거나, Ctrl 키를 누른 상태에서 하나씩 클릭한다. 선택을 마쳤으면 마우스 우클릭한 후 을 ...

엑셀 / 날짜를 텍스트로, 텍스트를 날짜로 변환하는 방법

엑셀 / 날짜를 텍스트로, 텍스트를 날짜로 변환하는 방법

날짜를 텍스트로 변환 날짜 형식의 데이터는 날짜처럼 보이지만, 실제 값은 1900년 1월 1일부터 시작되는 일련 번호이다. 즉, 1900-01-01은 1이고, 1900-01-02는 2이다. 날짜는 계산에 사용할 수 있도록 순차적인 일련 번호로 저장됩니다. 기본적으로 1900년 1월 1일이 일련 번호 1이고, 2008년 1월 1일은 1900년 1월 1일 이후 39,447일이 지난 날짜이므로 일련 번호가 39448입니다. 따라서 날짜 2022-10-25를 ...

워드 / 한자 입력하는 방법

워드 / 한자 입력하는 방법

워드에 한자를 입력하는 방법은 간단합니다. 한글을 입력한다. 한자 키를 누르고 한자를 선택한다. 예를 들어 '한'을 입력하고 스페이스바 왼쪽에 있는 한자 키를 누르면 '한'에 해당하는 한자들이 나옵니다. 원하는 한자를 선택하고 을 클릭합니다. 입력 형태에서 한자만 나타낼지, 한글과 한자를 같이 나타낼지 정할 수 있습니다. '한자'를 입력하고 한자 키를 누르면 단어에 해당하는 한자가 나옵니다. 원하는 단어를 선택하고 을 ...

엑셀 / 암호 설정하는 방법, 암호 해제하는 방법

엑셀 / 암호 설정하는 방법, 암호 해제하는 방법

암호 종류 엑셀에는 두 가지 암호가 있어요. 하나는 열기 암호, 또 하나는 쓰기 암호입니다. 둘 중 하나만 설정해도 되고, 둘 다 설정해도 돼요. 열기 암호를 설정하면 문서를 열 때 암호가 필요합니다. 암호를 모르면 문서 내용을 볼 수 없어요. 쓰기 암호를 설정하면 문서를 수정할 때 암호가 필요합니다. 암호를 몰라도 문서의 내용은 볼 수 있어요. 열기 암호와 ...

엑셀 / 함수 / RADIANS, DEGREES / 도를 라디안으로, 라디안을 도로 변환하는 함수

엑셀 / 함수 / RADIANS, DEGREES / 도를 라디안으로, 라디안을 도로 변환하는 함수

개요 RADIANS는 도를 라디안으로, DEGREES는 라디안을 도로 변환하는 함수입니다. 구문 RADIANS(angle) angle : 필수 요소입니다. 변환할 도 단위의 각도를 입력합니다. DEGREES(angle) angle : 필수 요소입니다. 변환할 라디안 단위의 각도를 입력합니다. 파이는 PI() 함수를 이용합니다. 예제

엑셀 / 함수 / DAYS / 두 날짜 사이의 일수를 계산하는 함수

엑셀 / 함수 / DAYS / 두 날짜 사이의 일수를 계산하는 함수

개요 DAYS 함수는 두 날짜 사이의 일수를 반환하는 함수입니다. 구문 DAYS(end_date, start_date) end_date : 필수 요소로, 끝나는 날짜입니다. start_date : 필수 요소로, 시작하는 날짜입니다. 끝나는 날짜를 앞에, 시작하는 날짜를 뒤에 입력한다는 것에 주의합니다. 끝나는 날짜가 시작하는 날짜보다 이전이면 음수를 반환합니다. 예제 2018년 1월 1일부터 2018년 1월 15일까지의 일수를 계산하는 예제입니다. 만약 수식에 날짜를 직접 입력하고 싶다면 날짜를 따옴표로 감쌉니다. =DAYS("2018-01-15","2018-01-01")

엑셀 / PDF 형식으로 저장하는 방법

엑셀 / PDF 형식으로 저장하는 방법

엑셀은 PDF 저장 기능을 갖고 있습니다. Acrobat 등 PDF 변환 프로그램을 설치하지 않아도 PDF 형식의 문서로 변환할 수 있습니다. PDF로 저장하는 방법은 두 가지가 있는데, 하나는 을 이용하는 게 더 편합니다. F12를 눌러서  창을 엽니다. 파일 형식을 PDF로 ...

파워포인트 / 한 페이지에 여러 슬라이드 인쇄하는 방법

파워포인트 / 한 페이지에 여러 슬라이드 인쇄하는 방법

한 페이지에 여러 슬라이드 인쇄 파워포인트로 만든 프리젠테이션을 유인물로 바꿀 때, 한 페이지에 하나의 슬라이드가 들어가도록 인쇄하는 것은 비효율적입니다. PPT는 특성상 텍스트가 그리 많지 않고 글자도 큼직하기 때문입니다. 한 페이지에 여러 슬라이드가 들어가도록 유인물을 만들면 보기에도 편하고, 종이도 절약됩니다. 제 경험으로는, 텍스트가 아주 적은 편일 때는 한 페이지에 4개의 슬라이드, 텍스트가 좀 ...