반응형

IT 지식 13

OpenAI CEO가 추천하는 모두가 읽어야 할 9가지 책

OpenAI의 CEO인 Sam Altman이 당신의 인생을 바꿀 것이라고 생각하는 9권의 책을 공유합니다. 독서는 지식을 늘리고 인간으로서 성장하는 가장 강력한 방법 중 하나입니다. OpenAI CEO Sam Altman은 이 사실을 알고 있습니다. 그는 오랫동안 책에 대한 존경심을 표해 왔으며, 독서는 긴 하루를 보낸 후 휴식을 취하는 좋은 방법일 뿐만 아니라 삶의 더 큰 질문을 이해하는 데에도 도움이 될 수 있다고 믿습니다. 아인슈타인의 개인적인 투쟁을 조사한 역사적 논픽션부터 인공 지능의 사용을 둘러싼 현재의 사회 주제를 탐구하는 철학적 읽기에 이르기까지, 그의 개인 독서 목록은 기술로 형성된 세상에서 인류의 미래에 대해 생각을 자극하는 질문을 제기하는 동시에 마음을 열 수 있는 놀라운 내용으로 가..

IT 지식 2024.04.22

REST API의 6가지 제약 조건

REST(Representational State Transfer)는 효율적이고 신뢰할 수 있으며 확장 가능한 시스템을 가져오는 소프트웨어 아키텍처 설계 제약 그룹을 나타냅니다. 이러한 제약 조건에는 6가지가 있으며 REST를 이해하려면 제약 조건이 무엇이고 왜 존재하는지 알아야 합니다. 1. 클라이언트-서버 아키텍처 (Client-server architecture)첫 번째 제약 조건은 클라이언트-서버 아키텍처(client-server architecture)입니다. 이 제약 조건은 담당 분야를 적절하게 분리합니다. 클라이언트는 사용자 인터페이스 문제를 관리하고 서버는 데이터 저장 문제를 관리합니다. 그 결과 우리는 하나의 REST 서비스에서 인터페이스가 어떻게 생겼는지 또는 무엇을 하는지 알 필요도 ..

IT 지식 2023.06.24

개발자 포털(Developer Portal) 구축 방안

개발자 포털은 사용자가 표준화된 API를 사용하고 검색하고 사용할 수 있도록 다양한 API 관련 리소스가 포함된 디지털 목적지를 업계에 제공합니다. 포털은 개발자, 제품 관리자 및 전략가가 정보를 검색하고, API 카탈로그 및 문서에 액세스 하고, 테스트 샌드박스에 등록하여 API를 추가로 탐색할 수 있는 셀프서비스 플랫폼입니다. 목표는 사용자가 질문하고, 지원을 받고, 아이디어를 공유할 수 있는 협업을 가능하게 함으로써 솔루션에 대해 배우고 개발할 수 있는 도구를 통해 관련산업 및 개발자 커뮤니티를 돕는 것입니다. 개발자 포털 청사진 및 구성의 설계 원칙 (Design Principles) 다양한 사용자 유형에 맞는 사용성 사용자/개발자 유형 및 API 비즈니스 기능별 보안 및 권한 부여 읽기 쉬운 정..

IT 지식 2023.06.15

Web API의 특징과 장단점

Web API는 웹 서버 또는 웹 브라우저용 애플리케이션 프로그래밍 인터페이스(Application programming interface) 입니다. 일반적으로 웹 개발 개념으로서 웹 애플리케이션의 클라이언트와 서버라는 두 소프트웨어가 서로 통신 할 수 있는 메커니즘으로, 서버 측에서 클라이언트 애플리케이션 소프트웨어를 구축하고 통합하기 위한 정의 및 프로토콜 세트를 제공하게 됩니다. API는 새로운 개념이 아니며, 두 소프트웨어 구성 요소가 서로 통신할 수 있게 하는 메커니즘이기 때문에 예전부터 다양한 방식의 API가 존재해 왔습니다. 하지만 여기에서는 다양한 API 중에서도 특히 Web API에 대해 알아보도록 하겠습니다. API의 특징 사람이 읽을 수 있고 쉽게 적응할 수 있으며 정보를 직접 전송,..

IT 지식 2023.06.12

OAuth 2.0 (RFC 6749)의 목적, 인증 절차와 인증 방식

OAuth의 최종 목적은 Access Token을 발급받는 것입니다. 그리고 발급받은 Access Token을 사용해서 리소스 서버에 존재하는 리소스를 엑세스 할 수 있습니다. 이러한 OAuth의 인증 절차와 인증 종류에 대해 조금 더 알아보겠습니다. OAuth 2.0의 인증 절차 (A) 클라이언트가 리소스 소유자에게 권한 부여를 요청합니다. 인증 요청은 리소스 소유자에게 직접(표시된 대로) 또는 바람직하게는 중개자로서 인증 서버를 통해 간접적으로 이루어질 수 있습니다. (B) 클라이언트는 자원 소유자의 권한을 나타내는 크리덴셜인 권한 부여를 수신하며, 본 명세서에서 정의한 4가지 권한 부여 유형 중 하나 또는 확장 권한 부여 유형을 사용하여 표현한다. 권한 부여 유형은 권한 부여를 요청하기 위해 클라이..

IT 지식 2023.06.11

Authentication과 Authorization 차이

인증 (Authentication) 인증(Authentication)은 서버 입장에서 내가 누구인지 확인하는 과정이며, 올바른 신원을 증명하는 것을 의미한다. HTTP에서 주로 사용되는 인증(Authentication) 방법 기본 인증 (Basic Authentication) 가장 간단하고 쉬운 방법 발신자가 요청 헤더에 사용자 이름:비밀번호를 입력해야 함 쿠키, 세션 ID, 로그인 페이지 및 기타 특수 솔루션이 필요하지 않습니다. Handshake나 기타 복잡한 응답 시스템이 없습니다. 무기명 인증 (Bearer Authentication) 베어러 토큰이라는 보안 토큰을 포함합니다. "이 토큰 보유자에게 액세스 권한 부여"로 이해될 수 있습니다. 보호된 리소스에 대한 요청을 할 때 Authorizati..

IT 지식 2023.06.11

JWT (JSON Web Token)의 구조와 사용 예

JWT(JSON Web Token)는 당사자 간에 정보를 JSON 개체로 안전하게 전송하기 위한 간결하고 독립적인 방법을 정의하는 개방형 표준(RFC 7519)입니다. 이 정보는 디지털 서명되어 있으므로 확인하고 신뢰할 수 있습니다. JWT는 비밀(HMAC 알고리즘 포함) 또는 RSA 또는 ECDSA를 사용하는 공개/개인 키 쌍을 사용하여 서명할 수 있습니다. JWT를 암호화하여 당사자 간에 비밀성을 제공할 수도 있지만 여기서는 서명된 토큰에 중점을 둘 것입니다. 서명된 토큰은 그 안에 포함된 클레임의 무결성을 확인할 수 있는 반면 암호화된 토큰은 다른 당사자로부터 해당 클레임을 숨깁니다. 공개/개인 키 쌍을 사용하여 토큰에 서명할 때 서명은 개인 키를 보유한 당사자만이 서명한 당사자임을 인증합니다. J..

IT 지식 2023.06.11

RFC 7523 - JWT 인증 방식의 특징, OAuth 2.0과의 관계

JWT Authorization Grant (RFC 7523)는 OAuth 2.0 인증 프레임워크 기반에서 작동하는 JWT인증 방식이며, 기본적으로 OAuth의 인증 절차를 그대로 사용하지만, 인증을 위해 JWT를 사용합니다. RFC 7523의 특징 또한 RFC 7523은 기본 OAuth 인증 방식과 다른 몇 가지 특징이 있습니다. Bearer JWT를 권한 부여 인증 방식으로 사용하기 위해 클라이언트는 Assertion Framework for OAuth 2.0 Client Authentication and Authorization Grants (RFC7521)에 정의된 것과 같이 다음 특정 매개변수 및 인코딩과 함께 액세스 토큰을 요청합니다. "grant_type"의 값은 "urn:ietf:param..

IT 지식 2023.06.02

Open API와 OpenAPI의 개념과 차이

API 뭐 별거 있어? API 스펙 받아서 endpoint에 요청 날리고 응답받게 구현하면 되는 거지라고 생각했었는데, 토이 세션 준비를 위해 API에 대해 알아보다 보니 다양한 용어와 개념들을 명확히 설명하는 것이 쉽지만은 않았다. 그래서 Open API와 OpenAPI의 개념과 Swagger 등에 대한 개념과 특징 및 차이점 등을 정리해 보았다. 결론부터 말하면 OpenAPI는 Open API와는 완전히 다른 개념이다. Open API (with space) Open API란 서비스의 개념으로, 누구나 접근 가능한 공개된 자료를 API 를 통해 제공받을 수 있는 서비스라고 볼 수 있다. 쉬운 예로는 기상청에서 제공하는 일기예보 API, 행안부의 주소검색 API 등이 있으며, 국내에서는 공공 API(P..

IT 지식 2023.05.27

REST API의 개념과 동작 방식

우리는 휴대폰에서 좋아하는 소셜 미디어 앱을 열고, 태블릿에서 최신 뉴스를 읽고, 컴퓨터에서 여행 상품을 검색하거나, 스트리밍 서비스를 통해 좋아하는 프로그램을 시청합니다. 기술적인 관점에서 이런 행위의 공통점은 바로 REST API를 사용하여 인터넷에서 정보를 가져온다는 것입니다. 소셜 미디어(SNS)와 같은 일반적인 웹사이트나 모바일 애플리케이션을 열면 다양한 탐색 옵션이 포함된 상단 또는 하단 메뉴, 경우에 따라 추가 정보가 포함된 사이드바나 햄버거(?) 아이콘으로 표시되는 숨겨진 메뉴, 그리고 주요 콘텐츠를 보여주는 메인 영역이 표시됩니다. 이런 화면들에서 아래로 스크롤하면 화면이 계속 업데이트되어 더 많은 콘텐츠를 보여줍니다. 사실 웹사이트나 모바일 앱을 통해 우리 눈에 보이는 화면은 단지 정형..

IT 지식 2023.05.27
반응형