M365Con 2027 – 무료 온라인 컨퍼런스 · 11–22 Jan 2027 · 120 sessions→ m365con.net

블로그 · Mirko Peters

Azure AD 앱에서 AADSTS700054 응답 형식 미사용 오류 해결하기

By ·

AADSTS700054 오류를 마주치고 "이번에는 또 뭘 잘못했지?"라고 생각해 보신 적이 있으신가요? 혼자만 겪는 문제가 아닙니다. 이 오류는 Azure Active Directory로 앱 인증을 시도할 때 바로 나타나기로 악명이 높으며, 특히 Microsoft 365, Dynamics 365 또는 직접 만든 싱글 페이지 앱에서 자주 발생합니다. 근본적으로 이 오류는 앱이 인증 엔드포인트에서 요청한 특정 "응답 형식"(ID 토큰 또는 액세스 토큰 등)을 수락하도록 설정되어 있지 않다는 뜻입니다.

Automatically translated with AI from the original post. Read the English original

Cover: Power Platform Tenant Governance and Security Risks

AADSTS700054 오류를 마주치고 "이번에는 또 뭘 잘못했지?"라고 생각해 보신 적이 있으신가요? 혼자만 겪는 문제가 아닙니다. 이 오류는 Azure Active Directory로 앱 인증을 시도하는 순간 바로 나타나기로 악명이 높으며, 특히 Microsoft 365, Dynamics 365 또는 직접 만든 싱글 페이지 앱에서 자주 발생합니다. 근본적으로 이 오류는 앱이 인증 엔드포인트에서 요청된 특정 "응답 형식"(예: ID 토큰 또는 액세스 토큰)을 받도록 설정되어 있지 않다는 의미입니다.

이 가이드에서는 이 문제가 발생하는 이유를 설명하고, 암시적 권한 부여(implicit grant) 기반의 기존 애플리케이션과 MSAL.js 및 PKCE를 사용하는 최신 환경 모두에서 해결하는 방법을 단계별로 안내합니다. 또한 구성을 안전하게 유지하기 위한 모범 사례와 함께, 커뮤니티 리소스 및 빠르게 답을 찾을 수 있도록 블로그 탐색 팁도 제공합니다. 기존 앱을 문제 해결하든 최신 앱을 다루든, 이 흔한 인증 문제를 해결하고 재발을 막는 방법을 정확히 알게 되실 것입니다.

AADSTS700054 문제의 원인 이해하기

AADSTS700054 오류는 단순히 Microsoft가 던진 난해한 코드가 아닙니다. 기본적으로 Azure가 "앱이 요청한 것을 가질 권한이 없다"고 알려주는 방식입니다. 대부분은 응답 형식과 관련이 있습니다. 애플리케이션이 Azure AD에 토큰을 요청하지만 암시적 권한 부여(implicit grant)와 같은 해당 "흐름"에 맞게 구성되어 있지 않으면, Azure는 요청을 차단하고 이 오류를 바로 표시합니다.

왜 이런 문제가 생길까요? 대부분의 경우 앱 등록에 인증 엔드포인트에서 사용할 ID 토큰, 액세스 토큰 또는 둘 다에 대한 올바른 설정이 빠져 있기 때문입니다. 예를 들어, Azure AD에서 암시적 흐름이 활성화되지 않은 상태에서 싱글 페이지 애플리케이션(SPA)이 암시적 흐름으로 토큰을 가져오려고 한다고 가정해 보겠습니다. Azure는 요청된 내용과 실제로 허용된 내용이 일치하지 않는다는 것을 확인하고, 그 순간 AADSTS700054가 발생합니다.

기존 인증 방식에서 최신 모범 사례로 전환할 때 구성 오류가 자주 발생합니다. 기존 앱(여전히 암시적 권한 부여를 사용할 수 있음)과 최신 앱(PKCE 및 인증 코드 흐름을 사용해야 함)을 함께 지원하는 조직은 특히 위험이 큽니다. 클라우드 인증을 업데이트하거나 새로운 Microsoft 서비스를 통합하신다면 이 문제에 부딪힐 가능성이 더 높아집니다.

이 오류를 이해하면 코드가 요청하는 내용과 Azure 앱이 처리하도록 설정된 내용을 연결할 수 있습니다. 그래서 이 가이드의 나머지 부분에서는 애플리케이션의 토큰 요청을 Microsoft ID 플랫폼이 기대하는 방식에 맞추는 방법을 보여 드립니다. 이를 통해 문제 해결에서 한발 앞서 나갈 수 있습니다.

암시적 권한 부여 응답 형식 문제의 권장 해결 방법 적용하기

AADSTS700054가 통합을 막고 있다면, 가장 빠른 해결책은 보통 앱 등록에서 올바른 응답 형식을 구성하는 것입니다. 대부분은 암시적 권한 부여 설정을 활성화하는 것을 의미하며, 기본적으로 앱이 인증 엔드포인트에서 바로 토큰을 요청할 수 있도록 허용하는 것입니다.

Azure Portal에서 이를 처리하는 방법은 다음과 같습니다. 먼저 "앱 등록"으로 이동하여 영향을 받는 애플리케이션을 찾고 "인증" 섹션을 엽니다. "암시적 권한 부여 및 하이브리드 흐름" 영역을 찾으세요. 그곳에 "액세스 토큰"과 "ID 토큰" 확인란이 보입니다. 시나리오에 맞는 항목을 선택하세요. 일반적으로 SPA는 최소한 "ID 토큰" 확인란이 필요하며, 기존 앱은 둘 다 필요할 수 있습니다.

하지만 무작정 모두 체크하고 잘되기를 바라지는 마세요! 앱에 실제로 필요한 옵션만 활성화하고, 보안을 최우선으로 고려하십시오. 앱이 대부분의 브라우저 기반 앱처럼 인증 엔드포인트를 통해 토큰을 요청한다면 이 설정이 필수입니다. 그 외의 경우, 특히 PKCE와 같은 더 안전한 흐름으로 이전하는 앱이라면 암시적 권한 부여를 건드릴 필요가 없을 수도 있습니다.

이러한 변경 사항을 적용하면 대부분의 AADSTS700054 문제는 바로 해결됩니다. 그래도 문제가 계속된다면 앱의 권한 범위, 리디렉션 URI를 다시 확인하고, 변경 사항이 계정 전체에 완전히 반영되었는지도 점검하세요. 이것이 이 오류를 해결하고 사용자와 개발자가 다시 업무에 복귀하도록 돕는 기본 토대입니다.

응답 형식 설정 오류를 방지하기 위한 보안 모범 사례

암시적 부여(implicit grant) 설정을 조정하면 오류를 해결할 수 있습니다. 하지만 그것이 항상 가장 안전한 장기적 방법은 아닙니다. 암시적 흐름을 활성화하면 토큰이 브라우저 응답에 직접 반환되므로 가로채기가 더 쉬워질 수 있어 보안 위험이 커집니다. 그래서 Microsoft를 비롯해 보안을 중시하는 관리자라면 대부분의 시나리오, 특히 새로 만들거나 업데이트하는 SPA에는 PKCE를 사용하는 권한 부여 코드 흐름(Authorization Code Flow with PKCE)과 같은 최신 대안을 사용하도록 권장합니다.

그렇다면 암시적 부여는 언제 활성화해야 할까요? 요약하면 레거시 앱이나 이를 반드시 요구하는 특수한 경우에만 활성화하면 됩니다. 그 밖의 모든 경우에는 앱이 (PKCE를 사용하는) 권한 부여 코드 흐름을 사용하도록 설정하십시오. 이렇게 하면 토큰이 브라우저 주소 표시줄에 노출되지 않으며 공격 표면을 크게 줄일 수 있습니다.

Power Platform, Microsoft 365, Dynamics 365를 함께 사용하는 조직이라면 이러한 모범 사례를 소홀히 할 수 없습니다. 잘못 구성된 응답 유형은 로그인 문제만 일으키는 것이 아니라, 공격자에게 침입 경로를 열어 주거나 나중에 규정 준수 문제를 초래할 수 있습니다. Power Platform 보안 및 거버넌스에 대한 이 개요에서는 특히 시민 개발자가 사용자 지정 앱과 통합을 추가하는 경우 엄격한 통제를 갖추고 사용하는 흐름을 정확히 아는 것이 왜 중요한지 잘 설명합니다.

결론적으로, 필요한 것만 활성화하고, 가능하면 PKCE를 사용하는 코드 흐름을 우선 선택하며, 더 넓은 거버넌스 전략의 일부로 앱 등록을 엄격히 관리하십시오. 모든 설정이 시행하려는 보안 정책과 일치하는지 확인하십시오. 미래의 여러분(그리고 감사 담당자)이 그 점에 감사할 것입니다.

MSAL.js로 최신 앱에서 AADSTS700054 문제 해결하기

MSAL.js v2 이상과 PKCE 같은 최신 인증 라이브러리로 옮기면 AADSTS700054 같은 "구식" 오류에서 벗어날 수 있으리라 생각하실 수 있습니다. 하지만 그렇게 간단하지는 않습니다. 앱 등록이나 클라이언트 측 구성이 최신 모범 사례와 맞지 않으면 최신 단일 페이지 애플리케이션(SPA)도 문제를 겪을 수 있습니다.

가장 큰 원인은 잘못된 가정입니다. 개발자가 MSAL.js를 도입하면서도 레거시 리디렉션 URI를 그대로 두거나, Azure AD에서 활성화되지 않은 응답 유형(예: id_token)을 실수로 요청하는 경우가 있습니다. 앱 매니페스트를 다른 프로젝트에서 복사해 붙여 넣은 경우에는 특히 그렇습니다. 그 결과 앱이 인증 흐름을 시작할 때 Azure AD가 그 악명 높은 오류를 반환하게 됩니다.

이 문제는 어떻게 디버깅할 수 있을까요? 브라우저의 개발자 도구를 열고 네트워크 탭으로 이동하여 권한 부여 요청을 확인하십시오. response_type이 Azure 앱에서 실제로 허용하도록 구성된 흐름과 일치하는지 다시 한번 확인하십시오. 제대로 활성화되지 않은 토큰을 요청하고 있다면 Azure 포털로 돌아가 앱 등록을 적절히 수정하십시오.

기억하십시오. MSAL.js v2와 PKCE를 사용하면 보통 암시적 흐름을 전혀 활성화할 필요가 없습니다. 그래도 앱이 계속 실패한다면 코드에 하드코딩된 "implicit" 설정, 리디렉션 URI의 오타, 잘못된 grant 유형이 없는지 살펴보십시오. Azure와 클라이언트 양쪽의 구성을 꼼꼼히 검토하면 대부분의 문제가 해결됩니다. 화려한 작업은 아니지만, 체계적인 문제 해결은 추측에 쓰이는 몇 시간을 아껴 줍니다.

레거시 애플리케이션을 암시적 부여에서 PKCE로 마이그레이션하기

암시적 흐름을 완전히 떠날 준비가 되셨습니까? 잘하신 결정입니다. PKCE(Proof Key for Code Exchange) 마이그레이션은 현재 가장 권장되는 표준이며, Microsoft도 강력히 권장합니다. 하지만 솔직히 말해 사용자가 있는 실제 운영 앱을 마이그레이션하는 일은 설정 하나를 바꾸는 것으로 끝나지 않습니다. 서비스 중단을 피하고, 로그인 중단을 최소화하며, 모든 이해관계자에게 정보를 공유하는 계획이 필요합니다.

첫 단계는 암시적 부여를 사용하는 모든 앱 등록을 평가하고 목록화하는 것입니다. 다음으로 스테이징 환경에서 새로운 PKCE 기반 흐름을 테스트하십시오. 여기에는 앱이 권한 부여 코드 흐름을 사용하도록 설정하고, 리디렉션 URI를 업데이트하며, (MSAL.js나 ADAL.js를 대체하는 경우) 클라이언트 구성 파일을 조정하는 작업이 포함됩니다. 로그인과 로그아웃 전체 주기와 토큰 갱신을 모두 확인하십시오. 모든 사용자 유형에서 정상적으로 동작하는지 반드시 점검하십시오.

운영 환경에서 전환하기 전에 롤백 계획을 세워 두십시오. 마이그레이션이 순조롭지 않으면 일시적으로 두 흐름을 모두 활성화 상태로 유지해야 할 수도 있습니다. 또한 사용자에게 명확히 알리십시오. 사용자는 예고 없는 변경을 좋아하지 않으며, 로그인 방식이 예고 없이 바뀌어 업무가 멈추는 상황이라면 특히 그렇습니다.

마지막으로, 마이그레이션 후 토큰 갱신 실패나 진행 중인 활성 세션이 중단되는 문제가 없는지 확인해야 합니다. 가능하다면 트래픽이 적은 시간대에 업그레이드를 계획하는 것이 좋습니다. 이러한 전환을 실제 운영에 적용하는 방법이 더 궁금하다면, 일부 자료는 다른 곳으로 안내하기도 하지만 엔터프라이즈 변경 관리에 대한 간접적인 힌트를 얻으려면 최신 Microsoft 365 Copilot 및 아키텍처 팟캐스트를 언제든 확인해 볼 수 있습니다 (최근 논의를 여기서 확인하세요).

믿을 수 있는 해결책을 제공하는 Nishant Weblog Rana’s 같은 신뢰할 만한 블로그 찾기

  • Nishant Rana’s Weblog: Azure AD 통합 문제를 해결할 때 찾아보기 좋은 자료입니다. Nishant는 심층 분석 시나리오, 단계별 해결 방법, Dynamics 365 및 Power Platform의 특수한 사례까지 다룹니다. 명확한 실습 안내 덕분에 복잡한 인증 오류도 훨씬 덜 부담스럽게 느껴집니다.
  • KingswaySoft MVP Blog: CRM 데이터 통합에 대한 실용적인 조언으로 알려진 이 MVP 주도 블로그는 인증과 관련된 예외 상황을 꾸준히 다룹니다. Azure AD와 Microsoft 365 생태계를 다루는 분이라면 꼭 필요한 자료입니다.
  • Top 100 CRM Blogs: 이와 같은 큐레이션 목록은 더 넓은 기술 커뮤니티를 소개합니다. Microsoft ID, 보안, 문제 해결 주제를 꾸준히 다루는 작성자를 발견할 수 있습니다. 읽을거리의 범위를 넓히면 특수한 상황에 맞는 해결책을 찾을 가능성도 높아집니다.

최신 게시물을 찾기 위해 빠른 검색과 아카이브를 활용해 Azure AD 문제 해결하기

  • 빠른 검색 기능 활용: 대부분의 신뢰할 만한 기술 블로그에는 검색창이 있습니다. “AADSTS700054”, “Azure AD error”, “implicit grant”와 같은 키워드를 입력하면 현재 문제와 직접 관련된 게시물과 가이드를 바로 찾을 수 있습니다. 직접 탐색하는 것보다 훨씬 빠릅니다.
  • 아카이브 및 최신 업데이트 살펴보기: 검색으로 문제를 찾지 못했다면 사이트의 아카이브나 필터링된 “최신 게시물” 목록을 살펴보십시오. 검증된 문제 해결 가이드는 오래된 콘텐츠에 숨어 있는 경우가 많고, 최근 게시물에는 Microsoft 플랫폼의 새로운 인증 변경 사항에 대한 정확한 해결책이 실려 있기도 합니다.
  • 고급 사용자를 위한 필터 조합: 조금 더 세밀하게 찾고 싶다면 검색과 함께 태그나 카테고리 체계를 활용해 보십시오. “Azure AD” 게시물만 필터링하거나 “app registration”으로 범위를 좁히면 문제 해결 시간이 줄어들고, 그렇지 않으면 놓쳤을 문제와 해결책도 찾을 수 있습니다.

Entities in this article

Microsoft Entra ID Application registration Dynamics 365 Access token Microsoft Azure portal Power Platform Microsoft 365 Dynamics 365 Guides Legacy authentication

Related articles

RSS