yoni

TLS 버전 강제 적용 본문

방화벽

TLS 버전 강제 적용

yoni-1117 2024. 5. 31. 16:05

Ø  현상 : Local 개발 환경에서는 Jira Cloud 서버와 Connection이 정상 수행되어 , 관련 Jira 프로젝트 / 버전 정보를 확인 가능하나

                       개발 환경에서는 Jira Cloud 서버와  Connection 연계가 되지 않음.

                       (참고로 SSL 인증 환경이 Setting된 운영 환경에 적용해도 동일한 문제점이 발생함).

Ø  원인 : 개발자 개발 환경(Oracle Java) Jesu 환경 서버 환경(IBM Java) Java 환경 차이로 발생한 건으로,

         TLS(Transport Layer Security) 1.2 사용 여부 설정과 관련된 사항으로 확인됨

Ø  해결 내용

1. Jira Cloud 서버 연계 이전에 IBM Java Option 사항에 TLS 1.2 사용 여부 환경 설정 값을 강제로 true 로 지정함.

2. Jira Project 검색 Popup에서 호출하는 PopupSearchController.java PopupSearchController 메서드 내

   Jira URL 호출하기 전에 강제로 ‘com.ibm.jsse2.overrideDefaultTLS’ 매개변수에 ‘true’로 강제로 지정한 후 호출하도록 수정함.

    System.setProperty("com.ibm.jsse2.overrideDefaultTLS", "true");

  

<적용 소스>

            @RequestMapping(value = {"/getJiraDataList"}, method = {RequestMethod.POST})

       public String getJiraDataList(Model model) throws UnirestException, ParseException, JSONException {

        String emplNo = SessionContextUtil.getLoginUser(LoginUser.class).getTbComPerson().getEmplNo();

        // Jira 연계를 위한 Session 사번정보로 공통 User Table Jira정보(Jira Token , Jira Email) 조회한다.

        TbComPerson tbComPerson = jiraService.getTbComPerson(emplNo);

 

        //System.setProperty("https.protocols", "TLSv1,TLSv1.1,TLSv1.2,SSLv3") ;

        System.setProperty("com.ibm.jsse2.overrideDefaultTLS", "true");

        System.out.println("System.getProperties()==========================================================") ;

        System.out.println(System.getProperties()) ;

 

        // Jira 계정에 연관된 Pjt 목록을 조회 하여 Json 형식으로 리턴 받는다.

        HttpResponse<JsonNode> jiraPjtList = Unirest.get("https://ㅇㅇㅇ.atlassian.net/rest/api/2/project/search")

                .basicAuth(tbComPerson.getJiraEmail(), tbComPerson.getJiraToken())

                .header("Accept", "application/json")

                .asJson();

        JSONObject objPjtJson = new JSONObject(jiraPjtList.getBody().toString());

Ø  개발 서버 확인 결과

1. 위의 소스를 적용하여 개발 서버에서 확인 결과 Jira Project / Version 정보 정상 조회 됨을 확인 완료함.

2. 확인한 내용은 아래 이미지를 참고하시기 바랍니다.

Ø  추후 검토 사항

1.     소스 내 매개 변수 적용 사항을 JVM Option에 정의하는 부분에 대해서는 서버 담당자와 확인 

'방화벽' 카테고리의 다른 글

[방화벽] 패킷 확인  (0) 2020.12.07
Comments