Logic in Code,
Freedom in Travel.

인생 뭐 있나 사람 사는거 다 똑같지

분류 전체보기

임시보관/로그인 서비스

FIDO

2024. 2. 26. 14:01
임시보관/로그인 서비스

[인증]: OpenId Connect (OIDC) Protocol And JWTs

OAuth 2.0 에서는 발렛 키(Access Token)를 얻는 과정이었다. 이로인해 OAuth 2.0만으로는 부족한 점이 있는데 그것이 바로 "이 사용자가 정확히 누구인가?"에 대한 표준화된 정보이다. 이를 해결하기 위해 OAuth 2.0 위에 신원 확인 계층을 얹은 것이 바로 OIDC(OpenID Connect)이다. 오늘은 OIDC의 핵심인 ID Token과 이를 실무에서 구현할 때 사용하는 JWT(JSON Web Token)를 라이브러리 없이 파헤쳐보려한다. OAuth 2.0 vs OIDC: 무엇이 다를까?많은 개발자가 이 둘을 혼용하지만, 목적 자체가 다르다. OAuth 2.0 (Authorization): 인가(권한 부여)가 목적이다. "내 사진첩에 접근할 수 있게 해줘"라는 요청에 대해 '..

2024. 2. 26. 09:26
임시보관/로그인 서비스

[인증]: RFC 6749 - The OAuth 2.0 Authorization Framework

기술 블로그나 이력서를 보면 소셜 로그인을 개발한것을 보고 OAuth 2.0 개발을 했다는 글을 많이 보았다.하지만 MBTI 의 T 로서는 정정할 필요가 있다고 생각한다. 소셜로그인을 개발한다는것은 OAuth 2.0 을 사용한 인증서버에 "Google로 로그인", "GitHub으로 로그인" 버튼을 만들어 연결만 한것이다. 이러한 소셜로그인은 Passport.js 같은 라이브러리를 사용해서 쉽게 구현하지만, 라이브러리를 사용하지 않아도 충분히 쉽게 구현이 가능하다. 의외로 OAuth 2.0 프로토콜을 준수하면서 Node.js와 Express만으로 순수하게 OAuth 2.0의 원리를 파헤치는건 복잡하고 어렵다. OAuth 2.0 이란 OAuth 2.0(RFC 6749)은 인가(Authorization)를 위..

2024. 2. 26. 09:24
Programming/스프링 부트(Spring Boot)

[Spring Boot] - Valid Annotation 정리

Valid Annotation AnnotationDescription @AssertFalse 값이 false인지 확인, null은 체크하지 않음 @AssertTrue 값이 true인지 확인, null은 체크하지 않음 @Null null만 허용 @NotNull null을 허용하지 않음, 공백과 스페이스는 체크하지 않음 @NotEmpty null과 공백을 허용하지 않음, 스페이스는 체크하지 않음 @NotBlank null, 공백, 스페이스 모두 허용하지 않음 @Pattern(regexp= ) 정규표현식을 검사 @Email 유효한 이메일 형식인지 확인, 공백은 체크하지 않음 @Size(min= , max= ) 길이가 min, max 범위인지 확인 @Max(value= ) value 이하의 값인지 확인 @Min..

2024. 2. 24. 16:33
Programming/$_머니 (PHP)

[Laravel] : The GET method is not supported for this route. Supported methods: POST

이슈 이러한 이슈가 발생하는 이유는 현재 요청이 들어온 페이지에 맞는 HTTP Method 가 Router 에 등록되지 않았기 때문이다. 대부분 이런 이슈는 글 작성, 글 수정, 글 삭제 등에서 빈번히 발생한다. 빈번히 발생하는 이유는 많이 접하기 때문이다. 해결 방법 코드를 잘 확인해야 한다. 나는 POST 를 원해요 아래 코드는 GET 이다. 왜? Mehod를 POST 라고 알려주지 않았으니까 @csrf 삭제 나 POST 맞아요. 아래 코드는 POST이다. 하지만 요청이 가는 곳은 현재 열려있는 페이지 이다. 왜? Action 이 어디인지 알려주지 않았으니까 @csrf @method('DELETE') 삭제 나 AJAX 썻는데요? 아래 코드는 GET의 현재 열려있는 페이지 이다. 왜? Method 와 ..

2024. 2. 21. 02:02