규칙
오브젝트에 대한 접근방식이나 객체의 생성과 소멸에 대한 정확한 이해가 없으면 안전하지 않은 프로그램을 작성할 수 있다.
OBJ00-J. 신뢰하는 하위 클래스만 불변 성질을 가진 클래스나 메서드를 상속할 수 있게 한다
OBJ01-J. 데이터 멤버는 private로 선언하고 접근 메서드를 제공한다.
OBJ02-J. 상위 클래스를 수정할 때 하위 클래슥 위존하는 불변 성질을 유지한다.
OBJ03-J. 신규 코드에서 제너릭클래스와 비제너릭 클래스를 함께 사용하지 않는다.
OBJ04-J. 신뢰하지 않는 코드에 안전하게 객체를 전달 할 수 있게 가변 클래스의 복사 기능을 제공한다.
OBJ05-J. 반환하기 전에 클래스의 가변 private 멤버를 복사해 보호한다.
OBJ06-J. 가변 입력가 가변 내부 컴포넌트를 복사해 보호한다.
OBJ07-J. 기밀 클래스는 복제되지 않아야 한다.
OBJ08-J. 중첩된 클래스를 통해 private 멤버를 노출하면 안된다.
OBJ09-J. 클래스를 비교할 때 클래스 이름으로 비교하면 안된다.
OBJ10-J. final이 아닌 public static 변수를 사용하지 않는다.
OBJ11-J. 생성자가 예외를 발생시킬수 있게 할때는 주의한다.
작성중...
'보안 > 시큐어코딩' 카테고리의 다른 글
[CERT JAVA 시큐어코딩표준-07] 예외처리(ERR) (0) | 2013.12.10 |
---|---|
[CERT JAVA 시큐어코딩표준-06] 메서드(MET) (0) | 2013.12.10 |
[CERT JAVA 시큐어코딩표준-04] 수치형과 연산(NUM) (0) | 2013.12.10 |
[CERT JAVA 시큐어코딩표준-03] 표현식(EXP) (0) | 2013.12.10 |
[CERT JAVA 시큐어코딩표준-02] 선언과 초기화(DCL) (0) | 2013.12.10 |