보안 패턴
Security pattern보안 패턴은 보안 분야에서 목표를 달성하기 위해 적용할 수 있다. 모든 고전적인 설계 패턴은 기밀성, 무결성 및 가용성과 같은 일부 정보 보안 목표를 달성하기 위해 서로 다른 인스턴스화를 가지고 있다. 또한 특정 보안 목표를 달성하기 위해 새로운 설계 패턴을 만들 수 있다.
기존 보안 패턴
패턴 커뮤니티는 PLOP(Pattern Language of Programs) 회의 워크샵에서 논의된 보안 패턴의 컬렉션을 제공했다. 그들은 통일되어 공동 프로젝트로 출판되었다.[1]
오픈 그룹은 일련의 문서화된 보안 패턴을 제공한다.
사용 가능한 시스템 패턴
이것들은 자산의 가용성과 관련된 패턴이다. 자산은 사용자에게 제공되는 서비스 또는 자원이다.
- 체크 포인트 시스템 패턴은 복제(컴퓨터 과학)를 사용하고 구성요소가 고장 났을 때 복구하기 위한 설계를 설명한다.
- 대기 패턴은 고장 난 구성 요소의 서비스를 재개할 수 있는 예비 구성 요소를 제공하는 것을 목표로 한다.
- 비교기가 점검한 내결함성 시스템 패턴은 구성 요소의 무고장 동작을 모니터링하는 방법을 제공한다.
- 복제된 시스템 패턴은 중복 구성요소의 설계와 서비스의 비이용 가능성을 줄이기 위한 로드 밸런싱 및 리디렉션 방법을 설명한다.
- 오류 감지/수정 패턴은 오류를 추론하고 올바른 정보 교환 또는 저장을 보장하기 위해 오류를 수정할 수 있는 목표를 가지고 있다.
보호되는 시스템 패턴
이것은 민감한 데이터의 접근과 사용을 관리하기 위한 수단을 제공함으로써 정보의 기밀성과 무결성과 관련된 일련의 패턴이다.
보호된 시스템 패턴은 리소스를 소유하는 일부 참조 모니터 또는 엔클로저를 제공하므로 액세스를 얻으려면 바이패스해야 한다. 모니터는 정책을 단일 지점으로 시행한다. GoF는 그것을 "Protection Proxy"라고 부른다.
정책 패턴은 정책을 일반 리소스 코드와 분리하기 위한 아키텍처다. 인증된 사용자는 자원 보호자에게 전달되는 보안 컨텍스트(역할)를 소유한다. 가드는 이 사용자와 규칙의 컨텍스트가 일치하는지 여부를 정책 내에서 확인하고 리소스에 대한 액세스를 제공하거나 거부한다.
인증자 패턴은 Pluggable Authentication Modules 또는 JAAS(Java Authentication and Authorization Service)라고도 한다.
- 제목 설명자 패턴
- 보안 통신은 Single Sign-On, RBAC와 유사함
- 보안 컨텍스트는 통신 보호 프록시, 보안 컨텍스트 및 주체 설명자 패턴의 조합이다.
- 보안 협회는 보안 통신 패턴의 확장이다.
- 보안 프록시 패턴은 심층 방어를 위해 사용될 수 있다.
Java EE, XML 웹 서비스 및 ID 관리를[2] 위한 보안 패턴
이것은 Sun Java Center – Sun Microsystems 엔지니어 Ramesh Nagapan 및 Christopher Steel이 진화한 일련의 보안 패턴으로, 다계층 Java EE 엔터프라이즈 애플리케이션, XML 기반 웹 서비스에 엔드투엔드 보안을 구축하여 Single Sign-On 인증, 다중 팩터 자동 등 웹 애플리케이션에서 ID 관리를 가능하게 한다.웹 기반 응용프로그램에서 ID 프로비저닝을 활성화하고 인증.
- Authentication Enforcer 패턴을 사용하여 인증 프로세스를 관리하고 위임할 수 있음
- Authorization Enforcer 패턴을 사용하여 인증 프로세스를 관리하고 위임할 수 있음
- 클라이언트의 입력 데이터에 대한 보안 유효성 검사를 수행하는 데 도움이 되는 검증자 패턴 가로채기
- 보안 기본 작업 패턴이 기본 작업 클래스에서 보안 작업의 중앙 집중식 처리를 보여줌
- Secure Logger 패턴을 사용하여 중요한 데이터를 기록하고 변조 방지 스토리지를 보장할 수 있음
- 안전한 중앙 집중식 세션 정보 처리를 보여주는 Secure Session Manager
- 웹 에이전트 인터셉터 패턴은 웹 응용 프로그램에 대한 보안을 제공하기 위해 인터셉터 메커니즘을 사용하는 방법을 보여준다.
- 난독화된 전송 개체 패턴은 전송 개체에서 전송되는 데이터와 애플리케이션 계층 간에 전달되는 데이터를 보호하는 방법을 보여준다.
- 기록 및 감사를 지원하는 보안 관련 이벤트를 캡처하기 위한 감사 가로채기 패턴 쇼
- 메시지 검사기 패턴은 보안 토큰과 함께 XML 서명 및 XML 암호화 같은 XML 메시지 수준 보안 메커니즘의 확인 및 검증을 보여준다.
- 메시지 가로채기 게이트웨이 패턴은 들어오고 나가는 XML 웹 서비스 메시지에 대한 보안 시행의 중앙 집중화를 위한 단일 진입점 솔루션을 보여준다. 웹 서비스 엔드포인트와 안전하게 통신하는 데 필요한 전송 수준 및 메시지 수준 보안 메커니즘을 적용하는 데 도움이 된다.
- Secure Message Router 패턴은 메시지 레벨 보안을 채택한 여러 파트너 엔드포인트와의 안전한 XML 통신을 용이하게 한다. 그것은 메시지 수준의 보안 메커니즘을 적용하여 의도된 수신자가 메시지의 필요한 부분에만 접근할 수 있고 나머지 메시지 조각은 기밀로 만들어지는 다중 수신자에게 메시지를 전달하는 보안 매개 구성요소 역할을 한다.
- SSO(Single Sign-On) 위임자 패턴은 SSO(Single Sign-On)용 레거시 시스템을 처리하기 위한 위임자 에이전트를 구성하는 방법을 설명한다.
- 어설션 빌더 패턴은 신원 어설션(예: 인증 어설션 또는 권한 어설션)을 구축하는 방법을 정의한다.
- Credential Synchronizer 패턴은 ID 프로비저닝을 사용하여 여러 애플리케이션에서 인증 정보와 주체를 안전하게 동기화하는 방법을 설명
참조
외부 링크
- N. 요시오카, H. 와시자키, K. 마루야마, 보안 패턴에 관한 조사, 정보학의 진전, 제5권 35-47호, (2008)
- 열린 그룹 보안 패턴 안내서
- Microsoft 패턴 및 작업 그룹
- Ramesh Nagapan, J2EE 애플리케이션, 웹 서비스, ID 관리 및 서비스 프로비저닝을 위한 보안 패턴