G·Graph Daily Lab 전체 140회
추가 40 / 40 · 심화 · 약 15분

Ontology SDK로 온톨로지 위에 앱 만들기

온톨로지는 팔란티어 안의 앱뿐 아니라 직접 만든 앱에서도 쓸 수 있습니다. Ontology SDK(OSDK)가 무엇을 제공하고, 앱이 볼 수 있는 데이터가 어떻게 정해지는지 따라가 봅니다.

팔란티어 온톨로지 II

배운 뒤 돌아올 회차

DAY 98에서 사람과 AI에게 같은 권한 모델이 적용된다고 했는데, 직접 만든 앱에서는 앱의 범위와 사용자 권한이 겹치는 부분만 보인다는 점을 확인합니다.

시작하면 직접 풀기와 퀴즈 기록이 저장됩니다. 본과정 100회 진도와는 별도입니다.

이번에 더 배울 것

Ontology SDK(OSDK)는 개발 환경에서 온톨로지를 직접 쓰게 하는 SDK입니다. 문서에 따르면 TypeScript(npm), Python(pip·Conda), Java(Maven)를 지원하고, 그 밖의 언어는 OpenAPI 명세로 쓸 수 있습니다. OSDK 애플리케이션은 Developer Console에서 만들고 관리합니다. 타입이 지정된 코드로 객체를 조회하고 온톨로지에 다시 쓸 수 있으며, 온톨로지 구조에 대한 정보를 코드 편집기 안에서 바로 확인할 수 있습니다.

보안 모델이 핵심입니다. 문서는 OSDK가 애플리케이션이 접근하려는 온톨로지 엔티티로만 범위가 제한된 토큰을 쓰고, 여기에 사용자 자신의 데이터 권한이 더해진다고 설명합니다. 즉 앱이 실제로 보는 데이터는 ‘앱에 허용한 범위’와 ‘로그인한 사용자가 볼 수 있는 범위’의 교집합입니다. 행·열 접근 통제도 그대로 적용되어, 사용자가 권한 없는 데이터는 앱에서도 볼 수 없습니다.

외부 앱이나 에이전트에서도 쓰기는 액션을 통해 하도록 설계하는 편이 좋습니다. 그래야 액션의 제출 조건과 액션 로그가 앱 밖에서 들어온 편집에도 똑같이 적용됩니다. 문서는 AIP Chatbot도 Ontology SDK와 플랫폼 API로 외부에 배포할 수 있다고 밝힙니다. 한계로, 앱 범위를 넓게 열어 두면 권한이 넓은 사람이 쓸 때 노출 범위도 함께 넓어지므로, 앱 범위는 그 앱의 기능에 필요한 객체 타입으로 좁힙니다.

작은 예제로 따라가기

1

배송 추적 앱의 범위: Shipment와 Warehouse 객체 타입, ‘도착 예정 시각 갱신’ 액션만 허용합니다.

2

W-1 부산센터 직원(권한: W-1의 Shipment, Warehouse, Customer)이 로그인하면 앱은 W-1의 Shipment와 Warehouse만 보여 줍니다. Customer는 앱 범위 밖이라 보이지 않습니다.

3

외부 운송사 사용자(권한: 자기 운송 건 Shipment)가 같은 앱을 쓰면 자기 운송 건만 보이고, 도착 예정 시각 갱신도 액션의 제출 조건을 통과해야 실행됩니다.

COMPARE & EXPLAIN

앱 범위와 사용자 권한의 교집합

앱 범위가 {Shipment, Warehouse}일 때 사용자마다 앱에서 무엇이 보일지 먼저 적어 보세요.

W-1의 Shipment + Warehouse

사용자는 Customer도 볼 수 있지만 앱 범위 밖이라 앱에서는 보이지 않습니다.

OSDK 앱은 앱에 허용한 온톨로지 범위와 사용자 권한의 교집합만 보며, 쓰기는 액션을 거쳐 제출 조건과 로그를 그대로 적용받도록 설계합니다.

학습을 시작하면 새 문제를 직접 풀고 확인 퀴즈를 마친 뒤 선택한 본과정 회차로 돌아갑니다.