비활성 사용자 계정을 검색하고 조사하는 방법
대규모 환경에서 직원이 조직을 떠날 때 사용자 계정이 항상 삭제되는 것은 아닙니다. 이는 보안 위험을 의미하므로 IT 관리자는 이러한 사용되지 않는 사용자 계정을 감지하고 해결해야 합니다.
이 문서에서는 Microsoft Entra ID에서 사용되지 않는 사용자 계정을 처리하는 방법을 설명합니다.
참고 항목
이 문서는 Microsoft Entra ID에서 비활성 사용자 계정을 찾는 경우에만 적용됩니다. Azure AD B2C에서 비활성 계정을 찾는 데는 적용되지 않습니다.
필수 조건
Microsoft Graph를 사용하여 lastSignInDateTime
속성에 액세스하려면 다음을 수행합니다.
Microsoft Entra ID P1 또는 P2 버전 라이선스가 필요합니다.
앱에 다음 Microsoft Graph 권한을 부여해야 합니다.
- AuditLog.Read.All
- User.Read.All
비활성 사용자 계정이란?
비활성 계정은 조직의 구성원이 리소스에 대한 액세스 권한을 얻기 위해 더 이상 필요하지 않은 사용자 계정입니다. 비활성 계정의 주요 식별자는 해당 계정이 환경에 로그인하는 데 한동안 사용되지 않은 것입니다. 비활성 계정은 로그인 활동에 연결되므로 계정이 마지막으로 로그인을 시도했던 타임스탬프를 사용하여 비활성 계정을 검색할 수 있습니다.
이 방법을 사용하는 경우 사용자 환경에서의 한동안이 어느 정도인지 정의하기가 어렵습니다. 예를 들어 사용자가 휴가 중이어서 환경에 한동안 로그인하지 않을 수도 있습니다. 비활성 사용자 계정에 대한 델타를 정의할 때 사용자 환경에 로그인하지 않는 모든 합법적인 이유를 고려해야 합니다. 많은 조직에서 비활성 사용자 계정에 대한 델타는 90~180일입니다.
마지막 로그인은 사용자가 계속해서 리소스에 액세스할 필요가 있다는 잠재적 정보를 제공합니다. 그룹 멤버 자격 또는 앱 액세스가 여전히 필요한지 또는 제거할 수 있는지를 확인하는 데 도움이 될 수 있습니다. 외부 사용자 관리의 경우 외부 사용자가 테넌트 내에서 활성 상태인지 아니면 정리되어야 하는지 파악할 수 있습니다.
Microsoft Graph를 사용하여 비활성 사용자 계정 검색
여러 속성을 평가하여 비활성 계정을 검색할 수 있으며 그중 일부는 Microsoft Graph API의 beta
엔드포인트에서 사용할 수 있습니다. 프로덕션에서는 베타 엔드포인트를 사용하는 것을 권장하지 않지만 사용해 보시기 바랍니다.
lastSignInDateTime
속성은 Microsoft Graph API의 signInActivity
리소스 종류에 의해 노출됩니다. lastSignInDateTime 속성은 사용자가 Microsoft Entra ID에서 마지막으로 대화형 로그인을 시도한 시간을 표시합니다. 이 속성을 사용하여 다음 시나리오에 대한 솔루션을 구현할 수 있습니다.
모든 사용자의 마지막 로그인 날짜 및 시간: 이 시나리오에서는 모든 사용자의 마지막 로그인 날짜에 대한 보고서를 생성해야 합니다. 모든 사용자 목록과 각 사용자의 마지막 lastSignInDateTime을 요청합니다.
https://graph.microsoft.com/v1.0/users?$select=displayName,signInActivity
이름 기준 사용자: 이 시나리오에서는 이름으로 특정 사용자를 검색합니다. 그러면 lastSignInDateTime을 평가할 수 있습니다.
https://graph.microsoft.com/v1.0/users?$filter=startswith(displayName,'Isabella Simonsen')&$select=displayName,signInActivity
날짜 기준 사용자: 이 시나리오에서는 지정된 날짜 이전의 lastSignInDateTime을 사용하여 사용자 목록을 요청합니다.
https://graph.microsoft.com/v1.0/users?$filter=signInActivity/lastSignInDateTime le 2019-06-01T00:00:00Z
마지막으로 성공한 로그인 날짜 및 시간(베타): 이 시나리오는 Microsoft Graph API의
beta
엔드포인트에서만 사용할 수 있습니다. 지정된 날짜 이전에lastSuccessfulSignInDateTime
이 있는 사용자 목록을 요청할 수 있습니다.https://graph.microsoft.com/beta/users?$filter=signInActivity/lastSuccessfulSignInDateTime le 2019-06-01T00:00:00Z
참고 항목
signInActivity
속성은 $filter
(eq
, ne
, not
, ge
, le
)를 지원하지만 다른 필터링 가능한 속성은 지원하지 않습니다. signInActivity 속성은 기본적으로 반환되지 않으므로 사용자 나열을 수행하는 동안 $select=signInActivity
또는 $filter=signInActivity
를 지정해야 합니다.
lastSignInDateTime 속성에 대한 고려 사항
다음 세부 정보는 lastSignInDateTime
속성과 관련이 있습니다.
lastSignInDateTime 속성은 Microsoft Graph API의 signInActivity 리소스 종류에 의해 노출됩니다.
Get-MgAuditLogDirectoryAudit cmdlet을 통해 속성을 사용할 수 없습니다.
각 대화형 로그인 시도는 기본 데이터 저장소를 업데이트합니다. 일반적으로 로그인은 6시간 이내에 관련 로그인 보고서에 표시됩니다.
lastSignInDateTime 타임스탬프를 생성하려면 로그인을 시도해야 합니다. 실패했거나 성공한 로그인 시도는 Microsoft Entra 로그인 로그에 기록되어 있는 한 lastSignInDateTime 타임스탬프를 생성합니다. 다음과 같은 경우 lastSignInDateTime 속성 값이 비어 있을 수 있습니다.
- 사용자의 마지막 로그인 시도는 2020년 4월 이전에 이루어졌습니다.
- 영향을 받은 사용자 계정은 로그인 시도에 사용되지 않았습니다.
마지막 로그인 날짜는 사용자 개체와 연결됩니다. 값은 사용자의 다음 로그인까지 유지됩니다. 이를 업데이트하려면 최대 24시간이 걸릴 수 있습니다.
Microsoft Entra 관리 센터에서 단일 사용자를 조사하는 방법
팁
이 문서의 단계는 시작하는 포털에 따라 약간 다를 수도 있습니다.
사용자의 최신 로그인 활동을 확인해야 하는 경우 Microsoft Entra ID에서 사용자의 로그인 세부 정보를 볼 수 있습니다. 이전 섹션에서 설명한 Microsoft Graph 이름 기준 사용자 시나리오를 사용할 수도 있습니다.
Microsoft Entra 관리 센터에 보고서 읽기 권한자 이상의 권한으로 로그인합니다.
ID>사용자>모든 사용자로 이동합니다.
목록에서 사용자를 선택합니다.
사용자 개요의 내 피드 영역에서 로그인 타일을 찾습니다.
이 타일에 표시된 마지막 로그인 날짜 및 시간은 업데이트하는 데 최대 24시간이 걸릴 수 있으며 이는 날짜와 시간이 최신이 아닐 수 있음을 의미합니다. 활동을 거의 실시간으로 확인해야 하는 경우 로그인 타일에서 모든 로그인 보기 링크를 선택하여 해당 사용자의 모든 로그인 활동을 확인합니다.