모바일 플랫폼의 종류

마지막 업데이트: 2022년 3월 28일 | 0개 댓글
  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 카카오스토리 공유하기
사진/ 넷플릭스와 유튜브 홈페이지 메인화면

코드 없는 애플리케이션의 보안 문제

코드가 없는 플랫폼에서 점점 더 많은 애플리케이션이 개발되고 있습니다. 더 편리하고 빠르며 더 많은 유연성과 자유를 제공하며 프로그래밍 언어를 알 필요가 없습니다. 이는 개발자와 '시민 개발자' 모두를 위한 혜택입니다. 그러나 노코드에도 단점이 있으며 주요 단점 중 하나는 보안입니다.

데이터 기밀성 및 개발 중인 데이터 보호는 가장 중요한 포인트 중 하나입니다. 불행히도 노코드 플랫폼은 항상 이 작업에 대처하는 것은 아니며 공격에 더 취약합니다. 이 기사에서는 발생할 수 있는 보안 문제의 종류와 이를 방지하는 방법에 대해 설명합니다.

코드가 없으면 무엇이 문제입니까?

벤치마크 평가 에 따르면 분석된 앱의 93%가 여러 OWASP MASVS를 위반했습니다. 일반적인 문제는 다음과 같습니다.

  • 불충분한 키 크기;
  • 유출된 데이터;
  • 적절한 보안 인증서 사용 부족;
  • HTTP를 통한 암호화되지 않은 데이터 전송.

통계는 무섭습니다. 거의 모든 앱이 적절한 보안 관리를 수행하지 못합니다.

코드가 없는 도구는 때때로 당신을 더 큰 위험에 빠뜨립니다. 소위 시민 개발자가 타사 코드 없는 도구를 사용하는 경우 맬웨어 공격 가능성이 많습니다. 첫째, 개발자가 아닌 사용자에 대한 지식이 부족하고 코드가 없는 플랫폼이 보호되는 방법과 도구에 대한 검증이 없습니다.

노코드의 보안 문제는 이 운동의 가장 큰 관심사입니다. 신뢰할 수 없는 소프트웨어를 사용하면 기업의 기밀 데이터가 노출될 가능성이 충분합니다.

코드 없는 플랫폼의 보안 취약성에 영향을 주는 것은 무엇입니까?

클라우드의 애플리케이션 스토리지

제품을 공용 클라우드 스토리지에 배치하면 가능한 위험에 노출됩니다. 플랫폼 사용자는 이러한 플랫폼의 개인 정보를 제어할 수 없습니다. 따라서 데이터가 보호될 것이라고 확신할 수 없습니다.

문제에 대한 해결책은 국제 인증 및 ISO 규정을 준수하는 검증된 클라우드 서비스를 사용하는 것입니다.

일반적으로 모든 클라우드 플랫폼은 클라이언트 데이터 보안의 세 가지 주요 측면인 기밀성, 무결성 및 가용성을 제공해야 합니다.

최적의 솔루션은 기업 자체에서 완전히 제어되는 서비스에 애플리케이션을 배치하는 것입니다.

데이터 액세스 문제

데이터는 애플리케이션 작업의 기본 소스입니다. 따라서 액세스 문제가 종종 주요 문제가됩니다. 코드가 없는 플랫폼으로 작업할 때 이 프로세스를 제어하기가 어렵습니다. 다양한 유형의 사용자에 대한 데이터 액세스를 제한하고, 로그인을 수정하고, 시간별로 액세스를 제한하고, 특정 유형의 정보에 액세스할 수 있다고 가정합니다. 이 경우 제품의 보안 수준을 쉽게 높일 수 있습니다.

불행히도 모든 도구가 이 기능을 제공하는 것은 아닙니다. 따라서 이것은 코드가 없는 플랫폼을 선택할 때 고려해야 할 또 다른 사항입니다.

섀도우 IT

IT 부서의 통제 외부에서 또는 동의 없이 사용되는 디지털 도구인 소위 섀도우 IT는 회사를 훨씬 더 큰 위험에 빠뜨립니다. 이러한 도구에는 신뢰할 수 있는 보안 시스템이 없는 코드 없는 플랫폼이 포함되는 모바일 플랫폼의 종류 경우가 많습니다.

대부분의 경우 노코드 개발은 기술 배경이 없는 사람들이 수행하므로 IT 부서 외부에서도 자신도 모르게 중요한 정보를 공개할 수 있습니다.

낮은 가시성

기술을 노코드라고 하지만 그렇다고 해서 코드가 전혀 없는 것은 아닙니다. 그 생성은 기성품 플랫폼 구성 요소로 작업하는 사용자에게 숨겨져 있습니다. 또한 개발자에게 중요한 문제 중 하나입니다.

코드는 개발자가 알지 못할 수도 있는 사이버 공격 시 외부에서 수정할 수 있습니다.

공개 키 암호화 기술, 디지털 서명 메커니즘 및 ISO 27001 인증에 따라 작동하는 플랫폼을 사용하여 위험을 완화합니다.

이 외에도 코드가 없는 응용 프로그램을 개발할 때 몇 가지 다른 문제에 직면할 수 있습니다.

공격을 위해 시스템을 엽니다. 코드가 없으면 공격자의 진입 장벽이 더 적은 경우가 많습니다. 이렇게 하면 취약점을 악용하고 시스템에 액세스하는 것이 더 쉬워질 수 있습니다.

침해의 원인을 추적하기 어렵습니다. 침해가 발생하면 어디서 발생했는지 파악하기 어려울 수 있습니다. 문제를 해결하고 향후 위반을 방지하기가 더 어려워질 수 있습니다.

오픈 소스 구성 요소. 오픈 소스 구성 요소를 사용하는 프로젝트에서 해커는 악용에 대한 홍보를 유리하게 사용할 수 있습니다.

위험 완화

매우 간단한 조치로 보안 위험을 최소화할 수 있습니다.

  • 신뢰할 수 있고 신뢰할 수 있는 공급업체의 소프트웨어를 사용합니다.
  • 국제 소프트웨어 보안 표준 준수를 확인하는 플랫폼 인증서의 가용성;
  • 액세스 제어: 플랫폼에 액세스할 수 있는 사람과 수행할 수 있는 작업
  • 필수 데이터에 대한 추가 보호를 구현합니다.
  • 검증된 클라우드 서비스(예: AWS, Google 및 Microsoft Azure는 신뢰할 수 있는 것으로 간주됨)에 코드 없는 도구 자체와 기성 애플리케이션 배치
  • 코드가 없는 응용 프로그램에 민감한 데이터를 저장하지 마십시오. 신용 카드 번호, 암호 및 개인 정보와 같은 민감한 데이터를 저장하지 마십시오.
  • 이러한 유형의 데이터를 보관해야 하는 경우 암호화하여 안전한 위치에 저장하십시오.
  • 소프트웨어를 최신 상태로 유지: 소프트웨어를 최신 상태로 유지하여 데이터를 보호하십시오.

AppMaster의 보안

AppMaster는 플랫폼 자체의 보안과 앱 보안 을 우선시합니다.

플랫폼에서 데이터는 어떻게 보호됩니까?

OWASP 준수

OWASP(Open Web Application Security Project)는 애플리케이션 보안과 관련된 무료 리소스를 제공합니다. AppMaster는 안전하고 신뢰할 수 있는 제품을 사용할 수 있도록 지침과 권장 사항을 따릅니다.

포괄적인 로깅

최고의 로그 수집 및 관리 솔루션을 사용합니다. 생성된 애플리케이션에 로그인하는 것은 매우 자세하게 구성할 수 있습니다.

액세스 제어

모든 시스템에 대한 액세스는 역할을 기반으로 합니다. 데이터 소유자의 동의 없이 데이터에 액세스할 수 없습니다.

내결함성 및 백업

시스템에는 자동 백업이 있습니다. 한 서버가 다운되면 다른 서버가 즉시 인계받습니다.

공동 책임 모델

사용자 정의 개인 정보 보호 정책으로 개발한 애플리케이션 및 통합을 보호합니다.

아마존 모바일 플랫폼의 종류 웹 서비스

AppMaster는 Amazon Web Services에서 실행되며 SOC 2, CSA 및 ISO 27001을 준수합니다.

자료 복구

특정 시점 데이터 복구에 액세스할 수 있습니다. 데이터에 영향을 주는 기능을 배포하면 이전 시간의 데이터를 복원할 수 있습니다.

HTTPS 암호화

AppMaster에 대한 모든 연결은 TLS v1.3을 사용하여 HTTPS를 통해 종단 간 암호화됩니다.

코드 없음 영향의 가능한 위험을 완화하려면 코드 없음 도구 사용의 보안 의미를 신중하게 고려하고 데이터를 보호하기 위한 조치를 취하는 것이 중요합니다. 여기에는 암호화 및 다단계 인증과 같은 보다 강력한 보안 조치를 구현하고 민감한 정보에 대한 액세스를 면밀히 모니터링하는 것이 포함될 수 있습니다. 또한 최신 보안 위협에 대한 모바일 플랫폼의 종류 업데이트를 유지하고 시스템을 정기적으로 패치하고 업데이트하는 것이 중요합니다.

최근 스마트 기기의 종류가 다양화되고 이를 여러 분야에 접목되어 활용도가 증가함에 따라 건강 분야에도 스마트기기를 접목시켜 빅데이터를 수집하고 관리해야 할 필요성이 증가하고 있다. 본 논문에서는 개인이나 집단에 맞춤형 건강 프로그램을 제공하기 위해 모바일 어플리케이션을 설계하였다. 여러 질병들에 대하여 여러 건강 관련 관점에서 스스로 건강을 케어할 수 있도록 도움을 주는 스마트기기의 활용방법을 제안하였다. 맞춤형 건강 체크 프로그램의 필요한 기능들을 먼저 설계하였고, 그 중에서 어플리케이션을 통해 사용자들이 건강 체크를 스스로 할 수 있도록 하는 건강 체크 항목은 신체계측 및 생리학적 요인과 건강행태요인으로 분류하였다. 그리고 건강 관련 데이터를 제공함으로써 사용자들은 개인에 맞는 코멘트를 제공받고, 종합적인 정보는 데이터베이스에 저장하여 관리되는 플랫폼을 구현하였다. 어플리케이션을 통해 데이터를 수집하기 위한 데이터베이스 서버를 구축하였고, 사용자 관련 문항과 조건에 맞추어진 코멘트의 테이블을 생성하여 사용자들로부터 받은 데이터를 통합적으로 관리할 수 있도록 하였다.

Recently, various kinds of diverse smart devices have appeared and are applied to various fields, and with the increased usage, big data collection and management is needed by combining smart devices in the health field as well. In this paper, we developed an application to provide customized health programs to individuals or groups. On investigating ‘My life check’, we propose the idea of using smart devices that help people to take care of their own health. The health check items for the customized health check program were designed first, and health check items for users to perform health check by themselves are classified into physical measurement and physiological factors and health behavior factors. Finally, users were provided personalized comments to their individual needs, and conceived a platform for storing and managing comprehensive information in a database was designed. We developed a database server to collect data through the application, and created a table of comments tailored to the users, questions and conditions to collect and manage the data received from the users.

nc_platform_sdk_kv_1200x628

최근 게임 플랫폼은 경계가 허물어지며 나날이 발전하고 있습니다. 모바일, PC, 콘솔 등 각각의 기기에서만 게임이 구동되었던 것에서 나아가, 이제는 PC와 모바일을 넘나들며 게임을 플레이할 수 있는 수준에 이르게 되었습니다. 이런 ‘멀티 플랫폼’ 덕분에 플레이어들은 어느 기기에서나 동일한 게임 경험을 누릴 수 있게 되었습니다. 개발자의 입장에서 보면 할 일은 더 많아졌습니다. 하나의 기술을 사용해서 모바일, PC, 콘솔에서 모두 동작하는 게임을 만들어 낼 수 있다면 좋겠지만, 보통은 기기마다 설치되는 OS가 다르고 특성도 다르기 때문에 개발에 따른 시간이나 비용이 증가하게 되었습니다. 대부분의 게임에는 결제, 로그인 등 필수적으로 들어가는 기능들이 있습니다. 이런 기능들을 한 번에 애플리케이션에 적용하기 위해 SDK를 제공합니다. 엔씨의 플랫폼 센터는 간단한 코딩만으로 모바일, PC, 콘솔에서 게임이 동작할 수 있도록 엔씨의 ‘멀티플랫폼 SDK를 개발했습니다. 본 포스팅에서는 엔씨의 ‘멀티플랫폼 SDK’의 개발 과정을 공개하고 어떤 구조와 특징을 가지고 있는지 알아보고자 합니다. SDK: 개발자를 위한 소프트웨어 개발 키트 SDK는 ‘Software Development Kit’의 약자로, 소프트웨어를 개발할 때 사용하는 도구 모음을 뜻합니다. 자세하게는 애플리케이션 개발자가 활용할 수 있도록 API, GUI, 문서, 라이브러리, 코드 샘플을 모은 패키지입니다. 엔씨 플랫폼센터에서는 인증, 결제, 거래소와 같은 다양한 플랫폼 기능들을 게임 개발자가 쉽고 빠르게 사용할 수 있도록 클라이언트 기반의 라이브러리 형태로 제공하고 있습니다. 예를 들어 게임 개발자가 자체적으로 인증 시스템을 개발하거나 애플, 구글의 결제 기능을 구현한다면 시스템을 만드는 데에 많은 시간과 노력이 소요될 것입니다. 하지만 플랫폼 SDK를 사용한다면 SDK가 이러한 역할을 대신해 주기 때문에 게임 개발자가 직접적으로 기능을 구현하지 않고 SDK를 연동하는 것만으로도 다양한 기능을 완성할 수 있게 됩니다. 모바일 게임 중심으로 패러다임의 변화 PC에서 그래픽 좋고, 스토리 좋은 게임들을 즐기던 시절, 엔씨는 PC용 MMORPG 온라인 게임을 주력으로 선보였습니다. 그리고 많은 게임을 출시하기보다는 완성도에 집중하며 오랜 시간을 준비해서 게임을 출시하곤 했습니다. 하지만 시간이 흐르고, 모바일 플랫폼이 대세인 시대가 되면서 상황은 달라졌습니다. 우리는 손에 든 작은 기기로 많은 것을 할 수 있게 되었고, 게임 업계도 이에 맞춰 많은 모바일 게임들을 빠르게 출시하기 시작했습니다. 엔씨 역시도 그 흐름을 따라 모바일 기반의 새로운 서비스를 준비하기 시작했습니다. 모바일 게임을 개발하는 과정에서 인증, 결제와 같은 기능을 구현하는 것은 필수적입니다. 하지만 모바일 플랫폼 고유의 기능들을 연구 개발하거나, 각 게임마다 인증 체계를 설계하여 개발하는 것은 결코 쉬운 일이 아닙니다. 개발 비용이 많이 들기도 하고요. 그래서 플랫폼센터에서는 이와 같은 기능을 클라이언트에서 단 몇 줄의 코딩으로 개발할 수 있도록 2014년부터 SDK를 준비해 왔습니다. 게임을 Android, iOS 모바일 플랫폼에서 서비스할 예정이었기 때문에 Android는 리소스와 manifest 파일을 포함시킨 AAR (Android Archive) 파일로 제작했으며 iOS는 Framework 파일로 제작해서 배포했습니다. 2016년도부터는 Unity, Unreal 게임 엔진을 기반으로 제작된 모바일 게임이 본격적으로 출시되었는데요. 게임 모바일 플랫폼의 종류 개발자들이 가장 익숙한 개발 환경에서 쉽게 플랫폼을 연동할 수 있도록 Unity, Unreal 게임 엔진용 플랫폼SDK를 제작하여 멀티 플랫폼의 기반을 마련하였습니다. 모바일과 PC를 넘나드는 시대, 게임 플랫폼에도 '멀티'가 필요하다 2019년도에는 리니지2M이 모바일과 Windows용으로 동시에 출시되었습니다. 모바일에서 플레이하던 게임을 Windows에서도 그대로 이어서 플레이할 수 있고, 반대로 Windows에서 즐기던 내용 그대로 모바일에서 이어서 즐길 수 있는 크로스플레이의 시대가 본격적으로 시작된 것입니다. 이 때부터 Unity, Unreal, Cocos2d-x 게임 엔진을 위한 멀티플랫폼 SDK를 본격적으로 준비했습니다. Windows로의 확장을 시작으로 2020년도에는 게임 콘솔이라는 새로운 플랫폼으로의 확장을 시도하여 인증, 전자 결제 시스템, 마케팅 등 주요 플랫폼 기능을 PlayStation 게임에서도 모바일 플랫폼의 종류 사용할 수 있도록 준비했습니다. 이 외에도 Xbox, Switch 등 다른 게임 콘솔 플랫폼 개발도 착수 예정입니다. [그림 1] 모바일에서 멀티플랫폼으로의 확장 엔씨의 '멀티플랫폼 SDK' 엔씨 멀티플랫폼 SDK의 특징 엔씨 멀티 플랫폼 SDK는 하나의 키트(KIT)로 제공이 되며, 다음과 같은 특징을 지니고 있습니다.1. 다양한 플랫폼 지원 Mobile/PC/Console 플레이 환경에 모두 대응할 수 있도록 클라이언트 기반의 SDK를 제공합니다. 플랫폼에 관계없이 동일한 사용자 경험을 추구합니다. [그림 2] 다양한 플랫폼 지원 2. 다양한 퍼블리싱 환경 지원 다양한 마켓스토어 (Google Play Store, Apple App Store, ONE Store, Galaxy Store)와 게임 엔진 (Unity, Unreal, Cocos2d-x)을 지원합니다.3. 개발 비용 절감 간단한 코드 입력만으로도 상용서비스에 필요한 핵심 플랫폼 기능을 쉽게 구현할 수 있습니다. 초기에는 GUI없는 로그인 API 위주로 제공했으나, 개발 편의성을 향상시키고 엔씨의 플랫폼이 일관된 UX를 제공할 수 있도록 GUI를 포함하는 기능을 늘려가고 있습니다. [그림 3-1] 로그인 API 호출 코드 [그림 3-2] 코드 호출 결과 4. 개발 편의 기능 제공 개발가이드 및 API Reference 문서를 제공합니다. 개발가이드는 markdown 에디터를 이용해서 작성합니다. [그림 4] 개발가이드 그리고 API Reference는 Inline Documentation을 적극 활용하는데, Jenkins Pipeline을 통해서 자동으로 생성되고 배포됩니다. [그림 5] API Reference 그리고 이 외에도 개발의 편의를 위해 SDK 호출 로그를 즉시 확인할 수 있는 툴을 제공합니다. [그림 6] SDK 호출 로그 즉시 확인 툴 엔씨 멀티플랫폼 SDK의 구성 엔씨 멀티 플랫폼 SDK는 총 5가지 제품으로 제공되며, 모바일 전용과 게임 엔진용으로 구분됩니다. [그림 7] 엔씨 제공 멀티플랫폼 SDK 종류 1. 모바일 전용 SDK Android, iOS Native SDK는 Android, iOS 앱에 연동하기 편리한 형태로 개발되었으며, Android는 AAR(Android Archive), iOS는 Framework와 Bundle 파일로 제공하고 있습니다.2. 게임 엔진용 SDK Unity, Unreal, Cocos2d-x와 같은 게임 엔진들은 멀티플랫폼을 지원합니다. 그 덕분에 하나의 소스코드로 Android, iOS, Windows를 비롯해 PlayStation, Xbox, Switch 등 다양한 플랫폼의 빌드를 만들어 낼 수 있습니다. 로그인, 결제, 푸시 알람과 같이 플랫폼 특성을 띄는 기능들은 단일 소스코드로 해결할 수는 없는 경우가 많습니다. 그래서 모바일 게임 개발 시에는 모바일 전용 Android, iOS Native SDK와 더불어 Bridge 클래스를 이용하는 구조를 활용해 단일 소스코드로 해결할 수 없는 문제들을 해결했습니다.그리고 SDK 내의 API는 다음과 같이 구성되어 있습니다. [그림 8] 멀티플랫폼 SDK의 구성도 1. Public API 게임 클라이언트가 직접 호출하는 Public API 클래스 [그림 9] Public API 2. Platform API Android, iOS, Multi-Platform을 동일한 인터페이스로 맞추기 위한 클래스.3. Android, iOS Bridge API Android, iOS SDK에서 제공하는 API를 랩핑해서 Unreal SDK의 C++ 코드에서 호출하기 편리한 형태로 가공한 Bridge 클래스이며, Bridge 클래스 내부는 Android, iOS native SDK의 API 호출 코드가 포함되고 이종 간의 API 통신을 위해 JNI, NDK와 같은 도구가 활용됨 [그림 10] Android, iOS Bridge API 4. Android, iOS Native API 애플, 구글, 원스토어, 갤럭시 스토어 로그인, 인앱결제와 같이 모바일 플랫폼에 특화된 기능이 구현되어 있는 클래스 5. Multi-Platform API 모바일 플랫폼 이외 다양한 플랫폼(Windows, PlayStation, Xbox 등)을 지원하기 위한 특화된 기능이 통합 구현되어 있는 클래스이며, 게임엔진에 포함된 멀티플랫폼 대응을 위한 추상화된 기능들을 적극 활용함 [그림 11] Multi-Platform API 마치며 엔씨의 게임은 모바일에서 PC, 게임 콘솔로 플랫폼을 넓혀가고 있으며 사용자가 다양한 플랫폼에서 콘텐츠를 즐길 수 있도록 멀티플랫폼으로 서비스를 확장하고 있습니다. 이 과정에서 엔씨의 멀티플랫폼 SDK는 사용자 뿐만 아니라 개발자 모두에게 반드시 있어야하는 조력자 역할을 하고 있습니다. 엔씨 플랫폼센터는 여기서 만족하지 않고 사용자에게 새로운 경험과 즐거움을 제공하고, 더 나아가 엔씨의 게임이 어디든 연결될 수 있는 ‘Connect NC to Universe’를 실현하기 위한 여정을 이어가고 있습니다. 우장미 Platform Center, 플랫폼 SDK실, 모바일서비스개발팀 팀원개발엔 끝이 없다!설계할 때 즐거움을 느끼며, 오늘도 빠르고 꼼꼼하게 개발하고 있습니다. 정희성 Platform Center, 플랫폼SDK실, 크로스플랫폼개발팀 팀장모바일, PC, 게임 콘솔, TV 플랫폼을 개발하는 모든 개발자에게 안락함을! 모든 플랫폼 사용자에게 동일한 경험을 제공하기 위해 오늘도 불철주야 연구하고 있습니다. 공희원 Platform Center, 플랫폼 SDK실 실장사용자가 편리하게 사용할 수 있는 플랫폼, 개발자도 즐겁게 개발할 수 있는 플랫폼을 만들기 위해 노력하고 있습니다.

kakao developers

카카오 API와 비즈니스 솔루션 등 카카오 플랫폼을 더욱 효과적으로 이용하려면, 플랫폼의 기본적인 구조와 기능에 대한 이해가 필요합니다. 특히 플랫폼 서비스에서 사용하는 기능 및 개념을 이해하는 것이 중요합니다.

서비스 구성

카카오 플랫폼은 카카오톡, 카카오스토리와 같은 카카오의 서비스를 비롯해 카카오페이, 카카오커머스, 카카오페이지 등 카카오 공동체가 서비스하는 여러 가지 서비스들로 이뤄져 있습니다. 사용자는 카카오계정이라는 하나의 모바일 플랫폼의 종류 통합 계정으로 카카오 플랫폼 서비스들을 이용할 수 있습니다.

또한 카카오 플랫폼에서는 카카오 및 공동체의 서비스뿐만 아니라, 수많은 파트너들이 다양한 서비스들을 독립적으로 운영하고 있습니다. 파트너는 카카오 로그인, 카카오싱크, 카카오페이 등 카카오 API를 활용해 서비스를 더욱 풍부하게 구성할 수 있고, 카카오 플랫폼 사용자들이 각 서비스를 보다 쉽게 이용하도록 할 수 있습니다.

카카오 플랫폼의 사용자는 각 서비스를 만들고 운영하는 B2B(Business to Business) 파트너, 카카오톡이나 각 서비스를 이용하는 B2C(Business to Customer) 사용자로 나뉩니다. 카카오는 파트너, 최종 사용자 모두에게 서비스를 제공하는 플랫폼 사업자로서 애플리케이션을 통해 각 서비스와 연결되고, 카카오계정을 통해 각 사용자들과 연결(link)됩니다.

카카오 API 플랫폼의 구조

카카오 플랫폼과 서비스의 연결

카카오, 서비스, 사용자를 이어준다는 의미의 연결은 카카오 플랫폼에서 가장 중요하고 자주 사용되는 용어입니다. 카카오 플랫폼을 이용하려면 연결이라는 개념을 간단하게라도 이해하는 것이 중요합니다.

서비스는 카카오디벨로퍼스 애플리케이션을 통해 카카오 플랫폼과 연결됩니다. 카카오 플랫폼은 각 애플리케이션 정보와 권한 내역을 바탕으로 카카오 API를 제공합니다.

카카오의 개발자 웹사이트인 카카오디벨로퍼스(Kakao Developers, 이하 개발자 웹사이트)에서 애플리케이션 등록 시 서비스 이름과 회사명을 비롯한 정보를 설정할 수 있습니다. 또한 애플리케이션에 사업자 정보를 등록하면 비즈니스 애플리케이션(비즈 앱)이 되어 여러 추가 기능들을 사용하거나 같은 사업자 정보를 가진 카카오톡 채널과도 연결할 수 있습니다.

연결된 서비스 관리

카카오 플랫폼에서 모바일 플랫폼의 종류 사용자와 연결된 앱 정보는 연결된 서비스 관리 메뉴에서 확인할 수 있습니다. 연결된 서비스 관리는 카카오톡의 [설정] > [개인/보안] > [카카오계정] 또는 카카오계정 페이지의 [계정 이용] 메뉴에서 확인할 수 있습니다. 해당 메뉴에서 각 앱의 프로필 공개 설정도 가능합니다.

연결된 서비스 관리 화면

서비스와 사용자의 연결

사용자 측면에서 연결은 카카오 플랫폼에서 사용자의 카카오계정과 서비스의 애플리케이션을 이어준다는 의미로, 카카오계정을 사용한 카카오 로그인을 통해 이뤄집니다. 카카오계정은 카카오톡 등 카카오 서비스를 통해 가입합니다.

사용자 카카오계정은 카카오 플랫폼에 등록된 서비스에 로그인할 때 해당 서비스의 앱과 연결되고 카카오 API 사용 권한을 받습니다. 한 사용자가 여러 개의 카카오계정을 가질 수도 있고, 한 카카오계정이 여러 개의 서비스 앱에 연결될 수도 있습니다.

서비스와 사용자의 연결 구조

마찬가지로 서비스 앱은 여러 개의 카카오계정과 연결될 수 있습니다. 여러 사용자가 서비스 앱을 이용할 수 있다는 의미입니다. 또한 서비스 앱을 관리하는 팀원 설정과 연결 상태는 별개이므로, 팀원 또한 카카오 로그인을 통해 앱과 연결되어야 카카오 API를 이용할 수 있습니다.

카카오계정은 개발자 웹사이트에서 애플리케이션을 등록하고 관리하는 데도 사용합니다. 개발자 웹사이트 또한 카카오 플랫폼 안의 서비스이기 때문입니다. 개발자 등록은 카카오계정 로그인 후 기본 정보 입력만으로도 가능합니다.

사용자는 카카오톡의 [프로필] > [카카오계정] 메뉴와 카카오계정 설정 페이지의 연결된 서비스 관리 메뉴에서 카카오 로그인을 통해 연결된 서비스 목록을 확인할 수 있습니다.

연결 끊기

연결과 반대 개념인 연결 끊기도 있습니다. 연결 끊기는 서비스의 애플리케이션과 사용자 사이에서만 이뤄지며, 연결이 끊어진 사용자의 정보로는 카카오 API를 호출할 수 없습니다.

연결 끊기는 사용자가 카카오 플랫폼을 통해 서비스를 더 이상 이용하지 않도록 요청하거나, 서비스에서 직접 탈퇴하는 경우 필요한 기능입니다. 연결 끊기 API와 연결 끊기 알림 받기 기능을 사용해 더 이상 연결되어 있지 않은 사용자에 대한 회원 정보 처리를 할 수 있습니다.

회원 탈퇴 시 필요한 처리

연결과 회원 가입의 다른 점

연결은 서비스 가입과 비슷하지만 다른 개념입니다. 가입이 서비스 회원 정보 에 사용자를 등록하는 것이라면, 연결은 개발자 웹사이트 애플리케이션 에 사용자를 등록해 카카오 플랫폼 기능 권한을 주는 것이기 때문입니다. 연결은 서비스 회원 정보에 직접적인 영향을 주지 않습니다. 카카오는 서비스 데이터에 접근하지 않기 때문입니다. 회원 가입은 사용자가 서비스 앱과 연결된 후, 서비스에서 직접 회원 정보에 가입 처리를 해야만 이뤄집니다.

연결과 회원 가입에 필요한 처리

회원 탈퇴도 연결 끊기와는 다릅니다. 연결을 끊어도 카카오가 서비스 회원 정보에서 사용자 정보를 지우지 않습니다. 만약 카카오 플랫폼 사용자가 카카오계정 관리 페이지를 통해 특정 서비스를 더 이상 이용하지 않겠다고 요청하거나 서비스에서 탈퇴하면, 카카오는 연결 끊기를 통해 해당 서비스 애플리케이션과 사용자의 연결을 끊고, 서비스가 해당 사용자 정보로 카카오 플랫폼 기능을 이용할 수 없도록 합니다.

이와 함께 서비스는 회원 정보 등 데이터베이스에서 해당 카카오 플랫폼 사용자의 정보를 삭제하는 등 탈퇴 처리를 해야 합니다. 사용자는 서비스 이용을 위해 자신의 정보와 기능 이용 권한을 제공하는 데 동의했기 때문에, 서비스를 이용하지 않기로 해서 제공 동의를 철회했을 때는 탈퇴 및 정보 삭제 처리가 필요합니다.

카카오 플랫폼에서 제공하는 대부분의 API는 오픈 API로, 플랫폼 정책 범위 안에서 애플리케이션 등록을 통해 누구나 무료로 이용할 수 있습니다. 단, 원활한 서비스 제공을 위해 일정한 사용량 제한(이하 쿼터, Quota)이 적용됩니다. 현재 적용되는 쿼터 정보는 쿼터에서, 각 앱의 쿼터 소모량은 [내 애플리케이션] > [통계] > [쿼터]에서 각각 확인할 수 있습니다.

쿼터는 각 개발자 계정이 소유한 모든 앱의 쿼터 소모량을 합산하여 적용됩니다. 개발자 계정이 소유한 하나의 앱에서 특정 API의 쿼터를 초과할 경우, 다른 앱의 해당 API 이용이 제한될 수 있으므로 주의합니다.

각 API에 대해 적용되는 쿼터는 월간 제공량 및 일일 제공량 제한이 각각 존재하며, 해당 API의 기간별 요청 수를 기준으로 합니다. API 요청 수는 카카오 플랫폼에 정상적으로 전달되어 요청 수행 및 응답에 성공한 요청 1건당 1씩 집계(Count)됩니다. 일부 API의 쿼터는 문자나 프레임 수와 같은 API 요청에 따른 데이터 처리량을 기준으로 별도 집계됩니다.

제품 소개

이 항목은 카카오 플랫폼이 제공하는 제품 소개 및 문서, 데모 바로가기를 제공합니다. 제품을 함께 참고합니다.

모든 API는 기본적으로 REST API 방식으로 제공하고 있으며, 보다 쉽게 API를 사용할 수 있도록 도와주는 Kakao SDK for JavaScript(이하 JavaScript SDK), iOS, Android도 제공합니다. 카카오 로그인과 같이 기본적인 기능과 카카오톡 공유와 같이 자주 쓰이는 기능들을 Kakao SDK로 구현할 수 있습니다. REST API 사용이 어렵다면 Kakao SDK를 활용해 개발하는 것을 권장합니다. 단, Kakao SDK는 일부 기능을 지원하지 않으므로 아래 목록에서 서비스별 Kakao SDK 지원 여부를 확인해야 합니다.

개발자 웹사이트 [도구] 메뉴에서 JavaScript SDK를 이용한 데모와 REST API 테스트 기능을 제공합니다. 또한 일부 기능은 별도 데모 페이지를 제공하며, 기능 소개의 링크를 통해 이용 가능합니다.

REST API 테스트 도구 outlink JavaScript SDK 데모 outlink

카카오 로그인

사용자가 카카오톡이나 카카오계정으로 간편하게 서비스에 로그인하는 기능을 제공하는 소셜 로그인 API입니다. PC나 모바일 웹에서는 REST API와 JavaScript SDK를, Android와 iOS 플랫폼에서는 Kakao SDK for Android, iOS를 사용해 카카오 로그인을 구현할 수 있습니다.

또한, 사용자가 카카오계정에 입력한 정보를 조회하거나, 서비스의 필요에 따라 앱별로 사용자 정의(Custom)한 값들을 저장할 수 있습니다. 각 서비스 앱은 API를 통해 사용자가 제공 동의한 카카오계정 정보를 받아 활용할 수 있습니다.

OAuth 2.0 기반인 REST API는 인가 코드 받기와 토큰 받기 두 단계를 거쳐 로그인을 요청하며, Kakao SDK 사용 시에는 로그인 함수를 사용합니다. Kakao SDK는 인증 정보를 담은 토큰을 관리하는 기능을 내장하고 있어 토큰 갱신하기 API를 따로 제공하지 않습니다.

사용자 목록 가져오기는 서비스 관리자를 위한 기능으로, 앱 어드민 키를 사용해 요청합니다. 따라서 다른 종류의 앱 키를 쓰는 Kakao SDK에서는 사용자 목록 가져오기 기능을 지원하지 않습니다.

자세한 정보는 카카오 로그인을 참고합니다.

카카오톡 소셜

카카오톡 소셜 API는 서비스 안에서 모바일 메신저 카카오톡 친구 목록을 보여주거나 메시지를 보내는 소셜 활동을 구현할 때 사용합니다. 카카오톡 친구 정보를 데이터로 제공하지만, 카카오톡 친구 목록 페이지는 서비스 UI(User Interface)에 맞춰 직접 구현해야 합니다. 이 API는 소셜 활동을 통해 사용자 재방문을 유도할 수 있다는 장점이 있습니다.

자세한 정보는 카카오톡 소셜을 참고합니다.

메시지: 카카오톡

카카오톡 메시지 API는 사용자 자신이나 카카오톡 친구에게 메시지를 보내는 기능입니다. 카카오톡 메시지 API를 사용하면 서비스 서버나 앱에서 메시지 보내기를 API로 요청할 수 있습니다.

이 API를 통해 친구에게 메시지를 보내려면 먼저 카카오톡 소셜 API의 친구 목록 가져오기를 사용해 메시지를 보낼 친구 정보를 받아야 합니다. 또한 함께 서비스를 이용하고 있는 친구를 대상으로만 메시지를 보낼 수 있습니다.

자세한 정보는 메시지를 참고합니다.

메시지: 카카오톡 공유

카카오톡 공유 API는 서비스에서 제공하는 정보를 카카오톡 메시지로 친구들과 공유하는 기능입니다. 친구 목록 페이지를 카카오에서 제공하거나 카카오톡 앱에서 메시지를 보내기 때문에 카카오톡 API보다 구현하기 쉽고, 모든 카카오톡 친구를 대상으로 메시지를 보낼 수 있습니다.

자세한 정보는 메시지를 참고합니다.

카카오스토리

카카오스토리 API는 카카오가 서비스하는 소셜네트워크서비스(SNS)인 카카오스토리에 새로운 게시물을 쓰거나 삭제하고, 사용자의 스토리를 불러와 카카오스토리와 연계된 서비스를 구현할 때 유용한 기능들을 제공합니다.

카카오스토리 API는 SDK별로 지원하는 기능이 다른 점에 유의합니다. JavaScript SDK는 PC 또는 모바일 웹에서 사용하며, 사용자 환경에 따라 카카오스토리 앱으로 연결이 불가능하므로 두 가지 공유하기 방식을 제공합니다. 이미지 업로드하기 및 웹 페이지 스크랩하기는 REST API의 경우 별도로 호출해야 하지만, 카카오 SDK에서는 내장된 기능을 사용합니다.

자세한 정보는 카카오스토리를 참고합니다.

카카오톡 채널

카카오톡 채널은 카카오톡 사용자들에게 다양한 서비스 소식을 메시지와 게시물 형태로 전파할 수 있는 서비스로써, 카카오톡 채널 API는 1:1 채팅, 스마트채팅, 봇 등 유용한 연계 기능들을 제공합니다. 이 기능들을 활용해 웹 페이지에서 서비스의 카카오톡 채널을 홍보하거나 사용자들의 채널 이용을 더욱 활발하게 할 수 있습니다.

카카오톡 채널 관리자가 보다 편리하게 친구 그룹을 관리할 수 있도록 카카오톡 채널 고객 관리 API도 제공합니다. 이 기능은 관리자 페이지를 구현할 때 사용할 수 있도록 제공되는 것이므로 REST API 방식으로만 사용 가능합니다.

자세한 정보는 카카오톡 채널을 참고합니다.

카카오싱크

카카오싱크는 사용자가 카카오계정 및 정보로 다양한 모바일 플랫폼의 종류 서비스를 이용할 수 있는 간편가입 서비스를 구현하기 위한 비즈니스 솔루션입니다. 카카오싱크를 통해 복잡한 회원가입 및 정보 입력 절차를 거치지 않고 손쉽게 신규 회원을 확보할 수 있으며, 확보한 회원 데이터를 바탕으로 타깃 메시지를 발송할 수 있습니다. 또한 추가 개발을 통해 자동 로그인 기능을 구현하면 사용자가 서비스 페이지에 방문하는 순간 자동으로 로그인되어, 사용자가 로그인 단계에서 이탈하는 경우를 방지할 수 있습니다.

카카오는 자동 로그인, 배송지 조회하기 등 카카오싱크의 이용 효과를 높이기 위한 API들을 제공합니다. 이 중 타깃 메시지 발송 대상 관리를 위해 필요한 기능인 채널 관계 알림 받기는 REST API로만 제공됩니다.

카카오페이

카카오페이 API는 웹사이트와 모바일 모바일 플랫폼의 종류 애플리케이션 등 다양한 환경에서 카카오페이로 결제하는 기능을 제공합니다.

자세한 정보는 카카오페이를 참고합니다.

카카오페이 데모 outlink

카카오모먼트

카카오모먼트 API는 카카오모먼트 플랫폼의 광고계정, 캠페인, 광고그룹, 소재(creative)와 관련된 기능을 조회하고 이와 관련된 성과 지표를 확인할 수 있는 기능을 제공합니다.

자세한 정보는 카카오모먼트를 참고합니다.

카카오 키워드광고

카카오 키워드광고 API는 카카오 키워드광고에서 집행되는 광고 정보를 조회하거나 수정, 삭제할 수 있도록 API로 관리 기능을 제공합니다.

자세한 정보는 카카오 키워드광고를 참고합니다.

푸시 알림

푸시 알림 API는 Apple Push Notification service(APNs)과 Firebase Cloud Messaging(FCM)을 활용하여 카카오 플랫폼을 통해 사용자에게 푸시 알림을 보내는 API입니다. 사용자 기기의 푸시 토큰 정보를 이용하는 기능이므로 iOS, Android, REST API 방식을 지원합니다. 서비스 관리자가 등록된 사용자들에게 푸시 알림을 보내는 기능은 REST API로 구현합니다. 단, iOS의 경우 Kakao SDK를 통해 나에게 푸시 알림 보내기 기능을 사용할 수 있습니다.

자세한 정보는 푸시 알림을 참고합니다.

Daum 검색

Daum 검색 API는 포털 사이트 Daum에서 방대한 웹 문서, 동영상, 이미지, 블로그, 책, 카페를 검색하는 기능을 제공합니다.

자세한 정보는 Daum 검색을 참고합니다.

지도/로컬 API

지도 SDK는 웹사이트와 모바일 애플리케이션에서 카카오맵 지도를 이용한 서비스를 제작할 수 있도록 다양한 기능을 제공합니다. iOS와 Android, JavaScript SDK를 이용할 수 있습니다.

자세한 정보는 지도 SDK를 참고합니다.

로컬 API는 키워드로 모바일 플랫폼의 종류 특정 장소 정보를 조회하거나, 좌표를 주소 또는 행정구역으로 변환하는 등 장소에 대한 정보를 제공하는 API입니다.

자세한 정보는 로컬을 참고합니다.

카카오내비

카카오내비 앱을 실행해 길을 안내하는 내비게이션 기능과 경로 안내 기능을 제공합니다.

자세한 정보는 카카오내비를 참고합니다.

포즈 API는 이미지와 영상에서 사람들을 추출하여 사람들의 자세를 분석하는 API입니다. 사람의 17개의 신체 부위를 정확히 인식하여 요가나 스포츠에서 볼 수 있는 일반적이지 않은 고난이도 자세를 분석할 수 있습니다. 이러한 기능은 사람의 움직임을 감지할 수 있는 디바이스를 이용하여 운동이나 오락을 위한 서비스에도 활용할 수 있습니다.

모바일 플랫폼의 종류

잠깐! 현재 Internet Explorer 8이하 버전을 이용중이십니다. 최신 브라우저(Browser) 사용을 권장드립니다!

  • 기사공유하기
  • 프린트
  • 메일보내기
  • 글씨키우기
    • 가나다라마바사
    • 가나다라마바사
    • 가나다라마바사
    • 가나다라마바사
    • 가나다라마바사
    • 가나다라마바사
    • 기사공유하기
    • 프린트
    • 메일보내기
    • 글씨키우기
      • 가나다라마바사
      • 가나다라마바사
      • 가나다라마바사
      • 가나다라마바사
      • 가나다라마바사
      • 가나다라마바사

      사진/ 마크 주커버그 신년계획 페이스북 라이브 영상 캡처

      먼저 온라인 동영상 플랫폼에는 양대산맥 넷플릭스와 유튜브가 있다. 넷플릭스와 유튜브는 인터넷 기반에서 출발한 서로 다른 동영상 비즈니스 대표 모델을 구축해왔다.

      넷플릭스는 영화 대여 서비스에서 출발해 프리미엄 콘텐츠 부문에서의 강점을 바탕으로 유료 구독형 모델을 도입한 반면, 유튜브는 이용자의 동영상 공유를 통한 콘텐츠 확보에 주력하면서 무료 서비스를 기반으로 광고 비즈니스 모바일 플랫폼의 종류 모델을 확립했다. 즉 두 회사는 각각 가입형 유료 서비스와 광고 기반 무료 서비스 부문을 대표한다.

      지금까지 양사의 비즈니스 모델과 타깃층이 차이를 보이고 있어 직접적인 경쟁은 이뤄지지 않았다. 왜냐하면 넷플릭스는 프리미엄 동영상 콘텐츠 소비를 원하는 기존 유료방송가입자가 주요 타깃이며, 이들이 선호하는 고품질 콘텐츠를 저렴한 월 구독료에 제공하는 것이 목적이었고, 반대로 유튜브는 가능한 많은 이용자가 다양한 종류의 동영상을 시청하며 사이트에 머물도록 유도함으로써 광고 수익을 극대화하는 것이 목적이었기 때문이었다.

      그러나 한국콘텐츠진흥원의 '글로벌 미디어 플랫폼의 비즈니스 전략' 보고서에는 향후 온라인을 중심으로 한 동영상 유통 생태계가 확대되면, 두 회사가 독특하게 발전시켜온 서비스 및 비즈니스 모델 경계가 혼재되는 모습을 보일 것으로 전망했다.

      최근 두 회사의 오리지널 콘텐츠 라인업 강화, 유튜브의 가입형 서비스 및 생방송 서비스 등 모바일 특화 콘텐츠 강화, 여기에 넷플릭스와 유튜브 모델이 혼재된 아마존 비디오 다이렉트 서비스 등장으로 향후 온라인 동영상 서비스 시장의 전반적인 경쟁 구도 재편 가능성이 예상된다는 것이다.

      쉽게 말하자면, 넷플릭스, 유튜브를 비롯한 주요 온라인 동영상 사업자는 유통 뿐 아니라 자체 프리미엄 콘텐츠 확보를 강화하고 있다는 점에서 공통점을 보이고 있다는 것. 오리지널 콘텐츠는 자사 서비스의 가치를 높여 경쟁사와의 이용자 확보 경쟁에서 우위를 점하는 요인으로 작용한다. 넷플릭스의 오리지널 콘텐츠 제작 전략은 유료 콘텐츠 확보에 따른 저작권료 절감 목적도 내포하고 있다.

      정보통신산업진흥원 정보통신방송해외정보(CONEX)은, 전세계적으로 온라인 스트리밍이 영상 산업을 영상 산업을 뒤흔들 것이라고 전망했다.

      넷플릭스의 헤이스팅스 대표이사는 “티브이 방송 시대는 2030년까지 일 것”이라고 언급한 바 있고, 최근 미국에서 온라인 스트리밍 서비스는 괄목할만한 성과를 보이고 있으며, 그에 비해 전통적인 영상 산업인 티브이, 영화 산업 등은 하락세를 걷고 있다는 것이 업계의 중론 이라는 설명이다. 소비자들이 인터넷을 먼저 생각하고, 티브이를 그 다음으로 떠올리는 시대가 도래하고 있다.

      사진/ 넷플릭스와 유튜브 홈페이지 메인화면

      <>미디어 회사! 모바일 SNS 강자 페이스북

      “우리는 전통적인 기술 회사도 아니고, 전통적인 언론사도 아니다” 가짜 뉴스 논란의 중심에 선 페이스북의 마크 주커버그는 이런 애매한 말로 사실상 미디어의 역할을 하고 있는 현재를 대신 설명하고 있다.

      최근 페이스북은 모바일 사용자 10억 명을 넘기며 수익 3배 증가했다. 페이스북의 지난해 3분기 매출은 70억 1,000만 달러(약 8조 335억원)로 전년 대비 166%가 늘었고, 수익은 23억 8,000만 달러(약 2조 모바일 플랫폼의 종류 7,275억원)로 지난 해 같은 기간 8억 9,600만 달러(약 1조 270억원)보다 거의 3배 가까이 증가하는 실적을 낸 것.

      페이스북의 주요 수익원인 전체 광고 매출 68억 달러(약 7조 7,930억 원) 가운데 84%인 57억 달러(약 6조 5,320억 원)가 모바일 광고에서 나왔고, 이는 지난 해보다 약 7% 가량 증가된 수치다.

      페이스북이 공개한 월 사용자(Active User)는 17억 8,800만명으로 지난해 같은 기간보다 약 16%가 늘었고, 모바일 월 사용자는 16억 5,800만명으로 20%가 증가했다. 그리고 모바일 기기로만 페이스북을 이용하는 사용자는 10억 5,500만명, 매일 모바일로 페이스북을 한 번 이상 사용하는 사람은 10억 9,000만명으로 처음으로 모바일 이용자 수가 10억 명을 넘어서기도 했다.

      페이스북은 실적 발표 후 페이스북의 최우선 순위는 동영상이라며, 페이스북 라이브, 인스타그램 서비스 등을 강화할 것을 발표했다.

      페이스북 라이브는 페이스북 모바일 앱으로 동영상을 촬영하며 바로 스트리밍 방식으로 친구들과 공유하는 서비스다. 페이스북 앱 내 눈에 잘 띄는 위치에 Live 탭을 신설하고, 방송 중에 ‘좋아요’등의 리액션 할 수 있게 해 진행자와 청취자 상호작용 강화했다.

      인스턴트 아티클스는 페이스북 앱에서 언론사 기사를 링크할 때, 언론사 모바일 웹페이지로 이동하지 않고 앱 내에서 바로 빠르게 로딩하는 뉴스 퍼블리싱 서비스다. 로딩 속도를 일반 모바일 웹페이지의 10분의 1 수준인 0.8초로 단축해서 모바일 웹의 가장 큰 불편사항인 로딩 속도 문제 개선했고, 모바일 화면 전체를 활용하고 동영상과 사운드 등 삽입 가능해 몰입감 있는 뉴스 경험 제공하고 있다.

      페이스북 라이브와 인스턴트 아티클스는 독자와의 접점을 확대하고 광고 수익을 올릴 수 있는 수단을 제공한다는 점에서 언론사에 매력적 서비스이나, 반면 콘텐츠 유통을 외부 플랫폼에 위탁하는 형태라 플랫폼 종속이 심화되고 향후 페이스북 정책 변경 등에 휘둘릴 가능성도 상존한다.

      때문에 언론사는 페이스북 활용방안 모색과 종속 우려 사이에서 고민하고 있다. 그러나 뉴스 소비의 중심이 소셜 미디어로 이동함에 따라 페이스북 활용은 필수가 되었다는 인식 높아지고 있는 현실이다.


0 개 댓글

답장을 남겨주세요