
찾기 어려운 권한, 페더레이션 트러스트, 메일 전달 규칙 및 위임된 액세스를 위해 Azure AD 및 Exchange Online 구성을 감사하여 조직이 클라우드 환경을 보호할 수 있도록 지원합니다.
이 도구는 Azure AD/O365 테넌트에서 다음 구성들을 쿼리하여 찾기 어려운 권한 및 구성 설정을 파악할 수 있도록 하며, 조직이 이러한 환경을 보호하는 데 도움을 줍니다.
Exchange Online (O365):
Azure AD:
테넌트 파트너 정보 쿼리: 테넌트 파트너 정보(파트너에게 할당된 역할 포함)를 보려면 Microsoft 365 관리 센터에 전역 관리자로 로그인해야 합니다.
https://admin.microsoft.com/AdminPortal/Home#/partners
다음 PowerShell 모듈이 필요하며 자동으로 설치됩니다:
참고: 쿼리되는 구성의 전체 범위를 반환하려면 다음 역할이 필요합니다:
전역 관리자 권한이 없을 경우 도구는 그 결과로 어떤 정보를 사용할 수 없는지 알려줍니다.
매개 변수 미지정: 스크립트가 실행되는 디렉터리에 날짜와 시간(YYYYDDMMTHHMM)으로 이름이 지정된 폴더가 자동으로 생성됩니다. 기본 인증 방법은 각 연결마다 프롬프트를 표시하여 MFA와의 호환성을 지원합니다.
.\Get-CRTReport.ps1
-BasicAuth 매개 변수:
[선택 사항] 사용자 계정에 대해 MFA가 적용되지 않은 경우, 이 매개 변수를 사용하여 한 번만 인증 프롬프트가 표시되고 Get-Credential을 사용하여 자격 증명을 저장합니다. (권장되지 않음)
.\Get-CRTReport.ps1 -BasicAuth
-JobName 매개 변수:
[선택 사항] JobName 매개 변수를 사용하여 여러 테넌트를 구분할 수 있습니다. JobName을 지정하지 않으면 작업 디렉터리 내에 날짜/시간 형식의 폴더가 배치됩니다.
.\Get-CRTReport.ps1 -JobName MyJobName
-WorkingDirectory 매개 변수:
[선택 사항] 작업에 대해 다른 작업 디렉터리를 지정하려면 이 매개 변수를 사용할 수 있습니다. 기본 작업 디렉터리는 스크립트가 실행되는 디렉터리입니다.
.\Get-CRTReport.ps1 -JobName MyJobName -WorkingDirectory 'C:\Path\to\Job\Folder'
-Commands 매개 변수:
[선택 사항] 이 매개 변수로 실행하려는 특정 명령을 따옴표 안에 쉼표 또는 공백으로 구분하여 지정합니다.
.\Get-CRTReport.ps1 -JobName MyJobName -WorkingDirectory 'C:\Path\to\Job\Folder' -Commands "Command1,Command2"
-AzureEnvironmentName & -ExchangeEnvironmentName 매개 변수:
[선택 사항] 이 매개 변수로 Azure 또는 Exchange 환경 이름을 지정합니다. 탭 완성을 사용하여 허용되는 값을 검색할 수 있습니다.
.\Get-CRTReport.ps1 -ExchangeEnvironmentName O365USGovGCCHigh -AzureEnvironmentName AzureUSGovernment
사용 가능한 명령:
FedConfig
FedTrust
ClientAccess
RemoteDomains
SMTPForward
TransportRules
FullAccessGranted
AnyAccessGranted
SendAsGranted
EXOPowerShell
AuditBypassEnabled
HiddenMailboxes
KeyCredentials
O365AdminGroups
DelegateAppPerms
AdminAuditLogConfig
-Interactive 매개 변수:
[선택 사항] 일부 명령은 테넌트의 데이터 양에 따라 처리 시간이 오래 걸릴 수 있습니다. Interactive 매개 변수를 사용하면 모듈이 실행되기 전에 특정 명령을 건너뛸 수 있는 옵션이 제공됩니다.
.\Get-CRTReport.ps1 -JobName MyJobName -WorkingDirectory 'C:\Path\to\Job\Folder' -Interactive
각 실행 시 CRT는 각 쿼리에 대한 보고서를 JSON 형식뿐만 아니라 더 읽기 쉬운 .TXT 및 .CSV 형식으로 출력합니다:
매개 변수 미지정: 스크립트가 실행되는 디렉터리에 날짜와 시간(YYYYDDMMTHHMM)으로 이름이 지정된 폴더가 자동으로 생성됩니다. MFA를 지원하기 위해 기본 인증 방법은 각 연결마다 사용자에게 로그인하라는 프롬프트를 표시합니다.
YYYYDDMMTHHMM\output.log (콘솔 로깅의 하드 카피)YYYYDDMMTHHMM\_CRTReportSummary.txt (실행된 스크립트 요약 및 안내를 위한 조사 팁)YYYYDDMMTHHMM\Reports\<report>.csv (해당하는 경우 CSV 출력의 보고서)YYYYDDMMTHHMM\Reports\<report>.txt (해당하는 경우 TXT 출력의 보고서)YYYYDDMMTHHMM\Reports\json\<report>.json (각 보고서는 추가 상세 정보를 위해 JSON 출력과 함께 제공됨)Get-EXOMailbox -ResultSize Unlimited | Get-EXOMailboxPermission | Where-Object { ($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF")} | Export-Csv "AnyAssignedPerms.csv" -NoTypeInformation -Encoding Default
Get-EXOMailbox -ResultSize Unlimited | Get-EXOMailboxPermission | Where-Object { ($_.AccessRights -eq "FullAccess") -and ($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF")} | Export-Csv "FullAccessPerms.csv" -NoTypeInformation -Encoding Default
버그를 발견하셨다면 Issues 탭을 사용하여 새 문제를 보고하거나 기존 문제에 의견을 추가해 주십시오.
도구에 대한 권장 사항이 있거나 중요한 에스컬레이션이 필요한 경우 [email protected]으로 이메일을 보내주십시오.