Computer >> 컴퓨터 >  >> 프로그램 작성 >> 데이터 베이스

워크플로 Java 메일러 SSL 구성 구현

워크플로 통신을 보호하기 위해 SSL(Secure Sockets Layer)을 사용하도록 Oracle® 애플리케이션 서버를 구성할 수 있습니다.

소개

이 게시물은 SSL이 활성화된 SMTP/IMAP 서버에 연결하는 Workflow Java Mailer의 테스트 케이스 설정에 대한 명령 및 도구의 예를 설명합니다.

Workflow Java Mailer를 구성하려면 다음 세부 단계를 수행하십시오.

1단계:포트 열기

네트워크 팀과 협력하여 Concurrent Manager Tire에서 다음 포트를 엽니다.SMTP/SSL Port: 465IMAP/SSL Port: 993 .

Protocol: SMTP/SSL Port: 465
Protocol: IMAP/SSL Port: 993

PROD [<user>@servername ~]$ telnet <SMTP Server Name> 465
Trying XXXXXX...
Connected to SMTP Server Name.
Escape character is '^]'

PROD [<user>@servername ~]$ telnet <IMAP Server Name> 993
Trying XXXXXX...
Connected to IMAP Server Name.
Escape character is '^]'
2단계:이메일 서버에서 인증서 내보내기

DBA이자 블로거인 Goraknath Rathod는 2018년 게시물에서 이 단계를 설명합니다.

"신뢰할 수 있는 인증 기관(예:Verisign)에서 발행한 이메일 서버 인증서는 시스템 관리자로부터 얻거나 [다음 단계를 완료]하여 다운로드할 수 있습니다."

다음은 Rathod가 설명하는 단계입니다.

A. 메인 웹페이지 https://host.domain:port에 접속합니다.
B. 페이지 하단의 자물쇠를 더블 클릭하면 인증서를 볼 수 있습니다. 자물쇠가 없으면 상단 도구 모음에서 파일->속성->인증서를 선택합니다. .
C. 인증 경로 탭을 선택하고:
ㅏ. 첫 번째 줄을 클릭한 다음 인증서를 봅니다. 이것은 루트 인증 기관(CA)에 대한 인증서가 됩니다.
비. 세부정보 탭에서 파일에 복사를 클릭합니다. . 내보내기 마법사가 시작됩니다.
씨. 계속하려면 다음을 클릭하십시오.
디. Base-64로 인코딩된 X.509(.CER) 선택 다음을 클릭합니다. .
이자형. ca1 입력 이름으로 입력하고 확인을 클릭합니다. 인증서를 내보내려면.
에프. 인증 경로 탭의 각 행에 대해 앞의 모든 단계를 반복하여 매번 파일 이름을 1씩 증가시킵니다(즉, ca2, ca3).

3단계:키 저장소 생성

Rathod는 계속해서 다음과 같이 말합니다. “Concurrent Manager Tire에 키 저장소를 만드십시오. 인증서를 키 저장소로 가져옵니다.”

다음은 내가 제공한 샘플 코드로 Rathod가 설명하는 단계입니다.

A. 기본 위치(예:/home/applmgr ).비. FTP 도구를 사용하여 인증서를 Concurrent Manager Tire에 업로드하십시오.

[<user>@servername ~]$ ls -lrt ca1.cer ca2.cer ca3.cer ca4.cer
-rw-rw-r-- 1 applmgr applmgr 1472 Jul 17 00:40 ca1.cer
-rw-rw-r-- 1 applmgr applmgr 1646 Jul 17 00:41 ca2.cer
-rw-rw-r-- 1 applmgr applmgr 1756 Jul 17 00:41 ca3.cer
-rw-rw-r-- 1 applmgr applmgr 2800 Jul 17 00:41 ca4.cer
[<user>@servername ~]$ pwd
/home/applmgr

[<user>@servername ~]$ keytool -genkey -alias -keystore -storetype JKS
Enter keystore password:
Re-enter new password:
What is your first and last name?
What is the name of your organizational unit?
What is the name of your organization?
What is the name of your city or locality?
What is the name of your state or province?
What is the two-letter country code for this unit?
Is CN=XXX, OU=XXX, O=XXX, L=XXX, ST=XXX, C=XXX correct?
 [no]: yes

Enter key password for <-keystore>
    (RETURN if same as keystore password):
Re-enter new password: changeit

C. 생성된 키 저장소로 인증서를 가져옵니다.

[<user>@servername ~]$ ls -la .keystore
-rw-rw-r-- 1 applmgr applmgr 1332 Jul 17 01:04 .keystore

keytool -import -alias my_cert1 -file ca1.cer -keystore .keystore -storepass <keystore password> 
keytool -import -alias my_cert2 -file ca2.cer -keystore .keystore -storepass <keystore password> 
keytool -import -alias my_cert3 -file ca3.cer -keystore .keystore -storepass <keystore password>
keytool -import -alias my_cert4 -file ca4.cer -keystore .keystore -storepass <keystore password>

D. 인증서를 확인합니다.

[<user>@servername~]$ keytool -list -keystore .keystore
Enter keystore password:

Keystore type: JKS
Keystore provider: SUN

Your keystore contains 5 entries

my_cert4, Jul 17, 2020, trustedCertEntry,
Certificate fingerprint (SHA1): 1E:5D:EA:8C:79:E1:89:85:1B:31:62:16:1F:D9:27:6A:56:FD:AB:37
my_cert3, Jul 17, 2020, trustedCertEntry,
Certificate fingerprint (SHA1): 27:AC:93:69:FA:F2:52:07:BB:26:27:CE:FA:CC:BE:4E:F9:C3:19:B8
my_cert2, Jul 17, 2020, trustedCertEntry,
Certificate fingerprint (SHA1): 34:0B:28:80:F4:46:FC:C0:4E:59:ED:33:F5:2B:3D:08:D6:24:29:64
my_cert1, Jul 17, 2020, trustedCertEntry,
Certificate fingerprint (SHA1): 27:96:BA:E6:3F:18:01:E2:77:26:1B:A0:D7:77:70:02:8F:20:EE:E4
-keystore, Jul 17, 2020, PrivateKeyEntry,
Certificate fingerprint (SHA1): E0:DA:C8:95:4F:FB:A2:82:40:9E:6A:02:A0:82:0F:35:5E:B1:FE:08

E. MAILER_SSL_TRUSTSTORE 설정(예:/home/applmgr/.keystore ).

SQL *Plus에서:

[<user>@servername~]$ sqlplus apps/XXXXX @$FND_TOP/sql/afsvcpup.sql

  10006    Workflow Notification Mailer  DEACTIVATED_SYST  WF_MAILER   
GSM

Enter Component Id: 10006

10243 SSL Trust store                NONE              NONE              N 
N
Enter the Comp Param Id to update: 10243
You have selected parameter: SSL Trust store
Current value of parameter: NONE

Enter a value for the parameter: /home/applmgr/.keystore
4단계:IMAPSSL/SMTPSSL과 함께 작동하도록 메일러 구성

다음은 Rathod가 설명하는 단계입니다.

탐색:OAM>시스템 관리자> 워크플로 관리자> 알림 메일러 링크에 로그온합니다. .

A. 아웃바운드 서버 이름을 입력하고 아웃바운드 SSL 활성화 확인란을 확인합니다.B. 인바운드 서버 이름, 사용자 이름, 비밀번호, 회신 주소를 입력하고 인바운드 SSL 사용 확인란을 확인합니다. .

워크플로 Java 메일러 SSL 구성 구현

5단계:R12 인스턴스의 디버깅 단계

다음은 Rathod가 설명하는 단계입니다.

A. SMTP

$AFJVAPRG -classpath $AF_CLASSPATH -Dprotocol=smtp \
 -Ddbcfile=$FND_SECURE/TEST.dbc \
 -Dport=465 -Dssl=Y \
 -Dtruststore=/home/applmgr/.keystore \
 -Dserver=email.yourdomain.com \
 [email protected] -Dpassword=xxxxx \
 -Dconnect_timeout=120 -Ddebug=Y \
 -DdebugMailSession=Y oracle.apps.fnd.wf.mailer.Mailer

비. IMAP

$AFJVAPRG -classpath $AF_CLASSPATH -Dprotocol=imap \
 -Ddbcfile=$FND_SECURE/TEST.dbc \
 -Dport=993 -Dssl=Y \
 -Dtruststore=/home/applmgr/.keystore \
 -Dserver=email.yourdomain.com \
 [email protected] -Dpassword=xxxxx\
 -Dconnect_timeout=120 -Ddebug=Y \
 -DdebugMailSession=Y oracle.apps.fnd.wf.mailer.Mailer
6단계:메일러 인증

R12.1.3에서 Oracle Workflow Notification Mailer는 SMTP 인증을 지원하므로 SMTP 인증을 위해 구성된 엔터프라이즈 SMTP 서버와 함께 Notification Mailer를 사용할 수 있습니다.

Oracle R12.1.3 기능에 대한 2014년 프레젠테이션에 따르면:“SMTP 인증을 위해서는 발신자가 메일 서버에 자신을 식별하여 인증해야 합니다. 인증에 성공하면 메일 서버는 보낸 사람의 메일 전송을 허용합니다. SMTP 인증을 사용하면 스팸 발송자와 같은 승인되지 않은 사용자에 대한 릴레이 서비스를 거부하면서 합법적인 사용자가 메일을 릴레이할 수 있습니다.

"Oracle Workflow는 현재 PLAIN, LOGIN 및 DIGST-MD5 인증 메커니즘을 지원합니다."

7단계:서비스 순환

구성을 완료하려면 필요에 따라 모든 서비스를 중지했다가 시작하세요.

결론

SSL은 메시지 암호화, 무결성 및 인증을 제공하여 통신을 보호합니다. 이전 단계를 따르고 구현하면 워크플로 통신을 쉽게 보호할 수 있습니다.

데이터 서비스에 대해 자세히 알아보세요.

피드백 탭을 사용하여 의견을 작성하거나 질문하십시오. 저희와 대화를 시작할 수도 있습니다.