기본 콘텐츠로 건너뛰기

2021의 게시물 표시

keytool 사용법

keytool.exe -genkey -alias juheon -keyalg RSA -keypass 1234qwer -storepass 1234qwer -keystore juheon.jks  keytool.exe -export -alias juheon -storepass 1234qwer -file juheon.cer -keystore juheon.jks  keytool.exe -importkeystore -srckeystore juheon.jks -destkeystore juheon.key.p12 -deststoretype PKCS12  D:\Java\32bit\jdk1.5.0_22\jre\lib\security\cacert  D:\Java\32bit\jdk1.5.0_22\bin\keytool.exe -import -alias tsasample -keystore  D:\Java\32bit\jdk1.5.0_22\jre\lib\security\cacert -file D:\workspace\Servers\tsa-server-web-config\tomcat.cer  keytool -import -alias somansa -keystore C:\Program Files\Java\jdk1.8.0_102\jre\lib\security\cacert -file c:\somansa.cer #인증서 생성  keytool -genkey -alias keyAlias -keyalg RSA -keypass changeit -storepass changeit –validity 9999 -keystore keystore.jks  keytool -export -alias keyAlias -storepass changeit -file server.cer -keystore keystore.jks  keytool -import -v -trustcacerts -alias keyAlias -file server.cer -keystore cacerts.jks -keypass changeit

Springboot 에서 mvn test 실행 시 test가 실행되지 않는 경우

spring boot version: spring boot version: 2.5.1 증상: 올바른 test package 경로와 class 명(Test*.java, *Test.java .etc)을 지정했음에도 springboot maven test 실행 시 test가 진행되지 않음. [INFO] ------------------------------------------------------- [INFO]  T E S T S [INFO] ------------------------------------------------------- [INFO] [INFO] Results: [INFO] [INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0 원인: junit5 버전이 올라가면서 패키지 경로가 변경됨. ("org.junit.Test"에서 "org.junit.jupiter.api.Test"로 변경) 방법 1: junit-vintage-engine dependency를 추가 <dependency> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> <scope>test</scope> </dependency> 방법 2: Test annotation class를 "org.junit.Test"에서 "org.junit.jupiter.api.Test"로 변경

Gradle 인증 설정

사설 artifactory를 구축하여 사용하면서 인증을 통해 접근 가능하다록 하는 경우 build.gradle 파일에 계정 설정이 필요하다. build.gradle repositories {     maven {     credentials  {             username = "${mavenUser}"             password = "${mavenPassword}"         } url 'https://pms.initech.com/artifactory/libs-release' authentication {                                 basic(BasicAuthentication) } } } 사용자 계정정보를 형상관리 서버에 노출시키지 않기 위해 별도로 분리한다. C:\Users\{user_name}\.gradle\gradle.properties mavenUser=userid mavenPassword=userpw

ANT sftp upload

 <?xml version="1.0" encoding="UTF-8"?> <project name="MyProject" basedir="." xmlns:artifact="antlib:org.apache.maven.artifact.ant"> <path id="maven-ant-tasks.classpath" path="D:\ant\lib\maven-ant-tasks-2.1.3.jar" /> <typedef resource="org/apache/maven/artifact/ant/antlib.xml" uri="antlib:org.apache.maven.artifact.ant" classpathref="maven-ant-tasks.classpath" /> <property name="ssh_user" value="user"/> <property name="ssh_pw" value="1111"/> <!-- ======================================================== --> <!-- app 배포 --> <!-- ======================================================== --> <target name="DEV_PAYMENT_RELEASE" depends="dev_ssh_host, set_property_payment, release" /> <target name="DEV_JSP_RELEASE" depends="dev_ssh_host, s

FIPS

FIPS FIPS 지원 제품을 의무적으로 사용해야 하는 환경에서 이 애플리케이션을 운영하거나 FIPS 인증 암호화 모듈을 통한 보안을 구축하고자 하는 경우 FIPS 모드를 설정해야 합니다. 이 애플리케이션은 FIPS 가이드라인을 도입한 정부 기관 및 기업에 필요한 FIPS(Federal Information Processing Standard: 연방 정보처리 규격) 140-2 암호화 사용을 지원합니다. FIPS란? FIPS는 컴퓨터 보안 제품 지침에 대한 일련의 표준입니다. FIPS 인증은 암호화를 사용하는 제품의 모든 부분에 적용됩니다. FIPS 인증 제품은 연구소를 통해 FIPS 140-2(암호화 모듈 보안 요건 표준)를 준수하며 하나 이상의 FIPS 인증 알고리즘을 지원하는 것으로 검증된 제품입니다. 여러 국가의 정부 기관 및 몇몇 민영 기업은 FIPS 인증 제품을 의무적으로 사용하고 있습니다. FIPS 모드란? FIPS 모드란 FIPS 승인 알고리즘만 사용하는 구성을 말합니다. 이 애플리케이션을 FIPS 모드에서 운영하도록 구성하면 애플리케이션은 브라우저와 API 인터페이스 모두에서 보안 콘솔과 스캔 엔진 그리고 보안 콘솔과 사용자 간의 통신을 암호화하도록 FIPS 인증 암호화 라이브러리를 구현합니다. FIPS 단계 FIPS 140-2 에서는  레벨 1  에서  레벨 4  까지 4개의 단계가 있다 레벨 1  : 가장 낮은 수준이며, 최소한의 조건만 충족 레벨 2  : 암호 모듈에 접근하지 못하도록 장치가 되어있으며, 외부 침입자가 접근하였을 경우 흔적이 남도록 되어있음. 암호 모듈에속한 소프트웨어나 펌웨어가 표준 상용 OS에서 동작할수 있어야함. 레벨 3  : 외부 침입자가 물리적으로 접근하였을 경우 저장된 암호키를 삭제함, 암호 모듈에속한 소프트웨어나 펌웨어가 표준 상용 OS에서 동작할수 있어야함. 레벨 4  : 암호 모듈 보호장치의 내부로 침입하기위해 물리적 또는 전기적 접근 시도가 있을시 저장된 암호키를 삭제함, 외부 환경 변화를 감지한 경우 저장

MYSQL 명령어

# mysql -u root -p mysql > use mysql;     // mysql database 선택 mysql > select host, user from user;     // user 테이블 살펴보기 사용자 추가 (권한추가) mysql >  create user 사용자ID ;    //  사용자 추가 mysql > create user  userid@localhost  identified by  '비밀번호' ; // 사용자(user)를 추가하면서 패스워드까지 설정 기존에 사용하던 계정에 외부 접근 권한을 부여하려면, Host를 '%' 로 하여 똑같은 계정을 추가한다 mysql > create user  'userid'@'%'  identified by  '비밀번호' ;   // '%' 의 의미는 외부에서의 접근을 허용 mysql > drop user '사용자ID'@localhost;     // 사용자 삭제 mysql >  select * from user;     // 등록된 모든 사용자 ID 조회 mysql >  delete from user where user = ' 사용자ID ';        // 사용자 삭제 계정이 생성되었다면, 그 계정이 접근할 수 있는 데이터베이스를 생성하고 권한을 부여해야 한다 데이터베이스 생성 mysql > show database s ;       // DB 목록 확인 msyql > create database DB명 ;      // 데이터베이스 생성 msyql > create schema  DB명  default character set utf8;  -- 둘중에 하나를 입력하면 DB 생성됨 mysql > create database  DB명  default character set utf8; //  default character