IT 천국 (127) 썸네일형 리스트형 [Spring boot] Spring Security saml2.0 예제 분석 (spring-security-saml2-core) 필터 등록 /saml/config/WebSecurityConfig.java:87 @Bean public FilterChainProxy samlFilter() throws Exception { List chains = new ArrayList(); // IDP에 등록한 Recipient URL and Destination URL로 인증 프로세스를 위한 필터 chains.add(new DefaultSecurityFilterChain(new AntPathRequestMatcher("/saml/SSO/**"), samlWebSSOProcessingFilter())); // 등록한 IDP discovery를 위한 url chains.add(new DefaultSecurityFilterChain(new AntPat.. [Spring boot] authenticationEntryPoint /auth 인증을 위한 Entry point는 보통 아래와 같이 security config이 configure 메소드에서 설정을 한다. @Override protected void configure(HttpSecurity http) throws Exception { http .csrf() .disable(); http .httpBasic() .authenticationEntryPoint(samlEntryPoint); .httpBasic() 은 아래와 같이 미리정의된 HttpBasicConfigurer 을 실행해준다. /** * Creates a new instance * @see HttpSecurity#httpBasic() */ public HttpBasicConfigurer() { realmName(DEFAUL.. [Spring boot] SAML2.0 SSO 간단 정리 SSO는 Single Sign-On의 약자로 한번의 로그인으로 여러개의 다른 도메인을 이용한다는 의미를 담고 있다. 예를들어, 로그인 검증은 A라는 곳에서 하고, B라는 곳에서는 A에서 검증된 로그인 정보라면 검증을 따로 하지 않게끔 하는 것이 SSO에 해당한다. 이런 SSO를 구현하기 위한 대표적인 방법으로 SAML, OAuth가 많이 사용된다. SAML (Security Asserting Markup Language) - (로그인) 인증/인가 정보를 담은 XML - cross domain 상황, 다양한 플랫폼에 관계없이 표준적인 방법으로 SSO 구현이 가능하게 함 - 아래와 같이 3가지의 구성원이 존재 1) Service Provideer (SP) : 서비스 제공 주체 2) User 3) Identi.. [Postgresql] RETURNING 활용 예제 Postgresql의 RETURNING 문을 사용하면 insert, delete, update 시 수행된 행을 return 받을 수 있고 이를 응용하여 여러 step을 하나의 쿼리로 수행해 볼 수 있다. 단일 Insert 예제 테스트 전 테이블 내용 CREATE TABLE users ( user_id serial PRIMARY KEY, NAME VARCHAR(20) ) CREATE TABLE users_backup ( user_id serial PRIMARY KEY, NAME VARCHAR(20) ) Insert returning 예제 WITH rows AS ( INSERT INTO users VALUES (10, '테스트') RETURNING user_id ) INSERT INTO users_backu.. [Postgresql] Upsert 구현 (insert ~ on conflict) DB 구현시 많이 쓰는 패턴중에 하나가 해당 row가 있으면 update, 없으면 insert를 하는 패턴일 것이다. Oracle의 경우는 merge ~ into 구문을 통해 한번의 명령으로 해당 로직을 구현할 수 있다. Postgres에서도 동일한 명령이 있지 않을까? 아래와 같이 insert ~ on conflict 구문을 활용하면 구현할 수 있다. 문법은 다음과 같다. INSERT INTO [TABLE] (COLUMN1, COLUMN2, ...) VALUES (VALUE1, VALUE2, ...) ON CONFLICT ([column_name / ON CONSTRAINT constraint_name/ WHERE predicate]) [DO NOTHING] [DO UPDATE SET column1 =.. [Postgresql] auto increment, sequence 처리방법 DB를 개발할때 초반에 고민하는 것중에 하나가 행 입력시 증가하는 일련번호, 시퀀스 번호를 어떻게 동작시킬것인가이다. Postgresql도 여러 방법으로 시퀀스 번호를 동작시키는 메커니즘을 가지고 있다. SEQUENCE 객체 활용 전통적인 방법으로 따로 SEQUENCE 객체를 생성하고 테이블에 붙여주는 방법이다. postgresql 기본적인 시퀀스 생성 CREATE SEQUENCE seq_user_id INCREMENT 1 START 1 MINVALUE 1 MAXVALUE 9223372036854775807 CACHE 1; 시퀀스를 생성한 후에는 ALTER명령으로 속성을 변경할 수도 있다. 아래 링크에서 기능 설명이 되어 있다. ALTER SEQUENCE [ IF EXISTS ] 이름 [ AS 자료형 ].. [Intellij, Eclipse, VSCode] 단축키 정리 IntelliJ Eclipse VSCode 특정 문자 검색 (Find in path) Ctrl + Shift + F Ctrl + H (File Search -> Containing text) 파일 검색 (Find file) Double Shift Ctrl + H (File Search -> File name) Navigate Back Ctrl + Alt + LEFT Alt + LEFT Navigate Forward Ctrl + Alt + RIGHT Alt + RIGHT Reformat Code Ctrl + Alt + L Ctrl + Shift + F Optimize Imports Ctrl + Alt + O Ctrl + Shift + O 현재 선택된 코드 Project 위치 바로가기 좌측 Project 트.. [AWS solution architect associate] 키워드 요약 [AWS EBS (Elastic Block Store)] - EBS볼륨은 한번에 하나의 인스턴스에만 붙일 수 있다. - Q: 새로 생성되는 모든 볼륨이 항상 암호화된다고 확신할 수 있습니까? 예. 이제는 리전당 단일 설정을 사용하여 EBS 암호화를 기본적으로 활성화할 수 있습니다. 그리고 이렇게 하면 모든 새 볼륨이 항상 암호화됩니다 [AWS EFS] EFS는 windows 인스턴스를 지원하지 않음. FSx : Win, linux지원 EFS : Linux지원, Lustre FSx : Linux지원, SMB : FSx, storagegateway file gate지원 [AWS cloudFront] 웹 애플리케이션 방화벽 서비스인 AWS WAF를 사용하여 웹 액세스 제어 목록(웹 ACL)을 만들어 콘텐츠에 .. 이전 1 ··· 6 7 8 9 10 11 12 ··· 16 다음