OAuth2 인증 테스트를 진행할 때 grant typepassword로 설정하여 접속 하는 경우 필요한 파라미터는 grant_type = password, client_id, client_secret, username, password 입니다. 테스트를 진행하다 보면 Unsupported grant type: password 라는 리턴 값을 받는 경우가 있습니다.

{

"error":"unsupported_grant_type",

"error_description":"Unsupported grant type: password"

}

 

실제 리턴되는 형태는

oauth2 grant type password

 

org.springframework.web.client.HttpClientErrorException$BadRequest: 400 :

[{"error":"unsupported_grant_type","error_description":"Unsupported grant type: password"}]

 

일단 오류 결과를 얻었다는 건 OAuth2 Server 작업은 잘 되었다고 볼 수 있습니다그럼 이제 오류만 해결하면 됩니다사실 이건 오류는 아니고 설정이 빠져서 발생하는 부분입니다.


AuthorizationServerConfigurerAdapter를 상속받아 서버 인증 설정을 하게 되는데 상속하는 Method에서 configure(AuthorizationServerEndpointsConfigurer endpoints) 작업을 하지 않은 경우일 가능성이 있습니다해결책은 여기에 AuthenticationManager를 추가해 주면 됩니다.


WebSecurityConfigurerAdapter에 다음과 같이 Bean을 설정 하고

@Configuration

@EnableWebSecurity

public class WebSecurityConfig extends WebSecurityConfigurerAdapter {

 

    @Override

    @Bean

    public AuthenticationManager authenticationManagerBean() throws Exception {

        return super.authenticationManagerBean();

    }

}

 

 

AuthorizationServerConfig endpoints 추가를 해줍니다.

@Configuration

@EnableAuthorizationServer

public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdapter {

 

   @Override

   public void configure(AuthorizationServerEndpointsConfigurer endpoints) throws Exception {

 

          endpoints.authenticationManager(authenticationManager);

   }

 

 }

 

 

그리고 다시 테스트를 하면 원하는 결과를 얻을 수 있습니다.


oauth2 grant type password

oauth2 grant type password


- copy coding -


 

프로그램 할 때 query log가 안보이면 제대로 실행이 되고 있는 건지 디버깅도 힘들고 답답하기 때문에 로그 보는 설정을 먼저 진행하게 됩니다오늘 진행하는 작업은 대부분의 Database가 동일한 방법으로 작업이 가능 합니다.

 

먼저 maven을 이용하여 log4j2를 추가 합니다.


pom.xml 

        <dependency>

            <groupId>org.bgee.log4jdbc-log4j2</groupId>

            <artifactId>log4jdbc-log4j2-jdbc4.1</artifactId>

            <version>1.16</version>

        </dependency>

 

그리고 추가한 라이브러리가 작동할 수 있도록 application.properties

spring.datasource.driverClassName=net.sf.log4jdbc.sql.jdbcapi.DriverSpy

를 추가하고 source urllog4jdbc 를 추가 해줍니다


application.properties

## PostgreSQL

spring.datasource.driverClassName=net.sf.log4jdbc.sql.jdbcapi.DriverSpy

#spring.datasource.url=jdbc:postgresql://localhost:5432/copydb

spring.datasource.url=jdbc:log4jdbc:postgresql://localhost:5432/copydb

spring.datasource.username=copycoding

spring.datasource.password=copy123

 

다른 데이터 베이스를 사용 하는 경우에도 첫 번째 라인인 DriverSpy는 추가해 주고 url 부분을 다음처럼 변경을 합니다.

spring.datasource.url=jdbc:log4jdbc:oracle:thin:@localhost:1521/xe

spring.datasource.url=jdbc:log4jdbc:mariadb://localhost:3306/testdb

spring.datasource.url=jdbc:log4jdbc:mysql://localhost/testdb

 

그리고 실행을 하면 아래 그림처럼


sql query log


모든 값들이 정리되지 않고 나오게 되는데 이제 정리를 하기 위한 설정을 추가해 줍니다.


 

src/main/resources 폴더에 properties 파일을 하나 생성 합니다.


log4jdbc.log4j2.properties

log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator

log4jdbc.dump.sql.maxlinelength=0

  

src/main/resources 폴더에 추가로 xml 파일을 생성 합니다.


logback.xml

<?xml version="1.0" encoding="UTF-8"?>

 

<configuration>

  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">

    <encoder>

      <pattern>%d{yyyyMMdd HH:mm:ss.SSS} [%thread] %-3level %logger{5} - %msg %n</pattern>

    </encoder>

  </appender>

 

  <logger name="jdbc" level="OFF"/>

 

  <logger name="jdbc.sqlonly" level="OFF"/>

  <logger name="jdbc.sqltiming" level="DEBUG"/>

  <logger name="jdbc.audit" level="OFF"/>

  <logger name="jdbc.resultset" level="OFF"/>

  <logger name="jdbc.resultsettable" level="DEBUG"/>

  <logger name="jdbc.connection" level="OFF"/>

 

  <root level="INFO">

    <appender-ref ref="STDOUT" />

  </root>

 

</configuration>

 

이제 다시 실행을 하고 console을 보게 되면 


sql query log


보기 좋게 형식을 갖추어 출력이 됩니다.


- copy coding -


SC제일은행 외환 통장을 개설하고 구글 애드센스에 통장을 등록하는 과정 입니다그냥 몇개 정보만 입력 하면 완료 됩니다SC제일은행이 아니더라도 방법은 동일 하게 진행 됩니다.

일단 은행 정보로 은행 영문명과 SWIFT 코드가 필요한데 해당 은행의 홈페이지에 가면 구할 수 있습니다.  SC제일은행의 경우는 홈페이지에 영문명이 있습니다.


google adsense sc 제일은행


Standard Chartered Bank Korea Limited. 라고 되어 있고

 

SWIFT CODE는 홈페이지 검색을 통하여 구할 수 있습니다그냥 SWIFT 라고만 검색 해도 됩니다.


google adsense sc 제일은행


SWIFT CODE 무엇인가요?

게시일 : 2009-03-20

조회수 : 2644

 

SWIFT CODE 국제 은행간 전신환 송금에 있어서 일종의 은행코드 라고 생각 하시면 됩니다. 저희 SC제일은행의 영문 명칭은 Standard Chartered First Bank Korea이고, SWIFT CODE  SCBLKRSE입니다. 


SCBLKRSE 라도 되어 있습니다.

 

이제 필요한 정보를 얻었으니 Google Adsense에 등록 합니다에드센스에 로그인 하고


google adsense sc 제일은행


상단에 지급 보류가 걸려있다고 써있는 우측의 작업 글씨를 클릭하여


google adsense sc 제일은행


아래로 스크롤 하면


google adsense sc 제일은행


조금 아래로 내리면 지급받을 방법이 있는데 결제 수단 추가를 선택 합니다.


google adsense sc 제일은행


여기서는 새 은행 송금 세부정보 추가를 클릭 합니다.

새 수표...는 우편으로 수표가 전달되어 오는데 직접 은행에 가서 환전하면 된다고 하네요


google adsense sc 제일은행


결제수단 추가가 나오면 항목을 하나씩 적어 나갑니다.


google adsense sc 제일은행


예금주 이름, 은행 이름, SWIFT CODE, 계좌번호만 입력하면 됩니다.


google adsense sc 제일은행


기본 결제 수단을 설정을 선택하고 저장 합니다.


google adsense sc 제일은행


잠시 후 수익금이 100 달러가 넘으면 등록한 계좌로 수수료 제하고 들어 옵니다.


- copy coding -


sc 제일은행 통장 만들기를 위하여 인터넷 뱅킹 가입을 완료 하고 나서 최초로 통장을 사용 하려고 하는 경우 로그인을 해야 합니다로그인 방법은 다양하게 있으며 그중 본인이 편리한 방법을 선택해서 진행 하면 됩니다.


sc제일은행 외화통장 개설


로그인 방식은 6가지가 있는데 여기서 하나를 선택 합니다저는 공인인증서를 선택해서 타행 인증서 등록을 하였습니다.


sc제일은행 외화통장 개설


공인 인증서를 등록하고 나면 이렇게 로그인 화면이 나타나고 로그인을 진행 합니다.


sc제일은행 외화통장 개설


로그인에 성공 하면 두드림 통장이 나타나고 초기에는 원화 탭이 선택 되어 있는데 그냥 원화 통장을 사용하려면 이대로 사용하면 되고 외화 통장을 사용하려면 외화통장 가입을 진행해야 합니다.


sc제일은행 외화통장 개설


외화 통장 가입은 우측에 있는 외화 탭을 선택하는 것으로부터 시작 됩니다.  외화 탭을 선택 하고 아래에 있는 외화보통예금(입출금)을 선택 합니다.


sc제일은행 외화통장 개설


아직 외화보통예금 통장이 만들어지지 않은 상태이므로 신청하기 버튼을 클릭해서 통장 신청을 진행 합니다.


sc제일은행 외화통장 개설


모바일 뱅킹으로 쉽고 빠르게 통장을 만들어보라고 안내가 나오면 다음 버튼 클릭


sc제일은행 외화통장 개설


신청조건을 확인하고 체크를 하고 확인 버튼 클릭


sc제일은행 외화통장 개설


sc제일은행 외화통장 개설


고객정보 확인을 진행하고 관리영업점을 선택 하고 다음 버튼을 클릭


sc제일은행 외화통장 개설


sc제일은행 외화통장 개설


약관을 모두 동의 하고 상품소개 직원은 생략하고 다음 버튼 클릭


sc제일은행 외화통장 개설


sc제일은행 외화통장 개설


금융사기 거래 목적 확인도 선택 하는데 답은 모두 예가 아닙니다.


sc제일은행 외화통장 개설


추가인증은 위에서 한번 해본 방법으로 본인명의 타행 계좌를 통한 인증을 선택


sc제일은행 외화통장 개설


본인명의 계좌 정보를 입력하고 1원 송금하기 버튼을 클릭


sc제일은행 외화통장 개설


문자로 인증코드를 받아 입력하고 인증코드 확인 버튼을 클릭 합니다.

 

계좌비밀번호는 캡처 방지가 되어있어 생략 합니다. . 


sc제일은행 외화통장 개설


sc제일은행 외화통장 개설


드디어 외환통장이 생성 되었습니다이제부터 외환 통장을 사용할 수 있습니다.

여기서 다음 버튼을 클릭하면 카드를 요청하는 화면으로 이동하는데 필요하면 체크카드를 만들어도 됩니다.

 

다시 로그인하고 외환에 들어가면 


sc제일은행 외화통장 개설


요렇게 외환 통장 내역이 표시 됩니다.


- copy coding -


1···12131415161718···61

+ Recent posts