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라는 모듈에 대한 참조를 찾습니다.