다음을 통해 공유


다중 계층 애플리케이션에서 데이터 보안을 위한 기본 시나리오

이 항목에서는 보안을 적용할 위치 결정에 설명된 조건을 보여 주는 몇 가지 구성 요소 시나리오를 제공합니다.

신뢰할 수 있는 서버 시나리오

  • 데이터베이스는 COM+ 애플리케이션을 완전히 신뢰하여 최종 사용자가 데이터베이스의 데이터에 액세스할 수 있도록 인증하고 권한을 부여합니다.
  • 가급적이면 데이터베이스는 애플리케이션을 제외한 모든 액세스에 대해 보호됩니다.
  • COM+ 애플리케이션은 역할 기반 보안을 사용하여 사용자에게 권한을 부여합니다.
  • 연결은 COM+ 애플리케이션의 ID로 열리며 완전히 풀 가능합니다.
  • COM+ 애플리케이션에서 감사 및 로깅을 수행하거나 이 정보를 애플리케이션에서 데이터베이스에 전달할 수 있습니다.

이 시나리오는 역할에 캡슐화할 수 있는 예측 가능한 범주의 사용자가 액세스할 수 있는 데이터에 가장 적합합니다. 예를 들어 "관리자", "텔러" 및 "회계사"만 계정에 액세스할 수 있는 권한이 있습니다. 각 작업을 정확하게 수행할 수 있는 비즈니스 논리는 중간 계층에 적용됩니다.

가장 시나리오

  • 데이터베이스는 데이터베이스의 데이터에 대한 액세스를 제한하는 데 도움이 되도록 최종 사용자의 자체 인증 및 권한 부여를 수행합니다.
  • COM+ 애플리케이션은 데이터베이스에 액세스할 때마다 클라이언트를 가장합니다.
  • 연결은 호출별로 이루어지며 다시 사용할 수 없습니다.

이 시나리오는 매우 작은 사용자 클래스에 밀접하게 바인딩된 데이터에 가장 적합합니다. 예를 들어 각 직원은 자신의 직원 파일에만 액세스할 수 있으며 각 관리자는 보고서의 직원 파일에만 액세스할 수 있습니다.

하이브리드 시나리오

가장이 필요한 경우에만 사용되는 이전 두 시나리오의 조합입니다.

이 시나리오는 하이브리드 사용자 데이터 관계가 있는 상황에서 가장 잘 작동합니다. 예를 들어 "관리자", "텔러", "회계사" 및 자체 계정에만 액세스할 수 있는 수천 명의 개별 웹 클라이언트가 있습니다. 애플리케이션을 통해 논리 경로를 분리할 수 있으며, 잠재적으로 별도의 구성 요소를 사용하여 후자의 사용자 클래스를 처리할 수 있습니다. 특히 이러한 사용자에 대한 성능 가정이 다른 경우.

Microsoft SQL Server 역할을 사용하는 신뢰할 수 있는 시나리오

  • Microsoft SQL Server 7.0 이상에서는 역할을 사용하여 특정 행에 대한 액세스 권한을 부여할 수 있지만 COM+ 애플리케이션을 신뢰하여 사용자를 인증하고 권한을 부여하고 데이터베이스의 올바른 역할에 매핑합니다.
  • COM+ 애플리케이션은 역할 기반 보안을 사용하여 사용자에게 권한을 부여하고 애플리케이션 역할은 데이터베이스 역할에 해당합니다.
  • 특정 데이터베이스 역할과 관련된 연결을 열 수 있습니다. 이러한 연결은 COM+ 애플리케이션의 풀된 개체에 의해 유지되는 경우 다시 사용할 수 있습니다. 이 작업을 수행하는 방법에 대한 자세한 내용은 COM+ 개체 풀링을 참조하세요.
  • COM+ 애플리케이션에서 감사 및 로깅을 수행하거나 이 정보를 애플리케이션에서 데이터베이스에 전달할 수 있습니다.

이 시나리오는 COM+ 애플리케이션이 여전히 권한 부여를 올바르게 처리하기 위해 대체로 신뢰할 수 있기 때문에 일반적으로 신뢰할 수 있는 첫 번째 서버 시나리오와 동일한 종류의 사용자 및 데이터에 가장 적합합니다. 그러나 가장 시나리오에 있는 크기 조정 및 성능 저하 없이 COM+ 애플리케이션 외부의 여러 원본에서 액세스할 수 있도록 허용하면서 무단 액세스로부터 데이터베이스를 보호하는 데 도움이 됩니다.

보안을 적용할 위치 결정

다중 계층 애플리케이션 보안