SlideShare a Scribd company logo
1 of 29
API Management
Reference Architecture 개요
2016.04
HP Enterprise Service
Lee, Seong-Bok
내용
• Open API
• OpenAPI Management
• OpenAPI Reference Architecture
• API Management Solutions
Open API
Open API 개요
• Application Programming Interface
• 소프트웨어가 서로 의사소통을 하는 규약
• 일반적 의미로는 운영체제, 어플리케이션, 라이브러리 등 다양한 수준의
인터페이스를 총칭
• 플랫폼의 기능을 외부에서 쓸 수 있도록 개방한 API를 Open API라고 함
Open API 제공 방법
Web Services
• 웹 프로토콜로 제공
• 소량의 데이터 전송 처리 중심
1
In Services
• 완성된 형태로 구현이 가능
• 웹/앱에 간단한 코드로 서비스 연계 가능
2
SDK
• 소켓과 같은 특수 프로토콜 구현
• 개발의 편의성
3
Open API 핵심기술
1) 프로토콜관점
1) 통신
• HTTP
• Streaming (실시간 대량 데이터 전송 시)
2) 데이터포맷
• XML
• JSON (XML보다 가볍고 빠른 처리 가능)
3) 프로토콜
• REST
• XML-RPC
• SOAP
웹서버에서 처리 가능
[참고] Open API 통신 방법
프로토콜 관점의 주요 통신 방법
REST(Representational State Transfer)
• 월드 와이드 웹 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처의 한 형식
• 도메인 지향 데이터를 http위에서 soap이나 쿠키를 통한 세션 트랙킹 같은 부가적인 전송 레이어없이 전송하기 위한 아주
간단한 인터페이스
• 엄격한 의미의 REST는 네트워크 아키텍처 원리의 모음으로 리소스를 정의하고 리소스에 대한 주소를 지정하는 방법에
대한 개괄
• 리모트 프로시저 콜을 이용하는 대신에 간단한 xml과 http 인터페이스를 이용하여 커다란 소프트웨어 시스템 설계 가능
XML-RPC
• RPC프로토콜의 일종
• 코딩 형식은 xml을 선택하고 전송방식은 http를 사용
• Xml-RPC의 경우는 클라이언트/서버 방식으로 동작하여 서버가 반드시 필요
SOAP(Simple Object Access Protocol)
• HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 컴퓨터 네트워크 상에서 교환하는 형태의 프로토콜
• SOAP은 웹 서비스에서 기본적인 메시지를 전달하는 기반.
• SOAP에는 몇 가지 형태의 메시지 패턴이 있지만 보통의 경우 원격 프로시저 호출 패턴으로 네트워크 노드에서 다른 쪽 노
드쪽으로 메시지를 요청 하고, 서버는 메시지를 즉시 응답
• XML을 근간으로 헤더와 바디를 조합하는 디자인 패턴으로 설계
Open API 핵심기술
2) API 비즈니스관점
1) 인증
• API 호출 시 허가된 사용자인지 확인
• API Key 발급, OAuth인증
2) 트래픽 제어
• API 허용량 만큼 쓰도록
• 서버스케일링
3) 통계
• 사용량통계  과금처리
• 어뷰징 감지
API Gateway 서버
(웹서버겸용)
Open API 핵심기술
3) API 개발사관리관점
1) 개발자등록
• 기본정보
• 애플리케이션정보
2) API 키 발급
• API 별 발급
• 요청API 및 사용량
3) 통계
• API 사용량 관리
• 제휴신청
4) 개발지원
• 개발 가이드
• 커뮤니티, Q&A
API 포털
Open API 핵심 컴포넌트
API 포털 서버
• 제휴사 정보관리
• 키 발급
• API 사용관리
인증서버
• OAuth인증
• HMAC 인증
통계서버
• API 이용로그데이터추출
• 통계데이터생성 API 대시보드
캐시서버
• 빠른 서비스 속도를 위한 캐싱
• 소셜 네트워크에서 서비스가 퍼지는 경우 트
래픽이 급증 가능
게이트웨이 서버(웹서버를 포함함)
• 다양한 API를 묶어 하나로 제공
• API 트래픽 제어
- 각 API에 대한 트래픽 모니터링
• API 보안
- 3rdparty에 API 서버 은닉
- 이용자 식별을 위해 인증처리
• API 사용 로깅
- 서비스별 API 사용현황 집계
- 향후 서버 증설 시점 예측
API Management
API Management?
• Forrester – API Management
• Gartner – Application Service Governance
• 누구는 API Platform
어쨌든 기본적으로는 API Gateway + Developer Portal을 의미
• REST같은 인터페이스를 사용
해서 외부(의 어플리케이션)에
API를 제공하는 기능 영역
• API를 관리하는 하위 시스템들 또는 기능들
로 구성된 영역
• 개발자가 필요한 API와 관련 상세 내용을
찾아보고 테스트할 수 있는 웹사이트
Business Model for API - 이해관계자들
API Provider: 비즈니스 서비스와 데이터를
갖고 있는 핵심 이해관계자
API Publisher:
• API 관리 솔루션을 이용하는 비즈니스
서비스와 데이터를 통해 업무용 API를
발행하는 기술적 협력사
• 충분한 IT 인프라와 인력을 가진 조직으로
in-house나 상업용 호스팅 서비스에 API
관리 솔루션을 설치하고 설정.
API Store: API 사용자를 위한 기술적, 업무적
정보를 제공하는 사설 또는 공공의 API 게시
장소 (programmableweb가 공공 API store의
사례)
API Consumer: API를 사용해서
어플리케이션을 개발하는 API 개발자(모바일
앱 개발자, 웹 앱 개발자부터 엔터프라이즈
개발자까지)
App Store:
모바일/스마트 기기의 앱 자체, 모바일
사용자들이 다운로드/구매하는 앱을 위한
공개된 시장
WEB Apps: 최종 사용자에게 다양한 업무상의
기능을 제공하기 위해 개발된 웹 기반의
어플리케이션
Application Consumers: 업무처리를 위해
API Management의 개념도
• API Usage Analytics
• Latency Analytics
• Performance Metrics
• Exception Metrics
• Application API Key Management
• Consuming Application Management
• API Documentation
• API Subscription Management
• API Discovery and Catalog
• API Life Cycle Management
Internal, Partner, 3rd party 개발자, API 소유자
API개발자
API Management Platform의 역할
Exposing, securing, governing, monitoring APIs; deploying an API store for
internal or external use.
• configured as an API gateway delivering traffic shaping, API key validation, URL mapping, security
credential mediation, and service level tracking.
• capture business activity, usage activity, policy decision events, policy violations, policy exceptions,
and governance key performance indicators. IT and Business users may analyze high-volume activity
and use governance dashboards to view key performance indicators, policy exceptions, and
compliance.
• store API meta-data defining interface, API service level tiers, back-end service dependencies,
developer documentation, and API subscriptions.
• analyzes business activity over time and triggers notifications, automatic systems management
actions, application performance tuning, corrective workflows, and human tasks.
• manages identity and policy-driven entitlements, determines context-based entitlement assertions,
delivers role based access control decisions, generates access keys and tokens, provisions
applications, facilitates single sign-on, maps credentials, federates identity repositories and identity
API Management Platforms이 갖추어야 할 기능
 API Security (SSL, PKI, threat protection, schema validation, encryption, signatures, etc)
 API Identity (AuthN & AuthZ, API key, OAuth, SAML, LDAP, proprietary IAM, multifactor, token translation & management)
 API Orchestration (adaptation of multiple services, workflow operations, branching policies, etc.)
 Traffic Mediation (SOAP to REST mediation, data format transformation, legacy application integration)
 Traffic Shaping(Rate limitation, Caching etc)
 Deployment Flexibility (on-premise, cloud, managed service, SaaS, hybrid)
 Uniform interface/proxy to multiple backend messaging protocols (JMS, RMI etc)
 Developer and App OnBoarding (Client ID/App Key generation, Interactive API console)
 API Lifecycle governance (Versioning)
 Analytics & Traffic Monitoring
 API metering, Billing and Monetization
 Data Protection(Data encryption, Data masking etc for PCI/PII compliance)
 Mobile Optimization (Pagination, Compression, JSON etc)
 Operational Integration (System Monitoring, Clustering, Scalability, Migration)
 Mobile Integration (support for push notifications, geolocation, streaming protocols)
 Cloud Integration (SSO to SaaS providers, IaaS integration, SaaS data connectors, hybrid cloud support)
 API Discovery (Catalog, Search and Provisioning)
 Community Management (Blogs, Forums, Social features etc)
http://www.infoq.com/research/api-management?utm_source=infoqresearch&utm_campaign=rr-content
[참고]
Oauth(Open Authentication)
Open API를 이용할 때 사용되는 표준화된 인증방법. 매쉬업 서비스로 만들어진 애플리케이션(Application) 또는 웹서비스가 다른
어플리케이션 또는 서비스의 사용자 정보에 접근할 때 사용되는 인증 방법
SAML(Security Assertion Markup Language)
OASIS(Organization for the Advancement of Structured Information Standards)에서 제정한 XML 기반의 보안 표준 언어. 플랫폼 거래
파트너들이 인증 정보, 권한 부여 정보 그리고 프로파일 정보를 안전하게 교환할 수 있도록 설계된 표준으로, 기업 내부 또는 기업 간의
SSO(Single sign-on)를 제공하고 기업 보안 인프라 구조에 종속되지 않는 장점
LDAP(Lightweight Directory Access Protocol),
디렉터리 데이터베이스에 접속하기 위한 통신 규약으로 디렉터리 정보의 등록, 갱신, 삭제 및 검색 등을 실행. 통신망을 이용한 이용자
메일 주소나 이용자의 정보를 검색하는 데 주로 사용
IAM(Identity and Access Management)
ID와 패스워드를 종합적으로 관리해 주는 역할 기반의 사용자 계정 관리 솔루션. ID 도용이나 분실로 인한 보안 사고에 대비하여 보안
관리자에게는 사용자 역할에 따른 계정 관리를, 사용자에게는 자신의 패스워드에 대한 자체 관리 기능을 제공한다. 또한 시스템과 각종
자원에 대해 고객ㆍ기업 내 사용자ㆍ관리자 등의 접근을 제어할 수 있어, 한 번의 ID와 패스워드 입력으로 다양한 시스템에 접속할 수
있도록 싱글 사인온(SSO)이나 ID에 따라 사용 권한을 차등적으로 부여하는 엑스트라넷 접근 관리(EAM)를 확장 또는 보완한 것,
Multifactor Authentication (다중 인증)
아래 세 가지 요소 중 두 가지 이상을 조합하여 인증하는 방식. 일명 ‘2차인증’
1) 사용자가 알고 있는 것(예: 아이디, 패스워드),
2) 사용자가 가지고 있는 것(예: 공인인증서, OTP, 모바일 디바이스 및 웹 토큰) ,
3) 사용자 고유의 요소(예: 생체인식 및 행동 메트릭 솔루션)
[참고]
JMS(Java Message Service)
네트워크에서 컴퓨터간 메시징이라는 일반 통신을 지원하는 선 마이크로시스템즈사의 응용 프로그램 인터페이스(API). 표준 메시징
프로토콜과 자바 프로그램 지원을 받아 특별 메시징 서비스를 제공하고, 자바 메시지를 주고 받는 자바 애플리케이션을 개발하는데
사용한다. 또한, 기업 메시징 시스템 액세스를 위한 API로서, 컴퓨터간 데이터 교환, 이벤트 안내, 서비스 요구 사항 등과 같은 정보를
포함하는 메시지를 비동기적으로 주고 받는 비즈니스 애플리케이션을 작성하고 다른 시스템이나 다른 언어로 쓰여진 프로그램을
일원화하는데 주로 사용되며, 자바 객체를 포함한 메시지와 XML 페이지를 포함한 메시지를 지원한다.
RMI (Remote Method Invocation)
분산 시스템에서 상대의 자바 객체를 호출할 수 있는 프로토콜. 자바 객체가 네트워크상 어느 곳에 있던 간에 서로 통신할 수 있게
해주는 기능으로, 네트워크로 연결된 다른 컴퓨터에 존재하는 메소드를 마치 내 컴퓨터에 있는 듯이 호출해서 사용하게 된다. 원격 절차
호출(RPC)의 자바 버전으로, 프로그래머가 소켓 통신에 대한 고려 없이 원격 메소드 호출(RMI) 관련 등급만으로 프로그램을 작성하면
자바 하부에서 네트워크에 관련된 처리를 담당해 준다. 공동 객체 요구 매개자 구조(CORBA)의 객체 모델을 도입하고, 이를 단순화해
객체의 이동이나 분산된 객체의 접속을 가능하게 해주는 자바 객체만을 위해 설계된 것이다. 따라서 다른 언어로 작성된 컴포넌트를
사용하지 않는다.
SOAP(Simple Object Access Protocol)
일반적으로 널리 알려진 HTTP, HTTPS, SMTP 등을 통해 XML 기반의 메시지를 컴퓨터 네트워크 상에서 교환하는 프로토콜이다.
SOAP은 웹 서비스에서 기본적인 메시지를 전달하는 기반이 된다. SOAP에는 몇가지 형태의 메시지 패턴이 있지만, 보통의 경우 원격
프로시져 호출(Remote Procedure Call: RPC) 패턴으로, 네트워크 노드(클라이언트)에서 다른 쪽 노드(서버)쪽으로 메시지를 요청 하고,
서버는 메시지를 즉시 응답하게 된다. SOAP는 XML-RPC와 WDDX에서 envelope/header/body로 이루어진 구조와 전송(transport)와
상호 중립성(interaction neutrality)의 개념을 가져왔다.
SOAP은 XML을 근간으로 헤더와 바디를 조합하는 디자인 패턴으로 설계되어 있다. 「헤더」는 선택사항으로 반복이나 보안 및 트랜젝
션을 정보로 하는 메타 정보를 가지고 있다. 「바디」부분은 주요한 정보인 정보를 가지고 있다.
API Reference
Architecture
API Reference Architecture
Provider
Systems
Consumer
Management Developer
Portal
License Key Management
API Meta-Data Repository
Life Cycle Management
Billing Analytics
Gateway
Translation
License Key
Authentication
Throttling
Access Control
Applications
Identity
Management
Financials
APIManagement
Consumer
Applications
Web APIs
Developer
The consumers of the
APIs
The API Management
itself
The provider systems
that the API
Management interfaces
with.
API Reference Architecture의 구성요소
REST같은 인터페이스를 사용해서
외부(의 어플리케이션)에 API를 제
공.
 Translation :
 내부 어플리케이션 인터페이스를
web API로 사용될 수 있는 형태로
변환(보통 SOAP/XML과
REST/JSON간의 변환)
 데이터 필드나 필터 변환을 쉽게
함으로써 내부 인터페이스에서 제
공하는 기능을 외부 사용자들이
사용할 수 있게 함
 Licence Key Authentication :
최초 등록 후 부여된 라이선스 키로
API호출  호출 때마다 키 검증
 Throttling : 라이선스에 따라 호출할
수 있는 API 양을 제한
 Access Control : Identity 관리 시스
템과 연동하여 외부 어플리케이션이
제공하는 identity 정보를 가지고 내부
API에 접근하는 것을 통제
Gateway
API를 관리하는 하위 시스템들로 구
성되며 공급사의 담당자들이 사용
 Licence Key Management :
라이선스 키와 관련 정책들을 관리.
사용자 라이선스와 라이선스 유형을
관리.
 API Meta-Data Repository :
API 관련 모든 데이터 관리(인터페이
스, 데이터 스키마, 관련 정책 등)
 Life Cycle Management :
API의 생성, 공개(publication), 버전
관리(versioning), 폐지 등의 전 라이
프사이클 관리
 Billing :
과금을 위해 API 사용량 모니터링 
보통 공급사의 재무시스템과 연결됨
 Analytics :
API 사용에 관한 정보를 제공
Management Portal
개발자가 필요한 API와 관련 상세 내
용을 찾아볼 수 있는 웹사이트
• 개발자가 자신의 어플리케이션에
삽입할 수 있는 라이선스 키 획득
• “How to” information to get a
developer quickly up to speed in
integrating the API with their
applications.
• API를 테스트해 볼 수 있는 방법
• 댓글이나 포럼과 같은 기능(Social
aspects)
• programmable web.같은 외부 사
이트에 API 상세내역을 발표
API Management Architecture 구성요소별 기능
영역 구성요소 기능
Gateway Translation Traffic Mediation (SOAP to REST mediation, data format transformation, legacy application 통
합)
Uniform interface/proxy to multiple backend messaging protocols (JMS, RMI etc)
Mobile Optimization (Pagination, Compression, JSON etc)
License Key
Authentication
API Identity (AuthN & AuthZ, API key, OAuth, SAML, LDAP, proprietary IAM, multifactor, 토큰
변환/관리)
API Security (SSL, PKI, threat protection, schema validation, encryption, signatures, etc)
Throttling API Orchestration (다중 서비스 채택, workflow operations, branching policies, etc.)
Traffic Shaping(Rate limitation, Caching etc)
Access Control Deployment Flexibility (on-premise, cloud, managed service, SaaS, hybrid)
Mobile Integration (support for push notifications, geolocation, streaming protocols)
Cloud Integration (SSO to SaaS providers, IaaS integration, SaaS data connectors, hybrid
cloud 지원)
Management License Key
Management
Developer and App OnBoarding (Client ID/App Key generation, Interactive API console)
API Meta-data
Repository
Data Protection(Data encryption, Data masking etc for PCI/PII compliance)
Life Cycle Management API Lifecycle governance (Versioning)
Billing API metering, Billing and Monetization
Analytics Analytics & Traffic Monitoring
API Management Suite
REST API Reference Architecture
SOAP/REST
and Legacy
Web ServicesService Bus
API Gatewa
y
API Portal
API Clients
Developers 4
2
Protocols
HTTP,
SOAP,
REST,
XML
JMS
FTP
RES
T
JWT
OAM, SM
Basic Auth,
X.509
1
Service Bus
Directly accessed by
internal clients, provides:
• Routing, mediation,
versioning - abstracts
backend services from
internal clients
• Heavy duty payload
transformations
• Protocol translation for
legacy apps
2
API Gateway
Exposes API’s to the external world,
provides:
• API Key generation/validation
• Access enforcement
• OAUTH Server
• Rate Limiting / Client Throttling
• Response caching
• API virtualization in the DMZ
• Security token & protocol mediation
• Firewalling, method/parameter
whitelisting
• API aggregation & mash-up
• API usage measurement & reporting
3
Repository
Provides:
• API catalog
• API dependency
analysis
• API lifecycle
management
4
API Portal
External developer portal, sits
on top of API repository & API
gateway - provides:
• Self service registration,
onboarding
• “API marketplace”
• API documentation, forums,
blogs, support
• API Key delivery
• API testing tools
• Visualization of runtime usage
metrics / monitoring
• Billing
Security
WS-Security,
Basic Auth,
Digest,
X509, UNT,
SAML, Kerberos
Sign & Encrypt
Repository3
1
API 관리의 대표적인 모델
API 관리의 응용
Web API의 구현 클라우드 기반의 API 관리
API 관리의 응용
기업 내/외부에서의 API 사용
API Management 솔루션 연혁
2013년 CA에 합병
2013년 5월 Intel에 합병
2013년 Axway에 합병
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
Thank you

More Related Content

What's hot

Azure Application insights - An Introduction
Azure Application insights - An IntroductionAzure Application insights - An Introduction
Azure Application insights - An IntroductionMatthias Güntert
 
Architecting an Enterprise API Management Strategy
Architecting an Enterprise API Management StrategyArchitecting an Enterprise API Management Strategy
Architecting an Enterprise API Management StrategyWSO2
 
API Strategy Introduction
API Strategy IntroductionAPI Strategy Introduction
API Strategy IntroductionDoug Gregory
 
AWS DirectConnect 구성 가이드 (김용우) - 파트너 웨비나 시리즈
AWS DirectConnect 구성 가이드 (김용우) -  파트너 웨비나 시리즈AWS DirectConnect 구성 가이드 (김용우) -  파트너 웨비나 시리즈
AWS DirectConnect 구성 가이드 (김용우) - 파트너 웨비나 시리즈Amazon Web Services Korea
 
Enforcing Your Organization's API Design Standards with SwaggerHub
Enforcing Your Organization's API Design Standards with SwaggerHubEnforcing Your Organization's API Design Standards with SwaggerHub
Enforcing Your Organization's API Design Standards with SwaggerHubSmartBear
 
Api gateway
Api gatewayApi gateway
Api gatewayenyert
 
클라우드 환경으로 데이터베이스 이전하기 - 강민석, AWS SR. Database SA
클라우드 환경으로 데이터베이스 이전하기 - 강민석, AWS SR. Database SA클라우드 환경으로 데이터베이스 이전하기 - 강민석, AWS SR. Database SA
클라우드 환경으로 데이터베이스 이전하기 - 강민석, AWS SR. Database SAAmazon Web Services Korea
 
What is APIGEE? What are the benefits of APIGEE?
What is APIGEE? What are the benefits of APIGEE?What is APIGEE? What are the benefits of APIGEE?
What is APIGEE? What are the benefits of APIGEE?IQ Online Training
 
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017Amazon Web Services Korea
 
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018 AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018 Amazon Web Services Korea
 
Security on AWS :: 이경수 솔루션즈아키텍트
Security on AWS :: 이경수 솔루션즈아키텍트Security on AWS :: 이경수 솔루션즈아키텍트
Security on AWS :: 이경수 솔루션즈아키텍트Amazon Web Services Korea
 
IT전략계획-04.보안 아키텍처
IT전략계획-04.보안 아키텍처IT전략계획-04.보안 아키텍처
IT전략계획-04.보안 아키텍처InGuen Hwang
 
Designing APIs with OpenAPI Spec
Designing APIs with OpenAPI SpecDesigning APIs with OpenAPI Spec
Designing APIs with OpenAPI SpecAdam Paxton
 

What's hot (20)

Azure Application insights - An Introduction
Azure Application insights - An IntroductionAzure Application insights - An Introduction
Azure Application insights - An Introduction
 
Building your Datalake on AWS
Building your Datalake on AWSBuilding your Datalake on AWS
Building your Datalake on AWS
 
API Governance in the Enterprise
API Governance in the EnterpriseAPI Governance in the Enterprise
API Governance in the Enterprise
 
Deep Dive - CI/CD on AWS
Deep Dive - CI/CD on AWSDeep Dive - CI/CD on AWS
Deep Dive - CI/CD on AWS
 
Architecting an Enterprise API Management Strategy
Architecting an Enterprise API Management StrategyArchitecting an Enterprise API Management Strategy
Architecting an Enterprise API Management Strategy
 
API Strategy Introduction
API Strategy IntroductionAPI Strategy Introduction
API Strategy Introduction
 
AWS DirectConnect 구성 가이드 (김용우) - 파트너 웨비나 시리즈
AWS DirectConnect 구성 가이드 (김용우) -  파트너 웨비나 시리즈AWS DirectConnect 구성 가이드 (김용우) -  파트너 웨비나 시리즈
AWS DirectConnect 구성 가이드 (김용우) - 파트너 웨비나 시리즈
 
Enforcing Your Organization's API Design Standards with SwaggerHub
Enforcing Your Organization's API Design Standards with SwaggerHubEnforcing Your Organization's API Design Standards with SwaggerHub
Enforcing Your Organization's API Design Standards with SwaggerHub
 
Api gateway
Api gatewayApi gateway
Api gateway
 
Introduction to SOA
Introduction to SOAIntroduction to SOA
Introduction to SOA
 
클라우드 환경으로 데이터베이스 이전하기 - 강민석, AWS SR. Database SA
클라우드 환경으로 데이터베이스 이전하기 - 강민석, AWS SR. Database SA클라우드 환경으로 데이터베이스 이전하기 - 강민석, AWS SR. Database SA
클라우드 환경으로 데이터베이스 이전하기 - 강민석, AWS SR. Database SA
 
What is APIGEE? What are the benefits of APIGEE?
What is APIGEE? What are the benefits of APIGEE?What is APIGEE? What are the benefits of APIGEE?
What is APIGEE? What are the benefits of APIGEE?
 
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
 
Apigee Edge Overview and Roadmap
Apigee Edge Overview and RoadmapApigee Edge Overview and Roadmap
Apigee Edge Overview and Roadmap
 
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018 AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
 
Security on AWS :: 이경수 솔루션즈아키텍트
Security on AWS :: 이경수 솔루션즈아키텍트Security on AWS :: 이경수 솔루션즈아키텍트
Security on AWS :: 이경수 솔루션즈아키텍트
 
API strategy with IBM API connect
API strategy with IBM API connectAPI strategy with IBM API connect
API strategy with IBM API connect
 
IT전략계획-04.보안 아키텍처
IT전략계획-04.보안 아키텍처IT전략계획-04.보안 아키텍처
IT전략계획-04.보안 아키텍처
 
IaC on AWS Cloud
IaC on AWS CloudIaC on AWS Cloud
IaC on AWS Cloud
 
Designing APIs with OpenAPI Spec
Designing APIs with OpenAPI SpecDesigning APIs with OpenAPI Spec
Designing APIs with OpenAPI Spec
 

Viewers also liked

Cloud native application 입문
Cloud native application 입문Cloud native application 입문
Cloud native application 입문Seong-Bok Lee
 
Cloud Native Applications Maturity Model
Cloud Native Applications Maturity ModelCloud Native Applications Maturity Model
Cloud Native Applications Maturity ModelJim Bugwadia
 
Cloud Native Application
Cloud Native ApplicationCloud Native Application
Cloud Native ApplicationVMUG IT
 
The Five Stages of Cloud Native
The Five Stages of Cloud NativeThe Five Stages of Cloud Native
The Five Stages of Cloud NativeVMware Tanzu
 
Cloud Native Application Framework
Cloud Native Application FrameworkCloud Native Application Framework
Cloud Native Application FrameworkVMware Tanzu
 
The Need of Cloud-Native Application
The Need of Cloud-Native ApplicationThe Need of Cloud-Native Application
The Need of Cloud-Native ApplicationEmiliano Pecis
 
The Cloud Native Journey
The Cloud Native JourneyThe Cloud Native Journey
The Cloud Native JourneyVMware Tanzu
 
Enterprise summit – architecting microservices on aws final v2
Enterprise summit – architecting microservices on aws   final v2Enterprise summit – architecting microservices on aws   final v2
Enterprise summit – architecting microservices on aws final v2Amazon Web Services
 
(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture Patterns(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture PatternsAmazon Web Services
 
Oracle: Building Cloud Native Applications
Oracle: Building Cloud Native ApplicationsOracle: Building Cloud Native Applications
Oracle: Building Cloud Native ApplicationsKelly Goetsch
 
ClouNS - A Cloud-native Application Reference Model for Enterprise Architects
ClouNS - A Cloud-native Application Reference Model for Enterprise ArchitectsClouNS - A Cloud-native Application Reference Model for Enterprise Architects
ClouNS - A Cloud-native Application Reference Model for Enterprise ArchitectsNane Kratzke
 
Introduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application ArchitectureIntroduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application ArchitectureDavid Currie
 
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...Kai Wähner
 
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...Kai Wähner
 
Patterns of Cloud Native Architecture
Patterns of Cloud Native ArchitecturePatterns of Cloud Native Architecture
Patterns of Cloud Native ArchitectureAndrew Shafer
 
클라우드 이행전략과 HP의 사례
클라우드 이행전략과 HP의 사례클라우드 이행전략과 HP의 사례
클라우드 이행전략과 HP의 사례Seong-Bok Lee
 

Viewers also liked (20)

Cloud native application 입문
Cloud native application 입문Cloud native application 입문
Cloud native application 입문
 
Cloud Native Applications Maturity Model
Cloud Native Applications Maturity ModelCloud Native Applications Maturity Model
Cloud Native Applications Maturity Model
 
Cloud Native Application
Cloud Native ApplicationCloud Native Application
Cloud Native Application
 
The Five Stages of Cloud Native
The Five Stages of Cloud NativeThe Five Stages of Cloud Native
The Five Stages of Cloud Native
 
Cloud Native Application Framework
Cloud Native Application FrameworkCloud Native Application Framework
Cloud Native Application Framework
 
The Need of Cloud-Native Application
The Need of Cloud-Native ApplicationThe Need of Cloud-Native Application
The Need of Cloud-Native Application
 
The Cloud Native Journey
The Cloud Native JourneyThe Cloud Native Journey
The Cloud Native Journey
 
Forecast 2014: Hackathon
Forecast 2014: HackathonForecast 2014: Hackathon
Forecast 2014: Hackathon
 
Enterprise summit – architecting microservices on aws final v2
Enterprise summit – architecting microservices on aws   final v2Enterprise summit – architecting microservices on aws   final v2
Enterprise summit – architecting microservices on aws final v2
 
(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture Patterns(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture Patterns
 
Oracle: Building Cloud Native Applications
Oracle: Building Cloud Native ApplicationsOracle: Building Cloud Native Applications
Oracle: Building Cloud Native Applications
 
ClouNS - A Cloud-native Application Reference Model for Enterprise Architects
ClouNS - A Cloud-native Application Reference Model for Enterprise ArchitectsClouNS - A Cloud-native Application Reference Model for Enterprise Architects
ClouNS - A Cloud-native Application Reference Model for Enterprise Architects
 
Introduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application ArchitectureIntroduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application Architecture
 
Cloud applications
Cloud applicationsCloud applications
Cloud applications
 
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
 
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
 
Forecast 2014: Cloud-Aware Applications
Forecast 2014: Cloud-Aware Applications Forecast 2014: Cloud-Aware Applications
Forecast 2014: Cloud-Aware Applications
 
Patterns of Cloud Native Architecture
Patterns of Cloud Native ArchitecturePatterns of Cloud Native Architecture
Patterns of Cloud Native Architecture
 
HR과 빅데이터
HR과 빅데이터HR과 빅데이터
HR과 빅데이터
 
클라우드 이행전략과 HP의 사례
클라우드 이행전략과 HP의 사례클라우드 이행전략과 HP의 사례
클라우드 이행전략과 HP의 사례
 

Similar to API Management Reference Architecture

Google Cloud Platform - Apigee
Google Cloud Platform - ApigeeGoogle Cloud Platform - Apigee
Google Cloud Platform - Apigeebliexsoft
 
API Gateway 그리고 모바일 어플리케이션
API Gateway 그리고 모바일 어플리케이션API Gateway 그리고 모바일 어플리케이션
API Gateway 그리고 모바일 어플리케이션BDapis inc.
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해Terry Cho
 
Intro to hpe helion stackato_paa_s
Intro to hpe helion stackato_paa_sIntro to hpe helion stackato_paa_s
Intro to hpe helion stackato_paa_sSeong-Bok Lee
 
IBM 보안솔루션 앱스캔_AppScan Standard 소개
IBM 보안솔루션 앱스캔_AppScan Standard 소개IBM 보안솔루션 앱스캔_AppScan Standard 소개
IBM 보안솔루션 앱스캔_AppScan Standard 소개은옥 조
 
OCE - Cno 2014 private sector oriented open paas oce
OCE - Cno 2014 private sector oriented open paas   oceOCE - Cno 2014 private sector oriented open paas   oce
OCE - Cno 2014 private sector oriented open paas oceuEngine Solutions
 
Microservices
Microservices Microservices
Microservices 영기 김
 
Open standard open cloud engine (3)
Open standard open cloud engine (3)Open standard open cloud engine (3)
Open standard open cloud engine (3)uEngine Solutions
 
100.RED HAT SINGLE SIGN-ON
100.RED HAT SINGLE SIGN-ON100.RED HAT SINGLE SIGN-ON
100.RED HAT SINGLE SIGN-ONOpennaru, inc.
 
Geo Service Open API 플랫폼 구축 전략
Geo Service Open API 플랫폼 구축 전략Geo Service Open API 플랫폼 구축 전략
Geo Service Open API 플랫폼 구축 전략Channy Yun
 
안드로이드 OAuth 1.0a, 2.0 구현 - Naver, Google API
안드로이드 OAuth 1.0a, 2.0 구현 - Naver, Google API 안드로이드 OAuth 1.0a, 2.0 구현 - Naver, Google API
안드로이드 OAuth 1.0a, 2.0 구현 - Naver, Google API Gosu Ok
 
Service-Oriented Architecture in a Nutshell
Service-Oriented Architecture in a NutshellService-Oriented Architecture in a Nutshell
Service-Oriented Architecture in a NutshellSamsung Electronics
 
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1Ji-Woong Choi
 
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017Amazon Web Services Korea
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice ArchitectureYoonsung Jung
 
open api seminar
open api seminaropen api seminar
open api seminarNamhoon Kim
 
F5 프로그래밍 기능
F5 프로그래밍 기능F5 프로그래밍 기능
F5 프로그래밍 기능itian-f5
 
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석Tommy Lee
 

Similar to API Management Reference Architecture (20)

Google Cloud Platform - Apigee
Google Cloud Platform - ApigeeGoogle Cloud Platform - Apigee
Google Cloud Platform - Apigee
 
API Gateway 그리고 모바일 어플리케이션
API Gateway 그리고 모바일 어플리케이션API Gateway 그리고 모바일 어플리케이션
API Gateway 그리고 모바일 어플리케이션
 
Wso2 api manager 특징 slide share
Wso2 api manager 특징   slide shareWso2 api manager 특징   slide share
Wso2 api manager 특징 slide share
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해
 
Intro to hpe helion stackato_paa_s
Intro to hpe helion stackato_paa_sIntro to hpe helion stackato_paa_s
Intro to hpe helion stackato_paa_s
 
IBM 보안솔루션 앱스캔_AppScan Standard 소개
IBM 보안솔루션 앱스캔_AppScan Standard 소개IBM 보안솔루션 앱스캔_AppScan Standard 소개
IBM 보안솔루션 앱스캔_AppScan Standard 소개
 
OCE - Cno 2014 private sector oriented open paas oce
OCE - Cno 2014 private sector oriented open paas   oceOCE - Cno 2014 private sector oriented open paas   oce
OCE - Cno 2014 private sector oriented open paas oce
 
Microservices
Microservices Microservices
Microservices
 
Open standard open cloud engine (3)
Open standard open cloud engine (3)Open standard open cloud engine (3)
Open standard open cloud engine (3)
 
100.RED HAT SINGLE SIGN-ON
100.RED HAT SINGLE SIGN-ON100.RED HAT SINGLE SIGN-ON
100.RED HAT SINGLE SIGN-ON
 
RED HAT SINGLE SIGN-ON
RED HAT SINGLE SIGN-ONRED HAT SINGLE SIGN-ON
RED HAT SINGLE SIGN-ON
 
Geo Service Open API 플랫폼 구축 전략
Geo Service Open API 플랫폼 구축 전략Geo Service Open API 플랫폼 구축 전략
Geo Service Open API 플랫폼 구축 전략
 
안드로이드 OAuth 1.0a, 2.0 구현 - Naver, Google API
안드로이드 OAuth 1.0a, 2.0 구현 - Naver, Google API 안드로이드 OAuth 1.0a, 2.0 구현 - Naver, Google API
안드로이드 OAuth 1.0a, 2.0 구현 - Naver, Google API
 
Service-Oriented Architecture in a Nutshell
Service-Oriented Architecture in a NutshellService-Oriented Architecture in a Nutshell
Service-Oriented Architecture in a Nutshell
 
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
 
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
open api seminar
open api seminaropen api seminar
open api seminar
 
F5 프로그래밍 기능
F5 프로그래밍 기능F5 프로그래밍 기능
F5 프로그래밍 기능
 
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
 

More from Seong-Bok Lee

HP의 compliance management 솔루션
HP의 compliance management 솔루션HP의 compliance management 솔루션
HP의 compliance management 솔루션Seong-Bok Lee
 
Digital 시대의 Open Banking Platform 구축 전략
Digital 시대의 Open Banking Platform 구축 전략Digital 시대의 Open Banking Platform 구축 전략
Digital 시대의 Open Banking Platform 구축 전략Seong-Bok Lee
 
능력주의는 허구다
능력주의는 허구다능력주의는 허구다
능력주의는 허구다Seong-Bok Lee
 
협력의 진화 V1.1
협력의 진화 V1.1협력의 진화 V1.1
협력의 진화 V1.1Seong-Bok Lee
 
Big data application architecture 요약2
Big data application architecture 요약2Big data application architecture 요약2
Big data application architecture 요약2Seong-Bok Lee
 
비트코인 개인간 전자화폐시스템 요약 설명
비트코인 개인간 전자화폐시스템 요약 설명비트코인 개인간 전자화폐시스템 요약 설명
비트코인 개인간 전자화폐시스템 요약 설명Seong-Bok Lee
 

More from Seong-Bok Lee (8)

HP의 compliance management 솔루션
HP의 compliance management 솔루션HP의 compliance management 솔루션
HP의 compliance management 솔루션
 
Digital 시대의 Open Banking Platform 구축 전략
Digital 시대의 Open Banking Platform 구축 전략Digital 시대의 Open Banking Platform 구축 전략
Digital 시대의 Open Banking Platform 구축 전략
 
SaaS 동향
SaaS 동향SaaS 동향
SaaS 동향
 
능력주의는 허구다
능력주의는 허구다능력주의는 허구다
능력주의는 허구다
 
Intro to r & hadoop
Intro to r & hadoopIntro to r & hadoop
Intro to r & hadoop
 
협력의 진화 V1.1
협력의 진화 V1.1협력의 진화 V1.1
협력의 진화 V1.1
 
Big data application architecture 요약2
Big data application architecture 요약2Big data application architecture 요약2
Big data application architecture 요약2
 
비트코인 개인간 전자화폐시스템 요약 설명
비트코인 개인간 전자화폐시스템 요약 설명비트코인 개인간 전자화폐시스템 요약 설명
비트코인 개인간 전자화폐시스템 요약 설명
 

API Management Reference Architecture

  • 1. API Management Reference Architecture 개요 2016.04 HP Enterprise Service Lee, Seong-Bok
  • 2. 내용 • Open API • OpenAPI Management • OpenAPI Reference Architecture • API Management Solutions
  • 4. Open API 개요 • Application Programming Interface • 소프트웨어가 서로 의사소통을 하는 규약 • 일반적 의미로는 운영체제, 어플리케이션, 라이브러리 등 다양한 수준의 인터페이스를 총칭 • 플랫폼의 기능을 외부에서 쓸 수 있도록 개방한 API를 Open API라고 함
  • 5. Open API 제공 방법 Web Services • 웹 프로토콜로 제공 • 소량의 데이터 전송 처리 중심 1 In Services • 완성된 형태로 구현이 가능 • 웹/앱에 간단한 코드로 서비스 연계 가능 2 SDK • 소켓과 같은 특수 프로토콜 구현 • 개발의 편의성 3
  • 6. Open API 핵심기술 1) 프로토콜관점 1) 통신 • HTTP • Streaming (실시간 대량 데이터 전송 시) 2) 데이터포맷 • XML • JSON (XML보다 가볍고 빠른 처리 가능) 3) 프로토콜 • REST • XML-RPC • SOAP 웹서버에서 처리 가능
  • 7. [참고] Open API 통신 방법 프로토콜 관점의 주요 통신 방법 REST(Representational State Transfer) • 월드 와이드 웹 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처의 한 형식 • 도메인 지향 데이터를 http위에서 soap이나 쿠키를 통한 세션 트랙킹 같은 부가적인 전송 레이어없이 전송하기 위한 아주 간단한 인터페이스 • 엄격한 의미의 REST는 네트워크 아키텍처 원리의 모음으로 리소스를 정의하고 리소스에 대한 주소를 지정하는 방법에 대한 개괄 • 리모트 프로시저 콜을 이용하는 대신에 간단한 xml과 http 인터페이스를 이용하여 커다란 소프트웨어 시스템 설계 가능 XML-RPC • RPC프로토콜의 일종 • 코딩 형식은 xml을 선택하고 전송방식은 http를 사용 • Xml-RPC의 경우는 클라이언트/서버 방식으로 동작하여 서버가 반드시 필요 SOAP(Simple Object Access Protocol) • HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 컴퓨터 네트워크 상에서 교환하는 형태의 프로토콜 • SOAP은 웹 서비스에서 기본적인 메시지를 전달하는 기반. • SOAP에는 몇 가지 형태의 메시지 패턴이 있지만 보통의 경우 원격 프로시저 호출 패턴으로 네트워크 노드에서 다른 쪽 노 드쪽으로 메시지를 요청 하고, 서버는 메시지를 즉시 응답 • XML을 근간으로 헤더와 바디를 조합하는 디자인 패턴으로 설계
  • 8. Open API 핵심기술 2) API 비즈니스관점 1) 인증 • API 호출 시 허가된 사용자인지 확인 • API Key 발급, OAuth인증 2) 트래픽 제어 • API 허용량 만큼 쓰도록 • 서버스케일링 3) 통계 • 사용량통계  과금처리 • 어뷰징 감지 API Gateway 서버 (웹서버겸용)
  • 9. Open API 핵심기술 3) API 개발사관리관점 1) 개발자등록 • 기본정보 • 애플리케이션정보 2) API 키 발급 • API 별 발급 • 요청API 및 사용량 3) 통계 • API 사용량 관리 • 제휴신청 4) 개발지원 • 개발 가이드 • 커뮤니티, Q&A API 포털
  • 10. Open API 핵심 컴포넌트 API 포털 서버 • 제휴사 정보관리 • 키 발급 • API 사용관리 인증서버 • OAuth인증 • HMAC 인증 통계서버 • API 이용로그데이터추출 • 통계데이터생성 API 대시보드 캐시서버 • 빠른 서비스 속도를 위한 캐싱 • 소셜 네트워크에서 서비스가 퍼지는 경우 트 래픽이 급증 가능 게이트웨이 서버(웹서버를 포함함) • 다양한 API를 묶어 하나로 제공 • API 트래픽 제어 - 각 API에 대한 트래픽 모니터링 • API 보안 - 3rdparty에 API 서버 은닉 - 이용자 식별을 위해 인증처리 • API 사용 로깅 - 서비스별 API 사용현황 집계 - 향후 서버 증설 시점 예측
  • 12. API Management? • Forrester – API Management • Gartner – Application Service Governance • 누구는 API Platform 어쨌든 기본적으로는 API Gateway + Developer Portal을 의미 • REST같은 인터페이스를 사용 해서 외부(의 어플리케이션)에 API를 제공하는 기능 영역 • API를 관리하는 하위 시스템들 또는 기능들 로 구성된 영역 • 개발자가 필요한 API와 관련 상세 내용을 찾아보고 테스트할 수 있는 웹사이트
  • 13. Business Model for API - 이해관계자들 API Provider: 비즈니스 서비스와 데이터를 갖고 있는 핵심 이해관계자 API Publisher: • API 관리 솔루션을 이용하는 비즈니스 서비스와 데이터를 통해 업무용 API를 발행하는 기술적 협력사 • 충분한 IT 인프라와 인력을 가진 조직으로 in-house나 상업용 호스팅 서비스에 API 관리 솔루션을 설치하고 설정. API Store: API 사용자를 위한 기술적, 업무적 정보를 제공하는 사설 또는 공공의 API 게시 장소 (programmableweb가 공공 API store의 사례) API Consumer: API를 사용해서 어플리케이션을 개발하는 API 개발자(모바일 앱 개발자, 웹 앱 개발자부터 엔터프라이즈 개발자까지) App Store: 모바일/스마트 기기의 앱 자체, 모바일 사용자들이 다운로드/구매하는 앱을 위한 공개된 시장 WEB Apps: 최종 사용자에게 다양한 업무상의 기능을 제공하기 위해 개발된 웹 기반의 어플리케이션 Application Consumers: 업무처리를 위해
  • 14. API Management의 개념도 • API Usage Analytics • Latency Analytics • Performance Metrics • Exception Metrics • Application API Key Management • Consuming Application Management • API Documentation • API Subscription Management • API Discovery and Catalog • API Life Cycle Management Internal, Partner, 3rd party 개발자, API 소유자 API개발자
  • 15. API Management Platform의 역할 Exposing, securing, governing, monitoring APIs; deploying an API store for internal or external use. • configured as an API gateway delivering traffic shaping, API key validation, URL mapping, security credential mediation, and service level tracking. • capture business activity, usage activity, policy decision events, policy violations, policy exceptions, and governance key performance indicators. IT and Business users may analyze high-volume activity and use governance dashboards to view key performance indicators, policy exceptions, and compliance. • store API meta-data defining interface, API service level tiers, back-end service dependencies, developer documentation, and API subscriptions. • analyzes business activity over time and triggers notifications, automatic systems management actions, application performance tuning, corrective workflows, and human tasks. • manages identity and policy-driven entitlements, determines context-based entitlement assertions, delivers role based access control decisions, generates access keys and tokens, provisions applications, facilitates single sign-on, maps credentials, federates identity repositories and identity
  • 16. API Management Platforms이 갖추어야 할 기능  API Security (SSL, PKI, threat protection, schema validation, encryption, signatures, etc)  API Identity (AuthN & AuthZ, API key, OAuth, SAML, LDAP, proprietary IAM, multifactor, token translation & management)  API Orchestration (adaptation of multiple services, workflow operations, branching policies, etc.)  Traffic Mediation (SOAP to REST mediation, data format transformation, legacy application integration)  Traffic Shaping(Rate limitation, Caching etc)  Deployment Flexibility (on-premise, cloud, managed service, SaaS, hybrid)  Uniform interface/proxy to multiple backend messaging protocols (JMS, RMI etc)  Developer and App OnBoarding (Client ID/App Key generation, Interactive API console)  API Lifecycle governance (Versioning)  Analytics & Traffic Monitoring  API metering, Billing and Monetization  Data Protection(Data encryption, Data masking etc for PCI/PII compliance)  Mobile Optimization (Pagination, Compression, JSON etc)  Operational Integration (System Monitoring, Clustering, Scalability, Migration)  Mobile Integration (support for push notifications, geolocation, streaming protocols)  Cloud Integration (SSO to SaaS providers, IaaS integration, SaaS data connectors, hybrid cloud support)  API Discovery (Catalog, Search and Provisioning)  Community Management (Blogs, Forums, Social features etc) http://www.infoq.com/research/api-management?utm_source=infoqresearch&utm_campaign=rr-content
  • 17. [참고] Oauth(Open Authentication) Open API를 이용할 때 사용되는 표준화된 인증방법. 매쉬업 서비스로 만들어진 애플리케이션(Application) 또는 웹서비스가 다른 어플리케이션 또는 서비스의 사용자 정보에 접근할 때 사용되는 인증 방법 SAML(Security Assertion Markup Language) OASIS(Organization for the Advancement of Structured Information Standards)에서 제정한 XML 기반의 보안 표준 언어. 플랫폼 거래 파트너들이 인증 정보, 권한 부여 정보 그리고 프로파일 정보를 안전하게 교환할 수 있도록 설계된 표준으로, 기업 내부 또는 기업 간의 SSO(Single sign-on)를 제공하고 기업 보안 인프라 구조에 종속되지 않는 장점 LDAP(Lightweight Directory Access Protocol), 디렉터리 데이터베이스에 접속하기 위한 통신 규약으로 디렉터리 정보의 등록, 갱신, 삭제 및 검색 등을 실행. 통신망을 이용한 이용자 메일 주소나 이용자의 정보를 검색하는 데 주로 사용 IAM(Identity and Access Management) ID와 패스워드를 종합적으로 관리해 주는 역할 기반의 사용자 계정 관리 솔루션. ID 도용이나 분실로 인한 보안 사고에 대비하여 보안 관리자에게는 사용자 역할에 따른 계정 관리를, 사용자에게는 자신의 패스워드에 대한 자체 관리 기능을 제공한다. 또한 시스템과 각종 자원에 대해 고객ㆍ기업 내 사용자ㆍ관리자 등의 접근을 제어할 수 있어, 한 번의 ID와 패스워드 입력으로 다양한 시스템에 접속할 수 있도록 싱글 사인온(SSO)이나 ID에 따라 사용 권한을 차등적으로 부여하는 엑스트라넷 접근 관리(EAM)를 확장 또는 보완한 것, Multifactor Authentication (다중 인증) 아래 세 가지 요소 중 두 가지 이상을 조합하여 인증하는 방식. 일명 ‘2차인증’ 1) 사용자가 알고 있는 것(예: 아이디, 패스워드), 2) 사용자가 가지고 있는 것(예: 공인인증서, OTP, 모바일 디바이스 및 웹 토큰) , 3) 사용자 고유의 요소(예: 생체인식 및 행동 메트릭 솔루션)
  • 18. [참고] JMS(Java Message Service) 네트워크에서 컴퓨터간 메시징이라는 일반 통신을 지원하는 선 마이크로시스템즈사의 응용 프로그램 인터페이스(API). 표준 메시징 프로토콜과 자바 프로그램 지원을 받아 특별 메시징 서비스를 제공하고, 자바 메시지를 주고 받는 자바 애플리케이션을 개발하는데 사용한다. 또한, 기업 메시징 시스템 액세스를 위한 API로서, 컴퓨터간 데이터 교환, 이벤트 안내, 서비스 요구 사항 등과 같은 정보를 포함하는 메시지를 비동기적으로 주고 받는 비즈니스 애플리케이션을 작성하고 다른 시스템이나 다른 언어로 쓰여진 프로그램을 일원화하는데 주로 사용되며, 자바 객체를 포함한 메시지와 XML 페이지를 포함한 메시지를 지원한다. RMI (Remote Method Invocation) 분산 시스템에서 상대의 자바 객체를 호출할 수 있는 프로토콜. 자바 객체가 네트워크상 어느 곳에 있던 간에 서로 통신할 수 있게 해주는 기능으로, 네트워크로 연결된 다른 컴퓨터에 존재하는 메소드를 마치 내 컴퓨터에 있는 듯이 호출해서 사용하게 된다. 원격 절차 호출(RPC)의 자바 버전으로, 프로그래머가 소켓 통신에 대한 고려 없이 원격 메소드 호출(RMI) 관련 등급만으로 프로그램을 작성하면 자바 하부에서 네트워크에 관련된 처리를 담당해 준다. 공동 객체 요구 매개자 구조(CORBA)의 객체 모델을 도입하고, 이를 단순화해 객체의 이동이나 분산된 객체의 접속을 가능하게 해주는 자바 객체만을 위해 설계된 것이다. 따라서 다른 언어로 작성된 컴포넌트를 사용하지 않는다. SOAP(Simple Object Access Protocol) 일반적으로 널리 알려진 HTTP, HTTPS, SMTP 등을 통해 XML 기반의 메시지를 컴퓨터 네트워크 상에서 교환하는 프로토콜이다. SOAP은 웹 서비스에서 기본적인 메시지를 전달하는 기반이 된다. SOAP에는 몇가지 형태의 메시지 패턴이 있지만, 보통의 경우 원격 프로시져 호출(Remote Procedure Call: RPC) 패턴으로, 네트워크 노드(클라이언트)에서 다른 쪽 노드(서버)쪽으로 메시지를 요청 하고, 서버는 메시지를 즉시 응답하게 된다. SOAP는 XML-RPC와 WDDX에서 envelope/header/body로 이루어진 구조와 전송(transport)와 상호 중립성(interaction neutrality)의 개념을 가져왔다. SOAP은 XML을 근간으로 헤더와 바디를 조합하는 디자인 패턴으로 설계되어 있다. 「헤더」는 선택사항으로 반복이나 보안 및 트랜젝 션을 정보로 하는 메타 정보를 가지고 있다. 「바디」부분은 주요한 정보인 정보를 가지고 있다.
  • 20. API Reference Architecture Provider Systems Consumer Management Developer Portal License Key Management API Meta-Data Repository Life Cycle Management Billing Analytics Gateway Translation License Key Authentication Throttling Access Control Applications Identity Management Financials APIManagement Consumer Applications Web APIs Developer The consumers of the APIs The API Management itself The provider systems that the API Management interfaces with.
  • 21. API Reference Architecture의 구성요소 REST같은 인터페이스를 사용해서 외부(의 어플리케이션)에 API를 제 공.  Translation :  내부 어플리케이션 인터페이스를 web API로 사용될 수 있는 형태로 변환(보통 SOAP/XML과 REST/JSON간의 변환)  데이터 필드나 필터 변환을 쉽게 함으로써 내부 인터페이스에서 제 공하는 기능을 외부 사용자들이 사용할 수 있게 함  Licence Key Authentication : 최초 등록 후 부여된 라이선스 키로 API호출  호출 때마다 키 검증  Throttling : 라이선스에 따라 호출할 수 있는 API 양을 제한  Access Control : Identity 관리 시스 템과 연동하여 외부 어플리케이션이 제공하는 identity 정보를 가지고 내부 API에 접근하는 것을 통제 Gateway API를 관리하는 하위 시스템들로 구 성되며 공급사의 담당자들이 사용  Licence Key Management : 라이선스 키와 관련 정책들을 관리. 사용자 라이선스와 라이선스 유형을 관리.  API Meta-Data Repository : API 관련 모든 데이터 관리(인터페이 스, 데이터 스키마, 관련 정책 등)  Life Cycle Management : API의 생성, 공개(publication), 버전 관리(versioning), 폐지 등의 전 라이 프사이클 관리  Billing : 과금을 위해 API 사용량 모니터링  보통 공급사의 재무시스템과 연결됨  Analytics : API 사용에 관한 정보를 제공 Management Portal 개발자가 필요한 API와 관련 상세 내 용을 찾아볼 수 있는 웹사이트 • 개발자가 자신의 어플리케이션에 삽입할 수 있는 라이선스 키 획득 • “How to” information to get a developer quickly up to speed in integrating the API with their applications. • API를 테스트해 볼 수 있는 방법 • 댓글이나 포럼과 같은 기능(Social aspects) • programmable web.같은 외부 사 이트에 API 상세내역을 발표
  • 22. API Management Architecture 구성요소별 기능 영역 구성요소 기능 Gateway Translation Traffic Mediation (SOAP to REST mediation, data format transformation, legacy application 통 합) Uniform interface/proxy to multiple backend messaging protocols (JMS, RMI etc) Mobile Optimization (Pagination, Compression, JSON etc) License Key Authentication API Identity (AuthN & AuthZ, API key, OAuth, SAML, LDAP, proprietary IAM, multifactor, 토큰 변환/관리) API Security (SSL, PKI, threat protection, schema validation, encryption, signatures, etc) Throttling API Orchestration (다중 서비스 채택, workflow operations, branching policies, etc.) Traffic Shaping(Rate limitation, Caching etc) Access Control Deployment Flexibility (on-premise, cloud, managed service, SaaS, hybrid) Mobile Integration (support for push notifications, geolocation, streaming protocols) Cloud Integration (SSO to SaaS providers, IaaS integration, SaaS data connectors, hybrid cloud 지원) Management License Key Management Developer and App OnBoarding (Client ID/App Key generation, Interactive API console) API Meta-data Repository Data Protection(Data encryption, Data masking etc for PCI/PII compliance) Life Cycle Management API Lifecycle governance (Versioning) Billing API metering, Billing and Monetization Analytics Analytics & Traffic Monitoring
  • 24. REST API Reference Architecture SOAP/REST and Legacy Web ServicesService Bus API Gatewa y API Portal API Clients Developers 4 2 Protocols HTTP, SOAP, REST, XML JMS FTP RES T JWT OAM, SM Basic Auth, X.509 1 Service Bus Directly accessed by internal clients, provides: • Routing, mediation, versioning - abstracts backend services from internal clients • Heavy duty payload transformations • Protocol translation for legacy apps 2 API Gateway Exposes API’s to the external world, provides: • API Key generation/validation • Access enforcement • OAUTH Server • Rate Limiting / Client Throttling • Response caching • API virtualization in the DMZ • Security token & protocol mediation • Firewalling, method/parameter whitelisting • API aggregation & mash-up • API usage measurement & reporting 3 Repository Provides: • API catalog • API dependency analysis • API lifecycle management 4 API Portal External developer portal, sits on top of API repository & API gateway - provides: • Self service registration, onboarding • “API marketplace” • API documentation, forums, blogs, support • API Key delivery • API testing tools • Visualization of runtime usage metrics / monitoring • Billing Security WS-Security, Basic Auth, Digest, X509, UNT, SAML, Kerberos Sign & Encrypt Repository3 1
  • 26. API 관리의 응용 Web API의 구현 클라우드 기반의 API 관리
  • 27. API 관리의 응용 기업 내/외부에서의 API 사용
  • 28. API Management 솔루션 연혁 2013년 CA에 합병 2013년 5월 Intel에 합병 2013년 Axway에 합병
  • 29. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Thank you