전체 글 24

Spring Security에 대한 설명

Spring Security는 Spring 프레임워크에서 제공하는 인증과 권한 부여를 처리하기 위한 강력한 보안 프레임워크입니다. 주로 사용하는 방식: 인증(Authentication): 사용자의 신원을 확인하고 검증하는 과정입니다. Spring Security는 다양한 인증 방식을 지원하며, 주로 사용되는 방식은 사용자 이름과 비밀번호를 이용한 폼 기반 인증입니다. 인가(Authorization): 인증된 사용자에게 특정 기능이나 자원에 접근할 권한을 부여하는 과정입니다. Spring Security는 사용자의 권한을 관리하기 위해 롤(Role) 기반 접근 제어를 지원합니다. 보안 설정: Spring Security는 보안 관련 구성 요소를 설정하기 위해 XML, Java Config, 어노테이션 등 ..

영역별/Spring 2023.11.20

OAuth 1.0 vs 2.0 비교

OAuth 1.0 vs 2.0 비교 OAuth 1.0과 OAuth 2.0은 인증과 권한 부여를 위한 프로토콜이지만 몇 가지 중요한 차이점이 있습니다. OAuth 1.0 OAuth 1.0은 서명된 요청을 통해 클라이언트 애플리케이션이 인증 및 권한 부여를 받는 프로토콜입니다. 구체적인 특징: 서명된 요청: 서버와 클라이언트 간의 모든 요청은 서명되어 무결성이 보장됩니다. 암호화된 토큰: 발급된 엑세스 토큰은 암호화되지 않습니다. 시간 제한: 발급된 요청 토큰은 일정 기간 후 만료됩니다. OAuth 2.0 OAuth 2.0은 보다 간소화된 인증 프로토콜로, 모바일 및 웹 애플리케이션에 적합합니다. 구체적인 특징: 리소스 소유자의 동의: 서버와 클라이언트 간에 리소스 소유자의 동의를 거칩니다. 토큰 기반 인증..

영역별/Rule 2023.11.20

GraphQL에 대한 설명, 설치 방법, 사용하는 곳, 기본 사용 방법

GraphQL에 대해서 GraphQL은 쿼리 언어 및 실행 엔진입니다. 웹 클라이언트가 데이터를 요청할 때 필요한 데이터만 선택적으로 가져오는 것을 가능하게 합니다. GraphQL은 Facebook에서 개발되었으며, RESTful API의 한계를 극복하기 위해 만들어졌습니다. GraphQL 설치 방법 GraphQL은 다양한 언어와 프레임워크에서 사용할 수 있습니다. 여기에는 간단한 Node.js 예제를 제공합니다. $ npm install graphql GraphQL 사용하는 곳 GraphQL은 주로 웹 애플리케이션 개발에서 사용됩니다. GraphQL은 클라이언트가 필요한 데이터를 정확하게 지정할 수 있으므로, 쿼리를 보낼 때 불필요한 데이터를 받아오지 않아도 되고, 여러 개의 엔드포인트를 호출하지 않아..

영역별/Rule 2023.11.19

GlusterFS 기본 사용법 예시

GlusterFS는 분산 파일 시스템으로서 많은 기능을 제공합니다. 아래는 GlusterFS의 기본 사용법에 대한 예시입니다. 1. GlusterFS 설치 첫 번째로, GlusterFS를 설치해야 합니다. 설치 방법은 운영체제에 따라 다를 수 있으며, 아래는 CentOS에서의 예시입니다: $ sudo yum install centos-release-gluster $ sudo yum install glusterfs-server 2. 볼륨 생성 두 번째로, GlusterFS에서 사용할 볼륨을 생성해야 합니다. 아래는 볼륨을 생성하는 예시입니다: $ sudo gluster volume create vol0 replica 2 transport tcp server1:/bricks/brick1/brick serve..

영역별/Infra 2023.11.19

Restful API 작성법

Restful API 작성법에 대한 안내 1. URI(Uniform Resource Identifier) 하나의 API 엔드포인트는 명사로 구성된 URI로 표현됩니다. 명사는 복수형으로 단어가 나열되며, 중요한 정보는 경로에 포함되어야 합니다. 예를 들면, "/users" 나 "/products" 와 같습니다. 2. HTTP 메소드 서버에 요청하는 메소드는 해당 리소스를 어떻게 다룰지를 나타내는 동사로 표현됩니다. GET: 리소스를 조회합니다. POST: 새로운 리소스를 생성합니다. PUT: 리소스를 업데이트 또는 생성합니다. DELETE: 리소스를 삭제합니다. PATCH: 리소스의 일부를 업데이트합니다. 3. HTTP 응답 상태 코드 요청이 서버에 어떻게 처리되었는지를 표현하는 상태 코드는 다양한 값이..

영역별/Rule 2023.10.10

ElasticSearch 범위조회쿼리 사용방법 및 예제 쿼리

ElasticSearch에서 범위조회를 수행하기 위해서는 range 쿼리를 사용해야 합니다. 이 쿼리는 특정 필드의 값을 지정한 범위로 제한하여 검색을 수행합니다. 다음은 ElasticSearch에서 범위조회쿼리를 사용하는 방법과 몇 가지 예제 쿼리입니다: 1. 범위조회쿼리 작성하기 아래의 예제는 필드명 "age"가 20 이상 30 미만인 문서를 검색하는 쿼리입니다: { "query": { "range": { "age": { "gte": 20, "lt": 30 } } } } 2. 날짜 범위조회쿼리 아래 예제는 "created_at" 필드가 2021-01-01부터 2021-12-31까지인 문서를 검색하는 쿼리입니다: { "query": { "range": { "created_at": { "gte": "20..

ElasticSearch 기본조회쿼리 사용방법

ElasticSearch는 다양한 조회 쿼리를 제공합니다. 여기서는 가장 기본적인 쿼리인 "match"와 "term" 쿼리에 대해 알려드리겠습니다. match 쿼리 match 쿼리는 지정된 필드에서 지정한 텍스트를 가진 문서를 찾아줍니다. GET /my_index/_search { "query": { "match": { "field_name": "search_text" } } } term 쿼리 term 쿼리는 지정된 필드에서 정확하게 일치하는 값을 가진 문서를 찾아줍니다. GET /my_index/_search { "query": { "term": { "field_name": "exact_value" } } }

Docker-compose를 사용하여 MongoDB 구성하기

Docker-compose를 사용하여 MongoDB를 구성하는 방법은 다음과 같습니다: 먼저, Docker-compose.yml 파일을 생성합니다. 이 파일은 MongoDB 컨테이너를 구성하는 데 사용됩니다. 다음은 Docker-compose.yml 파일 내에 MongoDB 서비스를 정의하는 부분입니다. 아래와 같은 코드를 추가합니다: version: '3.8' services: mongodb: image: mongo container_name: mongodb ports: - 27017:27017 volumes: - mongodb_data:/data/db environment: - MONGO_INITDB_ROOT_USERNAME=admin - MONGO_INITDB_ROOT_PASSWORD=passwor..

영역별/Infra 2023.09.24

MongoDB Docker Compose 구성하기

다음은 MongoDB를 Docker Compose로 구성하는 방법입니다. 먼저, Docker 환경이 설치되어 있는지 확인하고, Docker Compose도 설치되어 있는지 확인해주세요. Dockerfile 작성: MongoDB 이미지를 사용하기 위해 Dockerfile을 작성합니다. Dockerfile: ```Dockerfile FROM mongo:latest EXPOSE 27017 CMD ["mongod", "--bind_ip", "0.0.0.0"] ``` docker-compose.yml 파일 작성: MongoDB 서비스를 정의하는 docker-compose.yml 파일을 작성합니다. docker-compose.yml: ```yaml version: '3' services: mongodb: build..

영역별/Infra 2023.09.24

Spock를 사용하는 방법

Spock는 Groovy를 기반으로한 테스트 프레임워크입니다. Spock을 사용하기 위해 다음과 같은 단계를 따릅니다. 먼저, 프로젝트의 의존성에 Spock을 추가합니다. Spock 스펙을 작성합니다. 스펙은 'spock' 이라는 키워드로 시작하며, groovy 파일로 작성됩니다. 스펙 안에서 테스트하고자 하는 로직을 작성하고, 확인하고자 하는 조건을 지정합니다. 테스트를 실행하고 결과를 확인합니다. 아래는 Spock 스펙의 간단한 예시입니다. import spock.lang.Specification class MyMathSpec extends Specification { def "덧셈 테스트"() { given: def x = 2 def y = 3 when: def result = x y then: r..

영역별/TestCode 2023.09.24