Oracle Mobile Hub 환경 이해
Oracle Mobile Hub는 모바일 앱 개발 및 사용을 지원하도록 설계되었습니다. 이 기능을 사용하여 모바일 앱이 액세스할 수 있는 하나 이상의 API에 대한 인증 및 경로 지정을 처리하는 백엔드를 설정할 수 있습니다.
통지, 위치 서비스, 스토리지, 오프라인 및 동기화, 데이터베이스 액세스와 같은 서비스를 제공하는 하나 이상의 내장 플랫폼 API를 사용할 수 있습니다.
Oracle Mobile Hub는 사용자가 작성하는 사용자정의 API를 호스팅할 수도 있습니다. Oracle은 앱을 보다 쉽게 개발할 수 있도록 Android, iOS, Cordova, React Native 및 Javascript 웹 앱용 SDK를 제공합니다.
사용자정의 API는 Oracle Mobile Hub 커넥터를 사용하여 모바일 앱에서 Google Maps 또는 OpenWeatherMap과 같은 타사 애플리케이션으로 연결을 라우팅할 수 있습니다. 커넥터는 사용자 정의 API 호출을 외부 서비스에 적합한 형식으로 변환할 수 있는 간접 레벨을 도입합니다. 또한 외부 서비스와의 인증을 처리하고 앱의 여러 요청을 단일 REST 호출로 결합하는 데 사용할 수 있습니다.
백엔드
백엔드는 웹 서버와 유사한 역할을 하지만 웹 페이지를 호스팅하는 대신 API 및 기타 아티팩트를 호스팅합니다. 모바일 앱은 사용자가 생성한 백엔드를 통해서만 Oracle Mobile Hub의 리소스에 액세스할 수 있습니다.
백엔드를 생성한 후 하나 이상의 API를 백엔드와 연관시킵니다. 연관된 API는 API에 대한 기본 URL을 제공하는 백엔드를 통해 액세스됩니다. 또한 백엔드는 API에 대한 인증 및 권한 부여 작업을 처리합니다. OAuth 또는 기본 인증을 사용하여 사용자를 인증할 수 있습니다. 모바일 사용자에게 롤을 지정한 다음 사용자 롤을 기반으로 백엔드에 대한 액세스를 제한할 수도 있습니다.
푸시 통지를 사용하는 경우 Oracle Mobile Hub에서 통지 프로파일을 생성하여 Google, Apple 및 Syniverse와 같은 통지 공급자의 인증서를 관리할 수 있습니다. 그런 다음 클라이언트 앱을 통지 프로파일과 연관시킵니다.
인증 방식
앱 사용자를 인증하는 데 몇 가지 방법을 사용할 수 있습니다.
Oracle Mobile Hub에서는 모든 리소스가 보호되며, 이러한 리소스에 액세스할 권한이 있는 인증된 사용자만 액세스할 수 있습니다. 대부분의 경우 백엔드에 대해 두 개 이상의 인증 방법을 사용으로 설정할 수 있습니다.
백엔드는 OAuth 2.0, HTTP 기본 인증, SSO(Enterprise Single Sign-On) 및 Facebook 로그인 인증 방법을 지원합니다.
- OAuth 2.0
-
OAuth 소비자 키는 백엔드를 생성할 때 클라이언트 ID 및 클라이언트 암호 형식으로 생성됩니다.
- HTTP 기본
-
HTTP 기본 액세스 키는 백엔드를 생성할 때 백엔드 ID와 익명 키 형식으로 생성됩니다.
- Enterprise Single Sign-On
-
IdP과 Oracle Mobile Cloud 간에 신뢰 관계를 생성하여 앱 사용자에게 고유한 IdP을 사용할 수 있습니다. 이렇게 하면 회사의 직원이 기존 인증서를 사용하여 앱에 로그인할 수 있습니다. 또한 고객이 다른 목적으로 이미 유저 계정을 가지고 있는 Consumer Applications에서도 사용할 수 있습니다.
타사 IdP의 SAML 토큰 또는 JWT 토큰과 Oracle Identity Cloud Service를 IdP로 사용하는 브라우저 기반 SSO를 사용할 수도 있습니다.
Oracle Mobile Hub는 다음과 같은 방법으로 SAML 및 JWT 토큰 사용을 지원합니다.- Oracle에 사용자 계정이 저장되지 않는 풋프린트 SSO를 사용합니다. 대신 사용자 역할을 포함하여 사용자에 대한 모든 정보가 타사 토큰에서 파생됩니다. 이러한 사용자를 가상 사용자라고 합니다.
- Oracle Identity Cloud Service 및 타사 IdP에서 프로비전된 사용자를 식별하는 토큰을 사용합니다. Oracle Identity Cloud Service에 제공된 정보를 기반으로 사용자에게 롤이 연관됩니다.
- Facebook 로그인
-
이 인증 방법은 소비자를 대상으로 하는 앱에 유용하지만 Facebook에 앱을 등록해야 합니다. 또한 Facebook 로그인을 사용할 때 백엔드의 다른 인증 방법을 사용할 수 없습니다.
모바일 사용자 및 역할
사용자를 생성한 다음 앱에 대한 액세스 권한을 지정합니다. 그런 다음 롤을 사용하여 해당 액세스를 제한할 수 있습니다.
Oracle Identity Cloud Service에서, 타사 IdP를 통해 또는 Facebook 로그인 인증을 사용하여 사용자를 생성할 수 있습니다. REST API는 Oracle Identity Cloud Service에서 사용할 수 있으며 사용자 및 그룹을 대량으로 생성하고 관리할 수 있습니다.
사용자가 생성되면 앱에 대한 액세스 권한을 지정합니다. 그룹에 사용자를 추가한 다음 그룹에 앱에 대한 액세스 권한을 부여할 수도 있습니다.
Oracle Mobile Cloud에서 역할을 생성한 다음 해당 역할에 대한 접근 권한을 지정할 수 있습니다. API 또는 API의 하나 이상의 끝점에 액세스할 수 있는 역할을 지정할 수 있습니다. Facebook 로그인을 사용하는 경우 역할 기반 접근을 사용할 수 없습니다.
클라이언트 SDK
Oracle은 Android, iOS, Cordova, JavaScript, React Native 플랫폼 및 프레임워크에 클라이언트 SDK를 제공합니다.
SDK는 Oracle Mobile Hub를 보다 쉽게 사용할 수 있도록 플랫폼별 래퍼 클래스를 제공합니다.
Oracle Mobile Hub에서 SDK를 다운로드하려면 자세히 탐색 섹션의 다운로드 페이지를 참조하십시오. 다운로드 페이지의 SDK 이름은 레거시 제품 이름을 따르지만 포함된 코드는 최신 릴리스와 함께 최신입니다.
내장 지속성 계층
각 백엔드에는 SQL 데이터베이스로 구현되는 고유한 지속성 계층이 있습니다.
앱은 데이터베이스 액세스 API 및 데이터베이스 관리 API를 통해 데이터베이스에 액세스할 수 있습니다. 이 두 API를 함께 사용하면 SQL 명령을 사용하여 테이블과 행을 생성, 읽기, 갱신 및 삭제할 수 있습니다.
모바일 앱은 데이터베이스에 직접 액세스할 수 없습니다. 커스터마이징 API로 생성된 REST API 호출을 통해서만 데이터베이스에 접근할 수 있습니다.
앱 정책 API
앱 정책 API를 사용하여 백엔드에서 읽기 전용 사용자정의 속성을 생성하고 REST 호출로 모바일 앱에서 액세스합니다.
앱 정책은 백엔드에서 정의 및 조정한 다음 REST API를 통해 앱에서 참조할 수 있는 사용자정의 속성입니다. 백엔드를 게시한 후에도 언제든지 앱 정책을 업데이트할 수 있습니다. 이렇게 하면 앱 자체를 업데이트하지 않고도 배포된 앱의 모양과 동작을 변경할 수 있습니다.
예를 들어, 앱은 정책에 의존하여 사용자에게 휴일 판매 섹션을 표시할지 여부를 결정할 수 있습니다. 또한 사용할 이미지 이름, 글꼴, 색상 및 앱의 모양과 느낌에 영향을 주는 기타 세부정보와 같은 구성 세부정보를 저장할 수 있습니다.
진단
Oracle Mobile Hub의 진단 기능을 통해 실시간 성능 데이터를 제공하고 각 API 및 커넥터 요청에 대한 상세 로그 메시지에 빠르게 액세스할 수 있습니다.
개발자는 이러한 기능을 사용하여 코드를 디버깅할 수 있습니다. 관리자는 이러한 기능을 사용하여 성능 및 오류율을 모니터하고 발생한 문제를 디버깅할 수 있습니다.
진단 랜딩 페이지는 전체 환경 건전성을 전달하는 트래픽 표시등 표시기, 요청 및 응답을 플로팅하는 타임라인, HTTP 4xx 및 HTTP 5xx 오류를 표시하는 카운터가 포함된 상위 레벨 보기를 제공합니다. 표시기 또는 오류 카운터에서 드릴다운하여 실패한 요청을 식별하고 해당 요청과 연관된 로그 레코드를 볼 수 있습니다.