본문 바로가기

oAuth24

728x90
구글 OAuth 인증 토큰 저장 및 갱신 유지관리 구글 OAuth 연동을 사용하는 경우, 사용자가 자신의 구글 계정으로 인증을 할 때 생성되는 OAuth 키(토큰)를 저장하고 관리해야 합니다. 이 토큰은 사용자가 서비스에 대해 특정 권한을 부여했음을 나타내며, 이를 통해 사용자의 구글 계정 데이터에 접근할 수 있습니다. 보통 두 종류의 토큰을 관리해야 합니다. 액세스 토큰(Access Token): 짧은 유효기간을 가지며, 구글 API에 요청을 보낼 때 사용됩니다. 리프레시 토큰(Refresh Token): 액세스 토큰이 만료되었을 때 새 액세스 토큰을 받기 위해 사용됩니다. 리프레시 토큰은 긴 유효기간을 가지고 있거나 만료되지 않는 경우도 있습니다. 토큰을 안전하게 보관하는 것은 매우 중요합니다. 누군가가 이 토큰들을 탈취하면 사용자의 데이터에 접근할.. 2024. 3. 22.
슬랙 채널로 데이타 관리 및 유사사례 검색 활용 AI 대응 슬랙 채널에 새로운 스레드가 등록될 때 유사 내용에 대한 이전 내역을 추출하여 정리하는 슬랙봇을 만드는 과정을 구현하기 위한 가이드입니다. 1. 슬랙 API 사용을 위한 준비 Slack API 사용 등록: 먼저 Slack API 웹사이트에 접속하여 새로운 앱을 생성합니다. 이 과정에서 생성된 앱을 원하는 슬랙 워크스페이스에 설치해야 합니다. 앱 권한 설정: 앱이 슬랙 채널의 메시지를 읽고, 메시지를 포스팅할 수 있도록 필요한 권한을 설정합니다. 일반적으로 channels:history, groups:history, im:history, mpim:history, chat:write, chat:write.public 권한이 필요할 수 있습니다. Bot User OAuth Access Token: 슬랙 앱 설.. 2024. 3. 14.
전통적인 Web-DB 구조에서 Web-WAS(API)-DB 아키텍처로의 전환 전통적인 web-db 구조 대신 web-was(api)-db 구조로 운영하는 것은 여러 보안 이점이 있습니다. 이러한 아키텍처는 분리된 레이어를 통해 보안을 강화하며, 각 레이어가 서로 다른 보안 요구 사항과 위험을 관리할 수 있도록 합니다. 특히 API를 사용하는 경우, 보안 위험을 줄이고 보안 설정의 정확성을 높일 수 있습니다. 관리의 용이성: WEB/WAS 구조에서는 웹 서버와 WAS가 분리되어 있어 서버 관리 및 장애 대응이 더욱 용이합니다. 웹 서버와 WAS의 역할이 구분되어 있기 때문에 관리 및 유지보수가 더 쉽고, 장애 발생 시 대처 방안도 명확해집니다. 안정성 및 가용성: 이중화를 통해 안정성을 높일 수 있습니다. 웹 서버와 WAS가 분리되어 있으면, 하나의 시스템에 문제가 발생해도 다른 .. 2024. 3. 11.
OAuth 2.0 워크플로우 이해 및 구글 서비스 인증 토큰 OAuth 플로우는 인터넷 사용자가 하나의 서비스(예: 웹사이트나 앱)가 다른 서비스의 정보에 접근할 수 있도록 허용하는 표준화된 프로세스입니다. OAuth를 사용하면 사용자가 자신의 자격 증명(예: 아이디와 비밀번호)을 제3의 서비스에 제공하지 않고도 두 서비스 간의 안전한 데이터 공유를 허용할 수 있습니다. 이 과정에서 주로 두 가지 유형의 토큰(액세스 토큰과 리프레시 토큰)이 사용됩니다. 액세스 토큰 (Access Token) 목적: 액세스 토큰은 사용자가 서비스에 로그인한 후, 이 서비스가 다른 서비스에 접근할 수 있도록 하는 짧은 기간의 토큰입니다. 유효 기간: 일반적으로 짧은 기간(예: 몇 시간) 동안만 유효합니다. 사용 방식: 사용자가 로그인을 완료하면, 서비스는 액세스 토큰을 받고, 이 토.. 2024. 2. 18.
API 서비스 보안 체크 포인트 정리 API 서비스를 대외적으로 공개하기 전에 보안 관점에서 준수해야 할 기준을 설정하는 것은 매우 중요합니다. 여기 몇 가지 주요 보안 기준을 소개합니다. 인증 및 권한 부여: 사용자가 API에 액세스하고 상호 작용할 수 있는 방식을 관리하기 위해 강력한 인증 및 권한 부여 메커니즘을 구현해야 합니다. OAuth, JWT (JSON Web Tokens) 같은 표준을 사용하는 것이 좋습니다. 암호화: 데이터 전송은 SSL/TLS와 같은 안전한 프로토콜을 사용하여 암호화되어야 합니다. 이는 데이터가 인터넷을 통해 전송될 때 도청되거나 변경되는 것을 방지합니다. 접근 제한 및 속도 제한: 악의적인 사용자가 시스템을 과부하시키거나 데이터를 손상시키는 것을 방지하기 위해 IP 주소 또는 토큰 기반의 접근 제한 및 요.. 2024. 2. 17.
728x90
728x90