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 / Viva Engage / 소개

Microsoft 365 / Viva Engage / 소개

Microsoft 365 Viva Engage는 Microsoft Viva 플랫폼의 일환으로, 직원들의 참여와 소통을 증진시키기 위한 소셜 네트워크 및 커뮤니케이션 도구입니다. Viva Engage는 기존의 Yammer 기능을 확장하여, 기업 내에서 직원들이 아이디어를 공유하고, 협력하며, 서로 연결될 수 있도록 지원합니다. 주요 기능 커뮤니티 및 그룹 직원들이 관심사나 업무 영역에 따라 커뮤니티와 그룹을 생성하고 참여할 수 있습니다. 그룹 내에서 질문을 ...

Microsoft 365 / PowerShell / SharePoint Online

모듈 설치 관리자 권한으로 PowerShell을 실행합니다. 다음과 같이 명령하여 모듈을 설치합니다. Install-Module -Name Microsoft.Online.SharePoint.PowerShell 연결 예를 들어 테넌트 ID가 abc라면 다음과 같이 명령하여 연결합니다. Connect-SPOService -Url https://abc-admin.sharepoint.com 연결을 끊는 명령어는 다음과 같습니다. DisConnect-SPOService 사이트 조회 모든 사이트의 URL, Owner, Storage Quota를 출력합니다. Get-SPOSite -Limit All 모든 사이트의 모든 속성을 출력합니다. Get-SPOSite -Limit All | Select * 모든 사이트의 Title, Url, Status, IsTeamsConnected를 출력합니다. Get-SPOSite -Limit ...

파워포인트 / 모든 슬라이드에 이미지(로고, 워터마크) 한 번에 삽입하는 방법

파워포인트 / 모든 슬라이드에 이미지(로고, 워터마크) 한 번에 삽입하는 방법

환경 Windows 10 / Microsoft Office 2016 슬라이드 마스터 회사 로고, 워터마크 등 모든 슬라이드에 넣어야 하는 이미지가 있을 수 있습니다. 각각의 슬라이드에서 이미지를 삽입하면 너무 번거롭고, 이미지가 바뀌거나 위치가 바뀌는 등 수정할 것이 생기면 모두 다시 작업해야 합니다. 공통으로 들어가는 이미지는 슬라이드 마스터를 이용해서 넣는 게 좋습니다. 삽입하는 것도 편하고, 수정하는 것도 편하고, ...

워드 / 하이퍼링크 자동으로 만들어지지 않도록 하는 방법

워드 / 하이퍼링크 자동으로 만들어지지 않도록 하는 방법

워드에 홈페이지 주소나 메일 주소를 입력하고 스페이스바로 한 칸 띄거나 엔터키를 누르면 하이퍼링크로 바뀐다. 상황에 따라 편리할 수도 불편할 수도 있는데, 만약 불편하다면 옵셔에서 이 기능을 끌 수 있다. 으로 들어간다. 왼쪽에서 을 클릭한다. 오른쪽에서 을 클릭한다. 탭으로 간다. 을 클릭하여 설정을 ...

워드 / 줄 간격, 문단 사이 간격 설정하는 방법

워드 / 줄 간격, 문단 사이 간격 설정하는 방법

워드로 문서 작성할 때 여러 가지 간격을 조정하게 됩니다. 주요 간격은 다음과 같습니다. 줄 간격 문단 사이 간격 글자 사이 간격 이 중에서 줄 간격과 문단 사이 간격을 설정하는 방법을 알아봅니다. 줄 간격 줄 간격을 설정하려는 문단에 커서를 위치시킵니다. 문단에 대한 설정이라 커서만 위치시켜도 됩니다. 만약 여러 문단이라면 드래그하여 선택합니다.  탭에 있는 줄 간격 설정 아이콘을 ...

엑셀 / 스파크라인 / 데이터를 시각적으로 보여주기

엑셀 / 스파크라인 / 데이터를 시각적으로 보여주기

스파크라인 스파크라인은 데이터를 시각적으로 나타내줍니다. 챠트와 비슷해서 미니 챠트라고 부르기도 합니다. 챠트와 스파크라인의 차이점 중의 하나는, 스파크라인은 셀에 속한다는 것입니다. 그리고 셀의 값이 아니라 배경으로 만들어집니다. 스파크라인 만들기 이 있습니다. 적절한 모양을 정하고 클릭합니다.(모양은 나중에 바꿀 수 있습니다.) 라는 창이 뜹니다. 범위를 선택하고 을 클릭하면 스파크라인이 만들어집니다. 스파크라인 모양 바꾸기 스파크라인을 선택하면 디자인 탭이 ...

워드 / 서식만 복사해서 붙여넣기

워드 / 서식만 복사해서 붙여넣기

서식은 스타일로 만드는 것이 좋습니다. 그래야 적용하기도 편하고 수정하기도 편합니다. 하지만 짧고 간단한 문서라면 스타일을 사용하는 것보다 개별적으로 모양을 만드는 것이 편할 수 있습니다. 그렇게 만든 어떤 문단의 모양을 다른 문단에 적용시키려면 어떻게 할까요? 워드에는 서식만 복사해서 붙여넣는 기능이 있어서 쉽게 처리할 수 있습니다. 서식만 복사해서 붙여넣기 복사하려는 서식이 있는 곳에 커서를 위치시키고 마우스 ...

파워포인트 / 슬라이드 추가, 순서 변경, 레이아웃 변경, 복제, 삭제

파워포인트 / 슬라이드 추가, 순서 변경, 레이아웃 변경, 복제, 삭제

슬라이드 추가하기 홈 탭의 밑의 화살표를 클릭하면 레이아웃을 선택해서 슬라이드를 추가할 수 있습니다. 슬라이드 위치 바꾸기 마우스로 슬라이드를 선택하고 드래그해서 원하는 위치로 이동합니다. 레이아웃 변경하기 레이아웃을 변경하려는 슬라이드를 선택하고 홈 탭의 을 클릭합니다. 그리고 원하는 모양을 선택합니다. 마우스 우클릭하여 변경할 수도 있습니다. 슬라이드 복제하기 슬라이드를 선택하고 마우스 ...

엑셀 / 시트의 눈금선 없애는 방법

엑셀 / 시트의 눈금선 없애는 방법

눈금선 엑셀의 시트에는 선이 있어요. 모니터에만 나오고 인쇄할 때는 나오지 않는 선이에요. 이 선을 눈금선이라고 합니다. 눈금선이 있는 이유는 셀의 위치를 파악하기 쉽게 하려는 거에요. 눈금선 없이 한동안 써봤는데 꽤 불편하더군요. 눈금선이 있는 게 좋아요. 그런데, 눈금선이 있는 게 더 불편한 경우가 있어요. 바로 모양을 꾸밀 때에요. 인쇄용 보고서를 만들기 위해 선을 그리고 ...

엑셀 / 저장 시 기본 파일 형식 설정하는 방법

엑셀 / 저장 시 기본 파일 형식 설정하는 방법

엑셀에서 작업 후 저장할 때 여러 가지 형식의 파일로 저장할 수 있다. 기본값은 보통 인데... 로 설정 매크로를 많이 사용하여 기본 저장 파일 형식을 로 기본값을 설정 하고 싶을 수 있다. 이러한 설정은 에서 한다. 왼쪽에서 을 클릭한다. [다음 ...