앱 등록은 코드나 자동화가 Microsoft Entra ID로 로그인할 때 쓰는 신원입니다. 앱마다 클라이언트 암호나 인증서가 붙고, 이 자격 증명은 유효 기간이 지나면 만료됩니다. 이 글은 읽기만 하는 실습입니다. 앱 등록 목록에서 만료된 자격 증명을 찾는 방법을 따라가며, 앱을 만들거나 암호를 바꾸는 것은 하지 않았습니다. 앞선 글에서 사용자와 그룹, 관리자 역할, 보안 기본값을 읽었습니다.
준비물
| 항목 | 내용 |
|---|---|
| 계정 | entra.microsoft.com에 로그인해 앱 등록 목록을 볼 수 있는 계정(이 실습은 관리자 계정으로 진행했고 필요한 최소 역할은 확인하지 않았습니다) |
| 예상 소요 시간 | 시간을 재지 않았습니다 |
| 변경 사항 | 없음 |
화면의 앱 이름과 애플리케이션(클라이언트) ID는 모두 가렸습니다. 이 테넌트의 앱 이름이 실습 과정에서 만든 이름이어서 목록 안의 이름 칸을 통째로 가렸고, 그 아래 만든 날짜와 인증서 상태 열만 남겼습니다. 테넌트 이름과 계정 이메일도 가렸습니다.
1. 앱 등록 화면 열기
왼쪽 메뉴 Entra ID를 펼치고 엔터프라이즈 앱 아래의 앱 등록을 엽니다. 처음 열리는 탭은 소유한 애플리케이션입니다.

탭은 모든 애플리케이션, 소유한 애플리케이션, 삭제된 애플리케이션, Deactivated applications 네 가지입니다. 이 실습 계정은 앱의 소유자로 나열된 것이 없어서 이 계정은 이 디렉터리에 있는 애플리케이션의 소유자로 나열되지 않습니다.라는 안내만 보였습니다. 소유한 앱만 보면 전체 현황을 놓칠 수 있다는 점을 이 화면이 보여 줍니다. 디렉터리의 모든 애플리케이션 보기를 눌러 모든 애플리케이션 탭으로 이동합니다.
화면 위쪽 파란 안내는(영어로 표시됩니다) ADAL과 Azure AD Graph가 더 이상 새 기능 업데이트를 받지 않으며 MSAL과 Microsoft Graph로 업그레이드해야 한다고 알려 줍니다. 이 글의 주제는 아니어서 다루지 않았습니다.
2. 모든 애플리케이션 목록 읽기

목록 위에 28개 애플리케이션이 발견됨이라고 표시되었습니다. 열은 표시 이름, 애플리케이션(클라이언트) ID, 만든 날짜, 인증서 및 암호입니다. 이미지에서는 앞의 두 열의 내용을 가렸습니다.
인증서 및 암호 열에서 읽을 수 있는 값은 세 가지였습니다.
| 표시 | 뜻으로 읽은 것 |
|---|---|
빨간 느낌표와 만료됨 |
앱에 붙은 자격 증명의 유효 기간이 지났습니다 |
초록 표시와 Current |
유효한 자격 증명이 있습니다(이 화면의 아래쪽 행에서 보였고 이미지에는 싣지 않았습니다) |
- |
자격 증명이 없는 것으로 보입니다 |
이미지에서는 만든 날짜가 2025년 3월인 앱 세 개에 만료됨이 붙어 있었고 그 아래 잘린 행에도 같은 표시가 보였습니다(스크롤해서 본 아래쪽에는 4월에 만든 앱도 있었지만 이미지에는 싣지 않았습니다). 이미지에 보이는 2026년 9월에 만든 앱들은 모두 -였습니다. 목록 전체를 세어 보지는 않았고 스크롤해서 일부만 확인했습니다. 만료된 앱이 정확히 몇 개인지는 이 글에서 알 수 없습니다.
읽는 방법
- 만료됨이 곧 문제는 아닙니다. 더 이상 쓰지 않는 앱의 자격 증명은 만료된 채 두어도 쓰이지 않는 경우가 많습니다(일반적인 동작에 근거한 설명이며 이 실습에서 확인하지 않았습니다). 반대로 지금 쓰는 자동화가 만료됨으로 표시되면 로그인이 실패할 수 있습니다. 어느 쪽인지는 이 목록만으로 알 수 없고 앱의 사용 여부를 따로 확인해야 합니다.
- 정리 대상 후보: 만료됨이 붙은 채 오래된 앱은 삭제를 검토할 수 있습니다. 앱 삭제 전에는 그 앱을 쓰는 곳이 있는지 확인합니다. 삭제한 앱은
삭제된 애플리케이션탭에서 일정 기간 복원할 수 있는 것으로 알려져 있습니다(기간은 Microsoft Learn 문서에서 확인하시기 바랍니다). 이 글에서는 삭제하지 않았습니다. -표시: 인증서나 암호가 없는 것으로 보이는 앱입니다. 이런 앱이 어떻게 로그인하는지(예: 사용자 위임 권한만 쓰는 경우)는 이 실습에서 확인하지 않았습니다.- 목록 열의 날짜는 앱을 만든 날짜이지 자격 증명의 만료일이 아닙니다. 만료일을 보려면 앱을 열어
인증서 및 암호화면을 읽어야 하는데 이 글에서는 열지 않았습니다.
자주 막히는 곳
소유한 애플리케이션에서 비어 보이는 경우: 이 글의 첫 화면처럼 소유자로 지정된 앱이 없어서일 수 있습니다.모든 애플리케이션탭으로 옮깁니다.- 앱 이름이 비슷해서 헷갈리는 경우: 이름만으로 구분하지 말고
애플리케이션(클라이언트) ID를 함께 확인합니다. - 목록이 잘려 보이는 경우: 아래로 스크롤하면 나머지가 보입니다. 이 실습에서도 28개가 한 화면에 다 들어오지 않았습니다.
이어서 해 볼 것
- 앱 하나를 열어
인증서 및 암호와API 권한화면을 읽고, 자격 증명의 만료일과 부여된 권한을 확인해 봅니다 - 목록의
다운로드단추로 목록을 내려받아 만료됨 항목을 따로 정리해 봅니다(이 글에서는 누르지 않았습니다) - AWS에서 자격 증명을 확인하는 화면은 IAM 비밀번호 정책 읽기에서 비교해 볼 수 있습니다
확인한 범위와 확인하지 않은 것
- 확인한 것: 앱 등록 화면의 네 개 탭, 소유한 애플리케이션 탭의 빈 안내, 모든 애플리케이션 탭의 28개 앱 목록과 열 구성,
인증서 및 암호열의 만료됨 표시. - 확인하지 않은 것: 앱에 자격 증명이 여러 개일 때의 표시, 곧 만료되는 상태가 있는지, 앱 상세의 인증서 및 암호와 API 권한, 목록 전체의 만료 앱 개수,
-표시의 정확한 의미, 앱 삭제, 필요한 관리자 역할. 표의뜻으로 읽은 것열은 화면 표시를 바탕으로 한 해석입니다. 화면 문구는 이 실습 시점의 한국어 화면 기준입니다.
이 글의 다음 단계
- AWS CloudTrail 이벤트 기록에서 누가 언제 무엇을 했는지 읽기CloudTrail 이벤트 기록 화면에서 최근 변경 이벤트를 보고, 리소스 이름으로 걸러 한 보안 그룹의 생성부터 삭제까지를 추적합니다. 이벤트 상세와 JSON 레코드에서 사용자, 시각, 호출 내용, MFA 여부를 읽는 방법을 정리합니다.
- AWS 콘솔에서 EC2에 IAM 역할을 연결해 액세스 키 없이 S3 읽기 권한 주기IAM 콘솔에서 EC2용 역할 cr-demo-ec2-s3-read-role을 만들고 AmazonS3ReadOnlyAccess를 붙인 뒤, EC2 시작 화면의 고급 세부 정보에서 인스턴스에 연결합니다. 신뢰 정책과 권한 정책의 역할을 읽고, 인스턴스와 역할을 삭제해 정리합니다.