App Service 앱 보호
Azure App Service는 기본 제공 인증 및 권한 부여를 지원합니다. 웹앱, API 및 모바일 백엔드와 Azure Functions 앱에서 코드를 최소한으로 작성하거나 작성하지 않고 사용자를 로그인하고 데이터에 액세스할 수 있습니다.
안전한 인증 및 권한 부여에는 페더레이션, 암호화, JSON 웹 토큰(JWT) 관리, 부여 유형 등 보안에 대한 깊은 이해가 필요합니다. App Service가 이러한 유틸리티를 제공하기 때문에, 고객에게 비즈니스 가치를 제공하는 데 더 많은 시간과 에너지를 투자할 수 있습니다.
참고
인증 및 승인을 위해 Azure App Service를 사용할 필요가 없습니다. 많은 웹 프레임워크는 보안 기능과 함께 번들로 제공되며, 기본 서비스를 사용할 수 있습니다.
App Service 사용 시 앱 보안에 대해 알아야 할 사항
App Service가 앱에 대한 보안을 제공하는 데 어떻게 도움이 되는지 좀 더 자세히 살펴보겠습니다.
Azure App Service의 인증 및 권한 부여 보안 모듈은 애플리케이션 코드와 동일한 환경에서 실행되지만, 별도로 실행됩니다.
보안 모듈은 앱 설정을 사용하여 구성됩니다. SDK, 특정 언어 또는 애플리케이션 코드의 변경이 필요하지 않습니다.
보안 모듈을 사용하도록 설정하면 들어오는 모든 HTTP 요청이 애플리케이션 코드에서 처리되기 전에 모듈을 통과합니다.
보안 모듈은 앱에 대해 다음과 같은 여러 작업을 처리합니다.
- 지정된 공급자를 사용하여 사용자 인증
- 토큰 유효성 검사, 저장 및 새로 고침
- 인증된 세션 관리
- 요청 헤더에 ID 정보 삽입
앱 보안에 App Service 사용할 때 고려해야 할 사항
Azure Portal에서 기능을 선택해 App Service에서 인증 및 권한 부여 보안을 구성합니다. 다음 옵션을 검토하고 App Service 앱 구현에 도움이 될 수 있는 보안에 대해 생각해 보세요.
익명 요청 허용(작업 없음). 애플리케이션 코드에 관해 인증되지 않은 트래픽의 권한 부여를 연기합니다. 인증된 요청의 경우 App Service는 HTTP 헤더의 인증 정보도 전달합니다. 이 기능을 사용하면 익명 요청을 보다 유연하게 처리할 수 있습니다. 이 기능을 사용하면 사용자에게 여러 로그인 공급자를 제공할 수 있습니다.
인증된 요청만 허용. 사용자가 선택한 공급자에 대한 모든 익명 요청을
/.auth/login/<provider>
로 리디렉션합니다. 이 기능은 <provider>을(를) 사용하여 로그인하는 것과 같습니다. 익명의 요청이 네이티브 모바일 앱에서 오는 경우 반환된 응답은HTTP 401 Unauthorized
메시지입니다. 이 기능을 사용하면 앱에서 인증 코드를 작성할 필요가 없습니다.중요
이 기능은 앱에 대한 모든 호출에 대한 액세스를 제한합니다. 많은 단일 페이지 앱의 경우처럼 앱에 공용 홈페이지가 필요한 경우 모든 호출에 대한 액세스를 제한하는 것이 바람직하지 않을 수 있습니다.
로깅 및 추적 로그 파일에서 직접 인증 및 권한 부여 추적을 확인합니다. 예상치 못한 인증 오류가 표시되면 기존 애플리케이션 로그를 보고 모든 세부 정보를 편리하게 찾을 수 있습니다. 실패한 요청 추적을 사용하도록 설정하면 실패한 요청에 보안 모듈이 정확히 어떻게 참여했는지 알 수 있습니다. 추적 로그에서
EasyAuthModule_32/64
라는 모듈에 대한 참조를 찾습니다.