Azure 관리 캐시 서비스의 보안 모델

중요

모든 새 개발에서는 Azure Redis Cache를 사용하는 것이 좋습니다. Azure Cache 제품을 선택하는 방법에 대한 현재 설명서 및 지침 은 나에게 적합한 Azure Cache 제품을 참조하세요.

Managed Cache Service 통해 클라이언트 애플리케이션이 액세스 키를 사용하여 캐시에 대해 자신을 인증하도록 요구하여 캐시에 대한 액세스를 제어할 수 있습니다. Managed Cache Service 클라이언트 애플리케이션과 캐시 간의 채널 통신을 보호하는 기능도 제공합니다. 이 항목에서는 액세스 키를 사용한 액세스 제어 및 캐시와의 통신 보호에 대해 간략하게 설명합니다.

단원 내용

  • 액세스 키를 사용한 액세스 제어

    • 방법: 롤링 업데이트 수행
  • 캐시 클라이언트와 캐시 간의 통신 보안

액세스 키를 사용한 액세스 제어

원하는 클라이언트 응용 프로그램만 캐시에 액세스할 수 있도록 하려면 모든 클라이언트에서 캐시에 대한 액세스 키를 제공해야 합니다.

관리 포털을 사용하여 캐시를 만들 때는 기본 액세스 키와 보조 액세스 키라는 두 개의 액세스 키로 미리 구성됩니다. 캐시에 대한 빠른 시작 탭 또는 캐시 대시보드에서 키 관리를 클릭하여 키를 검색할 수 있습니다.

Manage Access Keys for Windows Azure Cache Service

이 액세스 키는 클라이언트 응용 프로그램을 구성하는 데 사용됩니다.

참고

일반적으로 기본 액세스 키가 사용되며 기본 액세스 키가 다시 생성된 경우에는 보조 액세스 키를 사용하여 롤링 업데이트를 수행합니다. 이 절차는 다음 섹션인 방법: 롤링 업데이트 수행에 설명되어 있습니다.

클라이언트 응용 프로그램에서 캐시에 대한 액세스 키를 지정하려면 응용 프로그램의 web.config 또는 app.config 파일을 열고 securityProperties 섹션에서 dataCacheClients 요소를 찾습니다.

<!--<securityProperties mode="Message" sslEnabled="false">
  <messageSecurity authorizationInfo="[Authentication Key]" />
</securityProperties>-->

이 코드 조각에서 주석 처리를 제거하고 [Authentication Key]를 기본 액세스 키로 바꿉니다. 인증 키가 올바르게 구성되지 않으면 클라이언트가 캐시에 연결할 수 없습니다.

참고

securityPropertiesdataCacheClients 섹션은 캐시 클라이언트를 구성하는 데 사용되는 캐시 NuGet 패키지에 의해 추가됩니다. 자세한 내용은 캐싱 NuGet 패키지를 사용하여 캐시 클라이언트 구성을 참조하세요.

또한 보조 액세스 키는 롤링 업데이트를 사용하여 키를 업데이트할 수 있도록 제공됩니다. 이렇게 하면 응용 프로그램에서 키 변경으로 인한 중단이 발생하지 않습니다.

방법: 롤링 업데이트 수행

예를 들어 회사 정책을 준수하도록 기본 액세스 키를 다시 생성해야 하거나 액세스 키가 손상된 경우에는 다음 단계를 수행할 수 있습니다.

  1. 보조 액세스 키를 사용하도록 캐시 클라이언트 응용 프로그램 구성을 업데이트합니다.

  2. 관리 포털의 액세스 키 관리 대화 상자에서 기본 액세스 키에 대해 다시 생성을 클릭합니다.

  3. 새로 다시 생성된 기본 액세스 키를 사용하도록 캐시 클라이언트 응용 프로그램 구성을 업데이트합니다.

    보조 액세스 키를 다시 생성합니다.

캐시 클라이언트와 캐시 간의 통신 보안

Managed Cache Service 클라이언트 애플리케이션과 캐시 간의 통신을 보호하는 기능을 제공합니다. 통신 보안을 유지하려면 응용 프로그램 web.config 또는 app.config 파일의 sslEnabled = true 섹션에 있는 securityProperties 요소에서 dataCacheClients를 설정합니다. 이렇게 하면 클라이언트와 캐시 간의 모든 통신이 TLS을 통해 이루어집니다.

<securityProperties mode="Message" sslEnabled="true">
  <messageSecurity authorizationInfo="[Authentication Key]" />
</securityProperties>

기본적으로 sslEnabledfalse로 설정되며 특성이 sslEnabled 지정되지 않은 경우 사용된 값은 false입니다.

동일한 Azure 지역에서 호스트되는 클라이언트와 캐시 간의 통신은 이미 안전합니다. 캐시가 클라이언트 애플리케이션과 동일한 Azure 지역에 호스트되는 경우 false로 설정하는 sslEnabled 것이 좋습니다. SSL을 사용할 때 약간의 오버헤드가 있기 때문에 캐시 및 캐시 클라이언트가 동일한 지역에 있을 때 true로 설정 sslEnabled 하면 캐시 성능이 불필요하게 저하됩니다.

동일한 Azure 지역에 캐시와 캐시 클라이언트를 둘 다 사용할 수 없는 경우 애플리케이션은 true로 설정 sslEnabled 하여 암호화된 통신의 이점을 받을 수 있습니다. sslEnabled 설정에 관한 문제뿐 아니라 최상의 성능을 위해 캐시 클라이언트 응용 프로그램과 동일한 영역에 캐시를 둡니다.

참고 항목

참조

캐싱 NuGet 패키지를 사용하여 캐시 클라이언트 구성

기타 리소스

Azure 관리 캐시 서비스 기능