KR20110029354A - 사용자 프로파일 정보 관리 방법 및 시스템 - Google Patents

사용자 프로파일 정보 관리 방법 및 시스템 Download PDF

Info

Publication number
KR20110029354A
KR20110029354A KR1020090086991A KR20090086991A KR20110029354A KR 20110029354 A KR20110029354 A KR 20110029354A KR 1020090086991 A KR1020090086991 A KR 1020090086991A KR 20090086991 A KR20090086991 A KR 20090086991A KR 20110029354 A KR20110029354 A KR 20110029354A
Authority
KR
South Korea
Prior art keywords
profile
client
information
user profile
rule
Prior art date
Application number
KR1020090086991A
Other languages
English (en)
Inventor
김경원
다히야 라쟌
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020090086991A priority Critical patent/KR20110029354A/ko
Publication of KR20110029354A publication Critical patent/KR20110029354A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 사용자 프로파일 정보 관리 방법 및 시스템에 관한 것이다. 본 발명의 실시예에 따른 사용자 프로파일 정보 관리 방법은 제1클라이언트가 사용자 프로파일 정보 및 사용자 프로파일 정보를 공유하는 규칙에 해당하는 프로파일 규칙 정보를 공유 프로파일 서버에 등록하는 등록 단계와; 제2클라이언트가 공유 프로파일 서버로 사용자 프로파일 정보를 요청하는 요청 단계와; 공유 프로파일 서버가 등록된 프로파일 규칙 정보에 부합하는 사용자 프로파일 정보를 선별하는 선별 단계와; 선별된 사용자 프로파일 정보를 제2클라이언트로 전송하는 전송 단계를 포함하는 것을 특징으로 한다. 본 발명을 통해 공유 프로파일 서버에 프로파일 정보를 등록한 사용자의 프라이버시가 보호될 수 있다.
사용자 프로파일(user profile), XDM(XML-based Document Management), Shared Profile XDMS

Description

사용자 프로파일 정보 관리 방법 및 시스템{METHOD AND SYSTEM FOR MANAGING USER PROFILE INFORMATION}
본 발명은 사용자 프로파일 정보 관리 방법 및 시스템에 관한 것으로서, 특히 OMA(Open Mobile Alliance)가 제안하는 Shared Profile XDMS(XML-based Document Management Server)의 사용자 프로파일 정보 관리 방법 및 시스템에 관한 것이다.
OMA(Open Mobile Alliance)가 제안하는 Shared Profile XDM(XML-based Document Management) specification에서 Shared Profile XDMS(XDM Server)는 사용자들의 프로파일 정보들을 등록하고 관리하는 서버에 해당한다. 사용자는 자신이 공개하고자 하는 프로파일 정보들을 Shared Profile XDMS에 등록시키며, Shared Profile XDMS는 이를 요청하는 사용자들에게 제공한다. 그러나 현재 Shared Profile XDMS는 가입자로서 인증만 된다면 등록된 사용자의 프로파일 정보들을 누구에게나 공개하기 때문에 프로파일 정보를 등록한 사용자의 프라이버시(privacy)가 침해되는 문제가 발생하게 되었다.
본 발명의 목적은 Shared Profile XDMS에 프로파일 정보를 등록한 사용자의 프라이버시를 보호할 수 있는 사용자 프로파일 정보 관리 방법과 시스템을 제공하는데 있다.
본 발명의 실시예에 따른 사용자 프로파일 정보 관리 방법은 제1클라이언트가 사용자 프로파일 정보 및 사용자 프로파일 정보를 공유하는 규칙에 해당하는 프로파일 규칙 정보를 공유 프로파일 서버에 등록하는 등록 단계와; 제2클라이언트가 공유 프로파일 서버로 사용자 프로파일 정보를 요청하는 요청 단계와; 공유 프로파일 서버가 등록된 프로파일 규칙 정보에 부합하는 사용자 프로파일 정보를 선별하는 선별 단계와; 선별된 사용자 프로파일 정보를 제2클라이언트로 전송하는 전송 단계를 포함하는 것을 특징으로 한다.
본 발명의 실시예에 따른 사용자 프로파일 정보 관리 시스템은 사용자 프로파일 정보 및 사용자 프로파일 정보를 공유하는 규칙에 해당하는 프로파일 규칙 정보를 공유 프로파일 서버에 등록하는 제1클라이언트와; 공유 프로파일 서버에 사용자 프로파일 정보를 요청하는 제2클라이언트와; 제1클라이언트로부터 사용자 프로파일 정보 및 프로파일 규칙 정보를 수신하여 등록하고, 제2클라이언트로부터 사용자 프로파일 정보의 요청을 수신하며, 등록한 프로파일 규칙 정보에 부합하는 사용자 프로파일 정보를 선별하고, 선별된 사용자 프로파일 정보를 제2클라이언트로 전 송하는 공유 프로파일 서버를 포함하는 것을 특징으로 한다.
본 발명을 통해 Shared Profile XDMS에 프로파일 정보를 등록한 사용자의 프라이버시가 보호될 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예들을 상세히 설명한다. 이 때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음에 유의해야 한다. 또한 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다.
도 1은 본 발명의 실시예에 따른 사용자 프로파일 정보 관리 시스템의 구성도에 해당한다. 사용자 프로파일 정보 관리 시스템은 제1클라이언트(110), 제2클라이언트(120), 어그리게이션 프록시(Aggregation Proxy)(130), 서치 프록시(Search Proxy)(140) 및 Shared Profile XDMS(150)를 포함한다.
제1클라이언트(110)는 Shared Profile XDMS(150)에 프로파일에 관한 정보(이하 '사용자 프로파일'이라고 한다)를 등록하는 사용자 기기(단말기)에 해당한다. 제2클라이언트(120)는 제1클라이언트(110)를 식별하는 정보를 통해 제1클라이언트(110)의 사용자 프로파일을 Shared Profile XDMS(150)에 요청하거나 검색어를 통해 사용자 프로파일을 Shared Profile XDMS(150)에 요청하는 사용자 기기(단말기)에 해당한다. 본 발명의 실시예에 따른 제1클라이언트(110) 및 제2클라이언트(120)는 XDMC(XML-based Document Management Client)에 해당한다.
제1클라이언트(110)는 Shared Profile XDMS(150)에 등록할 사용자 프로파일 및 사용자 프로파일 정보를 공유하는 규칙에 관한 정보(이하 '프로파일 규칙(profile rule)'이라고 한다)를 설정하는 프로그램을 저장하며, 설정된 사용자 프로파일 및 프로파일 규칙을 포함하는 메시지를 작성하여 Shared Profile XDMS(150)에 전송한다.
제2클라이언트(120)는 Shared Profile XDMS(150)에 사용자 프로파일을 요청하는 프로그램을 저장하며, 사용자 프로파일 요청 정보를 포함하는 메시지를 작성하여 Shared Profile XDMS(150)에 전송한다. 또한 제2클라이언트(120)는 요청한 사용자 프로파일을 Shared Profile XDMS(150)로부터 수신한다.
본 발명의 실시예에 따라 제2클라이언트(120)가 Shared Profile XDMS(150)에 사용자 프로파일 및 프로파일 규칙을 등록하며, 제1클라이언트(110)가 Shared Profile XDMS(150)에 사용자 프로파일의 제공을 요청할 수 있다. 이 경우, 제1클라이언트(110)는 상기 제2클라이언트(120)의 구성을 포함하며, 제2클라이언트(120)는 상기 제1클라이언트(110)의 구성을 포함하게 된다. 또한 도 1은 제1클라이언트(110) 및 제2클라이언트(120)만을 도시하고 있지만, 이에 한정되는 것은 아니며 3개 이상의 클라이언트들이 본 발명의 사용자 프로파일 정보 관리 시스템에 포함될 수 있다.
어그리게이션 프록시(Aggregation Proxy)(130)는 제1클라이언트(110) 및 제2클라이언트(120)가 Shared Profile XDMS(150)에 등록된 사용자 프로파일에 접근하도록 매개하는 서버에 해당한다. 어그리게이션 프록시(130)는 제1클라이언트(110) 및 제2클라이언트(120)의 XCAP 요청(XML Configuration Access Protocol request)을 Shared Profile XDMS(150)에 전송한다. 또한 어그리게이션 프록시(130)는 제2클라이언트(120)의 검색 요청(Search request)을 서치 프록시(Search Proxy)(140)에 전송한다. 또한 어그리게이션 프록시(130)는 압축(compression) 또는 압축 풀기(decompression)를 수행할 수 있다. 어그리게이션 프록시(130)는 제1클라이언트(110) 및 제2클라이언트(120)와 Shared Profile XDMS(150)와의 데이터 전송을 매개하는 역할을 수행하기 때문에, 시스템 구성에 따라 어그리게이션 프록시(130)는 생략될 수 있다.
서치 프록시(Search Proxy)(140)는 제2클라이언트(120)의 검색 요청을 Shared Profile XDMS(150)에 전송하는 서버에 해당한다. 구체적으로 서치 프록시(140)는 제2클라이언트(120)의 검색 요청을 어그리게이션 프록시(130)로부터 전달받는다. 서치 프록시(140)는 Shared Profile XDMS(150)으로부터 검색 요청에 대한 응답을 수신한다. 본 발명의 실시예에 따라 서치 프록시(140)가 Shared Profile XDMS(150) 이외의 복수의 XDMS들로부터 검색 요청에 대한 응답들을 수신하는 경우, 서치 프록시(140)는 수신한 검색 요청에 대한 응답들을 결합할 수 있다. 서치 프록시(140)는 검색 요청에 대한 응답을 제2클라이언트(120)에 송신한다. 서치 프록시(140)는 제2클라이언트(120)가 검색 요청을 할 때만 동작하게 되며, 시스템 구성에 따라 서치 프록시(140)는 생략될 수 있다.
Shared Profile XDMS(150)는 사용자 프로파일을 관리하고 제공하는 '공유 프로파일 서버'에 해당한다. OMA 표준에서 제안하는 XDM 구조(XML-based Document Management Architecture)는 복수의 Shared XDMS들을 포함하며, Shared Profile XDMS(150)는 상기 XDM 구조에 포함되는 복수의 Shared XDMS들 중의 어느 하나에 해당한다. '사용자 프로파일'은 XML document 형태로 구성되며, OMA 표준의 'User Profile XML document'에 해당할 수 있다.
본 발명의 실시예에 따른 Shared Profile XDMS(150)는 프로파일 관리부(151) 및 프로파일 규칙 관리부(152)를 포함한다. 프로파일 관리부(151)는 사용자 프로파일을 관리하며, 제2클라이언트(120)의 사용자 프로파일 제공 요청에 대한 응답을 제2클라이언트(120)로 전송한다. 제2클라이언트(120)의 사용자 프로파일 제공 요청은 실시예에 따라 접근 요청(access request)과 검색 요청(search request)으로 구분될 수 있다. 프로파일 관리부(151)는 제2클라이언트(120)로부터 사용자 프로파일 제공 요청을 수신하면 이를 프로파일 규칙 관리부(152)로 전송한다. 프로파일 관리부(151)는 프로파일 규칙 관리부(152)로부터 프로파일 선별 규칙을 수신하고 수신한 프로파일 선별 규칙에 따라 사용자 프로파일을 선별하여 응답 메시지를 작성하고, 작성한 응답 메시지를 제2클라이언트(120)로 전송한다. 본 발명의 실시예에 따라 프로파일 관리부(151)는 어그리게이션 프록시(130)를 통해 제2클라이언트(120)로 사용자 프로파일을 송신하며, 실시예에 따라 어그리게이션 프록시(130) 및 서치 프록시(140)를 통해 제2클라이언트(120)로 사용자 프로파일을 전송할 수 있다.
프로파일 규칙 관리부(152)는 프로파일 규칙을 저장하고 관리한다. 프로파일 규칙은 제1클라이언트(110)의 사용자 프로파일의 공유 권한을 갖는 클라이언트 정보, 공유가 허용된 사용자 프로파일을 선별하는 선별 규칙 정보 및 선별 규칙 정보 의 적용 여부에 관한 정보를 포함한다. 프로파일 규칙 관리부(152)는 프로파일 관리부(151)로부터 사용자 프로파일 제공 요청을 수신하며, 제2클라이언트(120)가 사용자 프로파일의 공유 권한을 갖는지 판단하고, 공유가 허용된 사용자 프로파일을 선별하는 선별 규칙 정보를 적용할지 여부를 판단하고, 적용하는 경우 선별 규칙 정보를 프로파일 관리부(151)로 전송한다. 프로파일 관리부(151)는 프로파일 규칙 관리부(152)로부터 선별 규칙 정보를 수신하며, 수신한 선별 규칙 정보에 따라 사용자 프로파일을 선별한 후 제2클라이언트(120)로 전송한다.
본 발명의 실시예에 따라 사용자 프로파일을 저장하는 데이터베이스(DB)와 프로파일 규칙을 저장하는 데이터베이스는 하나의 저장 매체로 구성될 수 있으며 분리된 형태로 구성될 수도 있다. 데이터베이스는 Shared Profile XDMS(150)에 포함되거나 Shared Profile XDMS(150)의 외부에 위치하는 형태로 구성될 수 있다. 사용자 프로파일을 저장하는 데이터베이스와 프로파일 규칙을 저장하는 데이터베이스가 분리된 경우, 상기 데이터베이스들은 각각 프로파일 관리부(151) 및 프로파일 규칙 관리부(152)에 포함되는 형태로 구성될 수 있으며, 외부에 연결된 형태로 구성될 수도 있다.
도 2는 본 발명의 실시예에 따른 제1클라이언트(110)가 Shared Profile XDMS(150)에 사용자 프로파일 및 프로파일 규칙을 등록하는 과정을 나타내는 순서도이다.
제1클라이언트(110)는 201단계에서 사용자 프로파일 등록 요청 메시지를 어그리게이션 프록시(130)로 송신하며, 어그리게이션 프록시(130)는 202단계에서 수 신한 사용자 프로파일 등록 요청 메시지를 Shared Profile XDMS(150)의 프로파일 관리부(151)로 송신한다. 본 발명의 실시예에 따른 사용자 프로파일 등록 요청 메시지는 XCAP(XML Configuration Access Protocol) 기반의 HTTP PUT 메시지에 해당한다. XCAP은 XCAP 클라이언트가 특정 어플리케이션을 위한 사용자 설정 정보를 XCAP 서버에 등록해 두고, XCAP 서버에 등록된 정보를 관리하기 위한 기술을 의미한다. XCAP 서버에 저장되는 사용자 정보는 XML로 기술되어 있으며, XCAP 클라이언트에서 XCAP 서버로 접근하기 위한 프로토콜로는 HTTP(HyperText Transfer Protocol)를 사용한다. HTTP에는 GET, POST, PUT, DELETE 등의 메소드(method)가 포함된다. 본 발명에서 제1클라이언트(110)는 XCAP 클라이언트에 해당하고 Shared Profile XDMS(150)는 XCAP 서버에 해당하며, 제1클라이언트(110)는 Shared Profile XDMS(150)에 접근하기 위해 PUT 메소드(HTTP PUT)를 사용하게 된다.
본 발명에서 제1클라이언트(110)가 201단계에서 프로파일 관리부(151)로 송신하는 HTTP PUT 메시지의 AUID(Application Unique ID)는 'user-profile'에 해당한다. 여기서 'AUID'는 어플리케이션을 구분하는 식별자를 의미한다. 표 1은 제1클라이언트(110)가 프로파일 관리부(151)로 송신하는 사용자 프로파일 등록 요청 메시지 포맷의 예시를 나타낸다.
[표 1]
<?xml version="1.0" encoding="UTF-8"?>
<user-profile xmlns="urn:oma:xml:xdm:user-profile">
<user-profile uri="sip:alice@xyz.com">
<communication-addresses>
<comm-addr>+1 858 623 0743</comm-addr>
<comm-addr>asmith@omaorg.org</comm-addr>
<comm-addr>sip:alice@example.com</comm-addr>
</communication-addresses>
<display-name xml:lang="en">Alice</display-name>
<birth-date>1995-05-20</birth-date>
<name xml:lang="en">
<given-name>Alice</given-name>
<family-name>Smith</family-name>
<middle-name>Pamela</middle-name>
<name-suffix></name-suffix>
<name-prefix></name-prefix>
</name>
<gender>female</gender>
<freetext xml:lang="en">I'm an OMA freak</freetext>
<communication-types>
<comm-type xml:lang="en">Push to talk</comm-type>
<comm-type xml:lang="en">Instant messaging</comm-type>
</communication-types>
<hobbies>
<hobby xml:lang="en">Butterfly collecting</hobby>
<hobby xml:lang="en">Bird watching</hobby>
</hobbies>
<favourite-links>
<link>http://www.openmobilealliance.org/</link>
<link>http://ietf.org</link>
</favourite-links>
</user-profile>
</user-profile>
표 1에서 확인할 수 있는 바와 같이, 사용자 프로파일 등록 요청 메시지 포맷에서 <user profile>은 정보의 출처를 나타내는 <uri>(URI(Uniform Resource Identifier))를 비롯하여, <communication-addresses>, <display-name>, <birth-date>, <name>, <gender>, <freetext>, <communication-types>, <hobbies>, <favourite-links> 등의 엘리먼트(element)들을 포함한다. <name>은 <given-name>, <family-name>, <middle-name>, <name-suffix>, <name-prefix>의 하위 엘리먼트들 을 포함할 수 있으며, <address>는 <country>, <region>, <locality>, <area>, <street-name>, <street-number>의 하위 엘리먼트들을 포함할 수 있다. 표 1을 참조할 때, 제1클라이언트(110)의 URI는 'alice@xyz.com'에 해당하며, 제1클라이언트(110)는 상기 엘리먼트들로 구성되는 사용자 프로파일을 포함하는 사용자 프로파일 등록 요청 메시지를 작성하여 프로파일 관리부(151)로 전송한다.
프로파일 관리부(151)는 수신한 사용자 프로파일을 제1클라이언트(110)에 대응시켜 저장하며, 203단계에서 새로운 사용자 프로파일이 저장되었음을 알리는 확인 메시지를 어그리게이션 프록시(130)로 전송한다. 어그리게이션 프록시(130)는 204단계에서 수신한 확인 메시지를 제1클라이언트(110)로 전송한다. 203단계 및 204단계에서 전송되는 확인 메시지는 HTTP 200OK 형식의 메시지에 해당한다.
확인 메시지를 수신한 제1클라이언트(110)는 205단계에서 프로파일 규칙 등록 요청 메시지를 어그리게이션 프록시(130)로 전송하며, 어그리게이션 프록시(130)는 206단계에서 프로파일 규칙 등록 요청 메시지를 프로파일 규칙 관리부(152)로 전송한다. 프로파일 규칙 등록 요청 메시지는 XCAP 기반의 HTTP PUT 메시지에 해당하며, HTTP PUT 메시지의 AUID는 'profile-rules'에 해당한다. 표 2는 제1클라이언트(110)가 프로파일 규칙 관리부(152)로 송신하는 사용자 프로파일 등록 요청 메시지 포맷의 예시를 나타낸다.
[표 2]
<?xml version="1.0" encoding="UTF-8"?>
<cr:ruleset xmlns="urn:ietf:params:xml:ns:profile-rules"
xmlns:cr="urn:ietf:params:xml:ns:common-policy"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:new="urn:vendor-specific:foo-namespace">
<cr:rule id="1">
<cr:conditions>
<cr:identity>
<cr:id entity="user@example.com"/>
</cr:conditions>
<cr:actions>
<access-handling>allow</access-handling>
<search-handling>allow</search-handling>
</cr:actions>
<apply-rules>
<provide-communication-addresses>false</provide-communication-addresses>
<provide-display-name>true</provide-display-name>
.
.
.
</apply-rules>
</cr:rule>
</cr:ruleset>
표 2에서 확인할 수 있는 바와 같이 프로파일 규칙 등록 요청 메시지(AUID=profile-rules)는 <ruleset>을 포함하며, 상기 <ruleset>은 복수의 <rule id>를 포함할 수 있다. <rule id>는 <conditions>(공유 권한 부여 범위), <actions>(공유 허용 여부) 및 <apply-rules>(공유가 허용된 정보 종류)를 설정할 수 있다.
공유 권한 부여 범위에 해당하는 <conditions>은 제1클라이언트(110)가 특정 클라이언트에게 사용자 프로파일을 공유할 것인지(User id), 특정 도메인의 클라이언트에게 사용자 프로파일을 공유할 것인지(Domain), 익명의 클라이언트에게 사용자 프로파일을 공유할 것인지(Anonymity), 어그리게이션 프록시(aggregation proxy)에 의해 인증된 모든 클라이언트에게 사용자 프로파일을 공유할 것인지 여부 를 설정한다. 즉, <conditions>은 제1클라이언트(110)의 사용자 프로파일의 공유 권한을 갖는 클라이언트 정보를 설정한다. 표 2에는 'user@example.com'의 ID를 갖는 클라이언트에게 사용자 프로파일의 공유 권한을 부여하는 것으로 설정되어 있다.
공유 허용 여부에 해당하는 <actions>은 제2클라이언트(120)의 접근(access) 요청 또는 검색(search) 요청에 대해 제1클라이언트(110)의 사용자 프로파일의 공유를 허용할 것인지 여부(allow/block)를 설정한다. 이는 <apply-rules>에 설정된 규칙을 적용할 것인지 여부를 설정하는 것에 해당한다. 접근 요청과 검색 요청에 대한 사용자 프로파일 공유가 모두 허용(allow)으로 설정되면, Shared Profile XDMS(150)는 제2클라이언트(120)의 접근 요청과 검색 요청 모두에 대해 <apply-rules>를 적용하여 제1클라이언트(110)의 사용자 프로파일을 제2클라이언트(120)에게 전송한다. 접근 요청에 대한 사용자 프로파일 공유가 허용(allow)이고 검색 요청에 대한 사용자 프로파일 공유가 제한(block)으로 설정되면, Shared Profile XDMS(150)는 제2클라이언트(120)의 접근 요청에 대해서만 <apply-rules>를 적용하여 제1클라이언트(110)의 사용자 프로파일을 제2클라이언트(120)에게 전송한다. 접근 요청과 검색 요청에 대한 사용자 프로파일 공유가 모두 제한(block)으로 설정되면, Shared Profile XDMS(150)는 제2클라이언트(120)의 접근 요청 또는 검색 요청 어느 경우에 대해서도 <apply-rules>를 적용하지 않으며, 제1클라이언트(110)의 사용자 프로파일을 제2클라이언트(120)로 전송하지 않는다. 표 2에는 접근 요청과 검색 요청에 대한 사용자 프로파일 공유가 모두 허용(allow)으로 설정되어 있 다.(<access-handling> 및 <search-handling>가 'allow'로 설정)
공유가 허용된 정보 종류에 해당하는 <apply-rules>는 접근 요청 또는 검색 요청에 대한 응답에 포함시킬 정보 종류를 설정한다. 즉, <apply-rules>는 사용자 프로파일을 구성하는 복수개의 엘리먼트들 중 공유가 허용되는 엘리먼트와 공유가 제한되는 엘리먼트에 관한 정보를 설정한다. 제1클라이언트(110)는 공개를 허용하는 엘리먼트에는 'true'를 설정하며, 공개를 제한하는 엘리먼트에는 'false'를 설정한다. 표 2에는 사용자 프로파일을 구성하는 복수개의 엘리먼트들에 'true' 또는 'false'가 설정되어 있으며, <communication-addresses>은 'false'로 <display-name>은 'true'로 설정되어 있으며, 이외의 엘리먼트들에 대해서도 'true' 또는 'false'가 설정되어 있다.
프로파일 규칙 관리부(152)는 수신한 프로파일 규칙을 저장하며, 207단계에서 새로운 프로파일 규칙이 저장되었음을 알리는 확인 메시지를 어그리게이션 프록시(130)로 전송한다. 어그리게이션 프록시(130)는 208단계에서 확인 메시지를 제1클라이언트(110)로 전송한다. 207단계 및 208단계에서 전송되는 확인 메시지는 HTTP 200OK 형식의 메시지에 해당한다.
상기 과정을 통해 프로파일 관리부(151)에는 제1클라이언트(110)의 사용자 프로파일이 저장되며, 프로파일 규칙 관리부(152)에는 제1클라이언트(110)의 프로파일 규칙이 저장된다.
도 3은 본 발명의 실시예에 따른 제2클라이언트(120)가 Shared Profile XDMS(150)에 제1클라이언트(110)의 사용자 프로파일로의 접근을 요청하며, 이에 대 한 응답을 수신하는 과정을 나타내는 순서도이다. 본 발명에서 '접근 요청(access request)'은 제2클라이언트(120)가 제1클라이언트(110)의 식별자(예를 들어, URI)를 통해 제1클라이언트(110)의 사용자 프로파일의 제공을 요청하는 과정에 해당한다.
제1클라이언트(110)와 관련하여 프로파일 관리부(151)에는 표 1에 해당하는 사용자 프로파일이 저장되어 있으며, 프로파일 규칙 관리부(152)에는 아래의 표 3에 해당하는 프로파일 규칙이 저장되어 있는 것으로 가정한다.
[표 3]
<?xml version="1.0" encoding="UTF-8"?>
<cr:ruleset xmlns="urn:ietf:params:xml:ns:shared-profile-rules"
xmlns:cr="urn:ietf:params:xml:ns:common-policy"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:new="urn:vendor-specific:foo-namespace">
<cr:rule id="1">
<cr:conditions>
<cr:identity>
<cr:id entity="bob@example.com"/>
</cr:identity>
</cr:conditions>
<cr:actions>
<access-handling>allow</access-handling>
<search-handling>block</search-handling>
</cr:actions>
<apply-rules>
<provide-profile>
<user-profile uri="sip:aice@xyz.com/>
</provide-profile>
<provide-communication-address>false</provide-communication-address>
</apply-rules>
</cr:rule>
</cr:ruleset>
제2 클라이언트(120)는 301단계에서 사용자 프로파일 접근 요청 메시지를 어그리게이션 프록시(130)에 전송하며, 어그리게이션 프록시(130)는 302단계에서 사용자 프로파일 접근 요청 메시지를 Shared Profile XDMS(150)의 프로파일 관리부(151)로 전송한다. 본 발명의 실시예에 따른 사용자 프로파일 접근 요청 메시지는 XCAP기반의 HTTP GET 메시지 또는 HTTP POST 메시지에 해당할 수 있다. 표 4는 제2클라이언트(120)가 프로파일 관리부(151)로 송신하는 사용자 프로파일 접근 요청 메시지의 포맷의 예시를 나타낸다.
[표 4]
GET /org.openmobilealliance.user-profile/users/sip:alice@xyz.com/user-profile HTTP/1.1
Host: xcap.example.com
User-Agent: XDM-client/OMA2.0
Date: Thu, 10 Aug 2007 10:50:34 GMT
Authorization: Digest realm="xcap.example.com", nonce="47364c23432d2e131a5fb210812c",
username="sip:bob@example.com, qop=auth-int,
uri="/org.openmobilealliance.user-profile/users/sip:alice@xyz.com/user-profile",
response="2c8ee200cec7f6e966c932a9242554e4", cnonce="dcd99agsfgfsa8b7102dd2f0e8b1", nc=00000001
X-3GPP-Intended-Identity: "sip:bob@example.com"
Accept-Encoding: gzip
표 4를 참조할 때 제2클라이언트(120)의 URI는 'sip:bob@example.com'에 해당하며, 제2클라이언트(120)가 원하는 사용자 프로파일을 등록한 제1클라이언트(110)의 URI는 'sip:alice@xyz.com'에 해당한다.
프로파일 관리부(151)는 303단계에서 프로파일 규칙 관리부(152)로 사용자 프로파일 접근 요청 메시지를 전송한다. 304단계에서 프로파일 규칙 관리부(152)는 제2클라이언트(120)가 제1클라이언트(110)의 사용자 프로파일의 공유 권한을 갖는 클라이언트인지 판단한다. 표 3 및 표 4를 예를 들어 설명하면, 프로파일 규칙 관리부(152)는 표 4를 통해 제2클라이언트(120)의 URI가 'sip:bob@example.com'임을 확인하고, 표 3의 <conditions>를 통해 'sip:bob@example.com'(제2클라이언 트(120))이 사용자 프로파일의 공유 권한을 갖는 클라이언트임을 확인한다. 프로파일 규칙 관리부(152)는 제2클라이언트(120)가 공유 권한을 갖는 클라이언트임을 확인하면 305단계로 진행하며, 제2클라이언트(120)가 공유 권한을 갖지 않은 클라이언트임을 확인하면 305단계로 진행하지 않으며, 사용자 프로파일을 제공할 수 없음을 알리는 메시지를 프로파일 관리부(151)로 전송한다. 프로파일 관리부(151)는 사용자 프로파일을 제공할 수 없음을 알리는 메시지를 어그리게이션 프록시(130)를 통해 제2클라이언트(120)로 전송한다.
305단계에서 프로파일 규칙 관리부(152)는 사용자 프로파일로의 접근이 허용되는지 판단한다. 표 3을 예를 들어 설명하면, 프로파일 규칙 관리부(152)는 <actions>를 통해 제1클라이언트(110)의 사용자 프로파일로의 접근이 허용되는지 판단한다. 표 3에는 <actions>에서 <access-handling>이 'allow'로 설정되어 있으며, 프로파일 규칙 관리부(152)는 제1클라이언트(110)의 사용자 프로파일로의 접근이 허용된 것으로 판단하고 306단계로 진행한다. 표 3의 <actions>의 <access-handling>이 'block'으로 설정되어 있으면, 프로파일 규칙 관리부(152)는 사용자 프로파일로의 접근이 허용되지 않은 것으로 판단하며, 306단계로 진행하지 않고 사용자 프로파일을 제공할 수 없음을 알리는 메시지를 프로파일 관리부(151)로 전송한다. 프로파일 관리부(151)는 HTTP 403 FORBIDDEN을 포함하는 메시지를 어그리게이션 프록시(130)를 통해 제2클라이언트(120)로 전송한다. 표 5는 표 3의 <actions>의 <access-handling>이 'block'으로 설정된 경우 프로파일 관리부(151)가 제2클라이언트(120)로 전송하는 메시지의 포맷의 예시에 해당한다.
[표 5]
HTTP/1.1 403 FORBIDDEN
Etag: "et53"
...
306단계에서 프로파일 규칙 관리부(152)는 설정된 프로파일 선별 규칙을 확인한다. 프로파일 선별 규칙은 등록된 사용자 프로파일을 구성하는 복수의 엘리먼트들 중 공유가 허용된 엘리먼트들을 선별하는 규칙에 해당한다. 표 3을 예를 들어 설명하면, 프로파일 규칙 관리부(152)는 <apply-rules>를 통해 프로파일 선별 규칙을 확인한다. 표 3의 <apply-rules>는 URI가 'sip:alice@xyz.com'에 해당하는 사용자 프로파일을 제공하며 <communication-address>의 엘리먼트는 제공하지 않는 규칙(<provide-communication-address>가 'false'로 설정)으로 설정되어 있다. 프로파일 규칙 관리부(152)는 307단계에서 확인된 프로파일 선별 규칙을 프로파일 관리부(151)로 전송한다. 프로파일 규칙 관리부(152)는 HTTP 200OK 형식의 메시지로 프로파일 선별 규칙을 프로파일 관리부(151)로 전송한다.
308단계에서 프로파일 관리부(151)는 프로파일 규칙 관리부(152)로부터 수신한 프로파일 선별 규칙에 따라 응답 메시지를 작성한다. 표 1 및 표 3을 예를 들어 설명하면, 프로파일 관리부(151)는 표 1과 같이 저장된 사용자 프로파일 중에서 프로파일 규칙 관리부(152)로부터 수신한 프로파일 선별 규칙에 적합한 엘리먼트만을 선별하여 응답 메시지를 작성한다. 표 3의 <communication-address>가 'false'로 설정되어 있기 때문에 프로파일 관리부(151)는 <communication-address>를 제외한 나머지 엘리먼트들로 사용자 프로파일을 구성하여 응답 메시지를 작성한다.
309단계에서 프로파일 관리부(151)는 작성한 응답 메시지를 어그리게이션 프록시(130)로 전송하며, 어그리게이션 프록시(130)는 310단계에서 응답 메시지를 제2클라이언트(120)로 전송한다. 309단계 및 310단계에서 전송되는 응답 메시지는 HTTP 200OK 형식의 메시지에 해당한다. 표 6은 프로파일 관리부(151)가 제2클라이언트(120)로 전송하는 응답 메시지의 포맷의 예시를 나타낸다.
[표 6]
HTTP/1.1 200 OK
Etag: "et53"
...
Content-Type: application/vnd.oma.user-profile+xml
<?xml version="1.0" encoding="UTF-8"?>
<user-profiles xmlns="urn:oma:xml:xdm:user-profile">
<user-profile uri="sip:alice@xyz.com">
<display-name xml:lang="en">Alice</display-name>
<birth-date>1995-05-20</birth-date>
<name xml:lang="en">
<given-name>Alice</given-name>
<family-name>Smith</family-name>
<middle-name>Pamela</middle-name>
<name-suffix></name-suffix>
<name-prefix></name-prefix>
</name>
<gender>female</gender>
<freetext xml:lang="en">I'm an OMA freak</freetext>
<communication-types>
<comm-type xml:lang="en">Push to talk</comm-type>
<comm-type xml:lang="en">Instant messaging</comm-type>
</communication-types>
<hobbies>
<hobby xml:lang="en">Butterfly collecting</hobby>
<hobby xml:lang="en">Bird watching</hobby>
</hobbies>
<favourite-links>
<link>http://www.openmobilealliance.org/</link>
<link>http://ietf.org</link>
</favourite-links>
</user-profile>
</user-profiles>
표 6에는 <communication-address>를 제외한 엘리먼트들로 구성된 사용자 프 로파일이 개시되어 있다. 즉, 제2클라이언트(120)는 <communication-address>을 제외한 제1클라이언트(110)의 사용자 프로파일만을 제공받을 수 있다.
도 4는 본 발명의 실시예에 따른 제2클라이언트(120)가 Shared Profile XDMS(150)에 사용자 프로파일의 검색을 요청하며, 이에 대한 응답을 수신하는 과정을 나타내는 순서도이다. 본 발명에서 '검색 요청(search request)'은 제2클라이언트(120)가 소정의 검색어(예를 들어, 사용자 프로파일을 구성하는 엘리먼트)를 통해 검색어에 부합하는 사용자 프로파일의 제공을 요청하는 과정에 해당한다. 제1클라이언트(110)와 관련하여 프로파일 관리부(151)에는 표 1에 해당하는 사용자 프로파일이 저장되어 있으며, 프로파일 규칙 관리부(152)에는 아래의 표 7에 해당하는 프로파일 규칙이 저장되어 있는 것으로 가정한다.
[표 7]
<?xml version="1.0" encoding="UTF-8"?>
<cr:ruleset xmlns="urn:ietf:params:xml:ns:shared-profile-rules"
xmlns:cr="urn:ietf:params:xml:ns:common-policy"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:new="urn:vendor-specific:foo-namespace">
<cr:rule id="1">
<cr:conditions>
<cr:identity>
<cr:id entity="bob@example.com"/>
</cr:identity>
</cr:conditions>
<cr:actions>
<access-handling>block</access-handling>
<search-handling>allow</search-handling>
</cr:actions>
<apply-rules>
<provide-profile>
<user-profile uri="sip:aice@xyz.com"/>
</provide-profile>
<provide-communication-address>false</provide-communication-address>
<provide-hobby>true</provide-hobby>
</apply-rules>
</cr:rule>
</cr:ruleset>
제2클라이언트(120)는 401단계에서 사용자 프로파일 검색 요청 메시지를 어그리게이션 프록시(130)로 전송하며, 402단계에서 어그리게이션 프록시(130)는 사용자 프로파일 검색 요청 메시지를 서치 프록시(140)로 전송하며, 403단계에서 서치 프록시(140)는 사용자 프로파일 검색 요청 메시지를 Shared Profile XDMS(150)의 프로파일 관리부(151)로 전송한다. 본 발명의 실시예에 따른 사용자 프로파일 검색 요청 메시지는 XCAP기반의 HTTP POST 메시지 또는 HTTP GET 메시지에 해당할 수 있다. 표 8은 제2클라이언트(120)가 프로파일 관리부(151)로 송신하는 사용자 프로파일 검색 요청 메시지의 포맷의 예시를 나타낸다.
[표 8]
POST/org.openmobilealliance.search?target=org.openmobilealliance.user-profile/users/ HTTP/1.1
Host: xcap.example.com
User-Agent: XDM-client/OMA2.0
Date: Thu, 10 Aug 2007 11:50:33 GMT
X-3GPP-Intended-Identity: "sip:bob@example.com"
Accept-Encoding: gzip
Content-Type: application/vnd.oma.search+xml
Content-Length: …
<?xml version="1.0" encoding="UTF-8"?>
<search-set xmlns="urn:oma:xml:xdm:search">
<search id="1234">
<request>
<query>
<![CDATA[
xquery version "1.0";
declare default element namespace "urn:oma:xml:xdm:user-profile";
for $u in collection("org.openmobilealliance.user-profile/users/")/user-profiles/userprofile
where ($u/hobbies/hobby="Bird watching")
return <user-profile>{$u/@uri}{$u/communication-address}</user-profile>
]]>
</query>
</request>
</search>
</search-set>
표 8을 참조할 때 제2클라이언트(120)의 URI는 'sip:bob@example.com'에 해당하며, 검색어는 'Bird watching'에 해당하며, 제2클라이언트(120)가 요구하는 사용자 프로파일은 <uri> 및 <communication-address>에 해당한다.
프로파일 관리부(151)는 404단계에서 프로파일 규칙 관리부(152)로 사용자 프로파일 검색 요청 메시지를 전송한다. 405단계에서 프로파일 규칙 관리부(152)는 제2클라이언트(120)가 사용자 프로파일의 공유 권한을 갖는 클라이언트인지 판단한다. 프로파일 규칙 관리부(152)는 모든 클라이언트들의 프로파일 규칙을 확인하여 제2클라이언트(120)에게 사용자 프로파일의 공유 권한을 준 클라이언트들을 판단한다. 표 7은 제1클라이언트(110)의 프로파일 규칙에 해당하며, 프로파일 규칙 관리부(152)는 제2클라이언트(120)의 URI가 'sip:bob@example.com'임을 확인하고 표 7의 <conditions>를 통해 'sip:bob@example.com'(제2클라이언트(120))이 공유 권한을 갖는 클라이언트임을 확인한다. 프로파일 규칙 관리부(152)는 제1클라이언트 이외에도 제2클라이언트(120)에게 사용자 프로파일의 공유 권한을 준 클라이언트들을 판단한다. 프로파일 규칙 관리부(152)에 프로파일 규칙을 등록한 클라이언트들 중 제2클라이언트(120)에게 사용자 프로파일의 공유 권한을 준 클라이언트가 존재하지 않는 경우, 프로파일 규칙 관리부(152)는 사용자 프로파일을 제공할 수 없음을 알리는 메시지를 제2클라이언트(120)로 송신하게 된다.
406단계에서 프로파일 규칙 관리부(152)는 사용자 프로파일의 검색이 허용되는지 판단한다. 프로파일 규칙 관리부(152)는 제2클라이언트(120)에 사용자 프로파일 공유를 허용한 클라이언트들의 프로파일 규칙에 '검색 과정'이 허용(allow)으로 설정되어 있는지 제한(block)으로 설정되어 있는지 판단한다. 이는 <apply-rules>에 설정된 규칙을 적용할 것인지 여부를 판단하는 것에 해당한다. 표 7은 제1클라이언트(110)의 프로파일 규칙에 해당하며, 프로파일 규칙 관리부(152)는 표 7의 <actions>를 통해 사용자 프로파일의 검색이 허용되는지 판단한다. 표 7의 <actions>의 <search-handling>이 'allow'로 설정되어 있으며, 프로파일 규칙 관리부(152)는 제1클라이언트(110)의 사용자 프로파일로의 검색이 허용된 것으로 판단한다. 만약 <actions>에서 <search-handling>이 'block'으로 설정되어 있으면 프로파일 규칙 관리부(152)는 제1클라이언트(110)의 사용자 프로파일로의 검색이 허용되지 않은 것으로 판단한다. 프로파일 규칙 관리부(152)는 제2클라이언트(120)에 사용자 프로파일 공유를 허용한 클라이언트들 중 <search-handling>이 'allow'로 설정된 클라이언트들을 확인한다. 만약, 제2클라이언트(120)에 사용자 프로파일 공유를 허용한 클라이언트들의 <search-handling>이 전부 'block'으로 설정된 경우, 프로파일 규칙 관리부(152)는 사용자 프로파일을 제공할 수 없음을 알리는 메시지를 제2클라이언트(120)로 송신하게 된다.
407단계에서 프로파일 규칙 관리부(152)는 설정된 프로파일 선별 규칙을 확인한다. 구체적으로 프로파일 규칙 관리부(152)는 <search-handling>가 'allow'로 설정된 클라이언트들의 프로파일 선별 규칙을 확인한다. 프로파일 선별 규칙은 등록된 사용자 프로파일을 구성하는 복수의 엘리먼트들 중 공유가 허용된 엘리먼트들을 선별하는 규칙에 해당한다. 표 7은 제1클라이언트(110)의 프로파일 규칙에 해당하며, 프로파일 규칙 관리부(152)는 <apply-rules>를 통해 프로파일 선별 규칙을 확인한다. 표 7의 <apply-rules>는 URI가 'sip:alice@xyz.com'에 해당하는 사용자 프로파일을 제공하며, <communication-address>의 엘리먼트는 제공하지 않으며(<provide-communication-address>가 'false'로 설정), <hobby>의 엘리먼트는 제공하는 규칙(<bobby>가 'true'로 설정)으로 설정되어 있다. 이외에도 프로파일 규칙 관리부(152)는 <search-handling>가 'allow'로 설정된 다른 클라이언트들의 프로파일 선별 규칙들을 확인한다.
프로파일 규칙 관리부(152)는 408단계에서 확인된 프로파일 선별 규칙을 프로파일 관리부(151)로 전송한다. 프로파일 규칙 관리부(152)는 HTTP 200OK 형식의 메시지로 프로파일 선별 규칙을 프로파일 관리부(151)로 전송한다.
409단계에서 프로파일 관리부(151)는 프로파일 규칙 관리부(152)로부터 수신한 프로파일 선별 규칙에 따라 응답 메시지를 작성한다. 구체적으로 프로파일 관리부(151)는 <search-handling>가 'allow'로 설정된 클라이언트들에 대해 프로파일 선별 규칙에 따라 적합한 항목을 선별하여 응답 메시지를 작성하게 된다. 표 7의 프로파일 규칙에 URI="sip:alice@xyz.com"와 관련하여 <communication-address>가 'false'로 설정되어 있고, <hobby>가 'true'로 설정되어 있다. 제2클라이언트(120)가 전송한 사용자 프로파일 검색 요청 메시지에 <hobby="Bird watching">이 포함되어 있기 때문에 프로파일 관리부(151)는 제1클라이언트(110)와 관련해서 <hobby>가 'Bird watching'으로 저장되어 있는지 확인한다. 또한 제2클라이언트(120)는 <uri> 및 <communication-address>만을 요구하기 때문에 프로파일 관리부(151)는 <uri> 및 <communication-address>에서 'true'로 설정된 엘리먼트를 판단한 후, 'true'로 설정된 엘리먼트에 관한 데이터만으로 응답 메시지를 작성하게 된다.
410단계에서 프로파일 관리부(151)는 작성한 응답 메시지를 어그리게이션 프록시(130)로 전송하며, 411단계에서 어그리게이션 프록시(130)는 응답 메시지를 서치 프록시(140)로 전송하며, 412단계에서 서치 프록시(140)는 응답 메시지를 제2클라이언트(120)로 전송한다. 410단계, 411단계 및 412단계에서 전송되는 응답 메시지는 HTTP 200OK 형식의 메시지에 해당한다. 표 9는 프로파일 관리부(151)가 제2클라이언트(120)로 전송하는 응답 메시지의 포맷을 나타낸다.
[표 9]
HTTP/1.1 200 OK
Server: XDM-serv/OMA2.0
Date: Thu, 10 Aug 2007 11:50:39 GMT
Content-Type: application/vnd.oma.search+xml
Content-Length: (...)
<?xml version="1.0" encoding="UTF-8"?>
<search-set xmlns="urn:oma:xml:xdm:search" xmlns:up="urn:oma:xml:xdm:user-profile">
<search id="1234">
<response>
<up:user-profile uri="alice@xyz.com">
<up:user-profile uri="seth@example.com">
.
.
.
.
</up:userprofile>

</response>
</search>
</search-set>
표 9에는 제1클라이언트(110)의 <uri>("alice@xyz.com")만이 포함되어 있으며 <communication-address>는 포함되어 있지 않다. "seth@example.com"는 사용자 프로파일의 <hobby> 엘리먼트가 "Bird watching"으로 설정된 클라이언트들 중, <search-handling>가 'allow'로 설정되며 <uri>가 'true'로 설정된 클라이언트의 URI에 해당한다. 만일 URI가 "seth@example.com"인 클라이언트의 프로파일 규칙에 <communication-address>도 'true'로 설정되어 있는 경우, <up:user-profile uri="seth@example.com"> 이하로 "seth@example.com"의 <communication-address>의 정보들이 포함될 것이다.
만일 제1클라이언트(110)의 프로파일 규칙에서 <search-handling>가 'block'으로 설정된 경우에는 제1클라이언트(110)의 사용자 프로파일은 제2클라이언트(120)로 제공되지 않는다. 표 10은 제1클라이언트(110)의 프로파일 규칙에서 <search-handling>가 'block'으로 설정된 경우에 프로파일 관리부(151)가 제2클라이언트(120)로 전송하는 응답 메시지의 포맷의 예시를 나타낸다.
[표 10]
HTTP/1.1 200 OK
Server: XDM-serv/OMA2.0
Date: Thu, 10 Aug 2007 11:50:39 GMT
Content-Type: application/vnd.oma.search+xml
Content-Length: (...)
<?xml version="1.0" encoding="UTF-8"?>
<search-set xmlns="urn:oma:xml:xdm:search" xmlns:up="urn:oma:xml:xdm:user-profile">
<search id="1234">
<response>
<up:user-profile uri="seth@example.com>
.
.
.
.
</up:userprofile>
</response>
</search>
</search-set>
표 10에는 제1클라이언트(110)의 사용자 프로파일이 포함되어 있지 않으며, 제1클라이언트(110) 이외의 클라이언트의 사용자 프로파일(<up:user-profile uri="seth@example.com>)만이 포함되어 있다.
Shared profile XDMS(150)는 제2클라이언트(120)의 접근 요청(access request)과 검색 요청(search request)을 구분하여 처리한다. 예를 들어, 제1클라이언트(110)의 프로파일 규칙에 <access-handling>이 'allow'로 설정되며 <search-handling>이 'block'으로 설정된 경우, 제2클라이언트(120)가 Shared profile XDMS(150)로 접근 요청을 한 경우에 Shared profile XDMS(150)는 제1클라이언트(110)의 프로파일 규칙에 설정된 <apply-rules>에 부합하는 사용자 프로파일을 제2클라이언트(120)에게 제공하지만 제2클라이언트(120)가 Shared profile XDMS(150)로 검색 요청을 한 경우에는 Shared profile XDMS(150)는 제1클라이언트(110)의 사용자 프로파일을 제2클라이언트(120)에게 제공하지 않는다.
본 발명에 따르면 사용자 프로파일을 등록한 클라이언트는 사용자 프로파일을 다른 클라이언트에 제공하는 규칙을 설정하고 Shared profile XDMS(150)는 설정된 규칙에 따라 다른 클라이언트에게 등록된 사용자 프로파일을 제공함으로써 사용자 프로파일을 등록한 클라이언트의 프라이버시는 보호될 수 있다.
본 명세서와 도면에 개시 된 본 발명의 실시예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명 이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.
도 1은 본 발명의 실시예에 따른 사용자 프로파일 정보 관리 시스템의 구성도에 해당한다.
도 2는 본 발명의 실시예에 따른 제1클라이언트(110)가 Shared Profile XDMS(150)에 사용자 프로파일 및 프로파일 규칙을 등록하는 과정을 나타내는 순서도이다.
도 3은 본 발명의 실시예에 따른 제2클라이언트(120)가 Shared Profile XDMS(150)에 제1클라이언트(110)의 사용자 프로파일로의 접근을 요청하며, 이에 대한 응답을 수신하는 과정을 나타내는 순서도이다.
도 4는 본 발명의 실시예에 따른 제2클라이언트(120)가 Shared Profile XDMS(150)에 사용자 프로파일의 검색을 요청하며, 이에 대한 응답을 수신하는 과정을 나타내는 순서도이다.

Claims (12)

  1. 사용자 프로파일 정보 관리 방법에 있어서,
    제1클라이언트가 사용자 프로파일 정보 및 상기 사용자 프로파일 정보를 공유하는 규칙에 해당하는 프로파일 규칙 정보를 공유 프로파일 서버에 등록하는 등록 단계와;
    제2클라이언트가 상기 공유 프로파일 서버로 사용자 프로파일 정보를 요청하는 요청 단계와;
    상기 공유 프로파일 서버가 상기 등록된 프로파일 규칙 정보에 부합하는 사용자 프로파일 정보를 선별하는 선별 단계; 및
    상기 선별된 사용자 프로파일 정보를 상기 제2클라이언트로 전송하는 전송 단계를 포함하는 것을 특징으로 하는 사용자 프로파일 정보 관리 방법.
  2. 제1항에 있어서,
    상기 등록 단계는
    상기 제1클라이언트가 상기 사용자 프로파일 정보를 상기 공유 프로파일 서버에 포함되는 프로파일 관리부에 등록하는 단계; 및
    상기 제1클라이언트가 상기 프로파일 규칙 정보를 상기 공유 프로파일 서버에 포함되는 프로파일 규칙 관리부에 등록하는 단계를 포함하는 것을 특징으로 하는 사용자 프로파일 정보 관리 방법.
  3. 제1항에 있어서,
    상기 프로파일 규칙 정보는
    상기 제1클라이언트의 사용자 프로파일 정보의 공유 권한을 갖는 클라이언트 정보, 상기 등록된 사용자 프로파일 정보 중 공유가 허용된 사용자 프로파일 정보를 선별하는 선별 규칙 정보 및 상기 선별 규칙 정보의 적용 여부에 관한 정보를 포함하는 것을 특징으로 하는 사용자 프로파일 정보 관리 방법.
  4. 제1항에 있어서,
    상기 요청 단계는
    상기 제2클라이언트가 상기 제1클라이언트를 식별하는 정보를 통해 상기 제1클라이언트의 사용자 프로파일 정보를 요청하는 것을 특징으로 하는 사용자 프로파일 정보 관리 방법.
  5. 제1항에 있어서,
    상기 요청 단계는
    상기 제2클라이언트가 상기 사용자 프로파일 정보를 구성하는 적어도 하나의 엘리먼트(element)로 구성되는 검색어를 통해 상기 검색어에 부합하는 사용자 프로파일 정보를 요청하는 것을 특징으로 하는 사용자 프로파일 정보 관리 방법.
  6. 제3항에 있어서,
    상기 선별 단계는
    상기 제2클라이언트가 상기 제1클라이언트의 사용자 프로파일 정보의 공유 권한을 갖는지 판단하는 단계;
    상기 선별 규칙 정보를 적용할지 여부를 판단하는 단계; 및
    상기 선별 규칙 정보를 적용하여 공유가 허용된 상기 제1클라이언트의 사용자 프로파일 정보를 선별하는 단계를 포함하는 것을 특징으로 하는 사용자 프로파일 정보 관리 방법.
  7. 사용자 프로파일 정보 관리 시스템에 있어서,
    사용자 프로파일 정보 및 상기 사용자 프로파일 정보를 공유하는 규칙에 해당하는 프로파일 규칙 정보를 공유 프로파일 서버에 등록하는 제1클라이언트와;
    상기 공유 프로파일 서버에 상기 사용자 프로파일 정보를 요청하는 제2클라이언트; 및
    상기 제1클라이언트로부터 상기 사용자 프로파일 정보 및 상기 프로파일 규칙 정보를 수신하여 등록하고, 상기 제2클라이언트로부터 상기 사용자 프로파일 정보의 요청을 수신하며, 상기 등록한 프로파일 규칙 정보에 부합하는 사용자 프로파일 정보를 선별하고, 선별된 사용자 프로파일 정보를 상기 제2클라이언트로 전송하는 공유 프로파일 서버를 포함하는 것을 특징으로 하는 사용자 프로파일 정보 관리 시스템.
  8. 제7항에 있어서,
    상기 공유 프로파일 서버는
    상기 사용자 프로파일 정보를 저장 및 관리하는 프로파일 관리부; 및
    상기 프로파일 규칙 정보를 저장 및 관리하는 프로파일 규칙 관리부를 포함하는 것을 특징으로 하는 사용자 프로파일 정보 관리 시스템.
  9. 제8항에 있어서,
    상기 프로파일 규칙 정보는
    상기 제1클라이언트의 사용자 프로파일 정보의 공유 권한을 갖는 클라이언트 정보, 공유가 허용된 사용자 프로파일 정보를 선별하는 선별 규칙 정보 및 상기 선별 규칙 정보의 적용 여부에 관한 정보를 포함하는 것을 특징으로 하는 사용자 프로파일 정보 관리 시스템.
  10. 제9항에 있어서,
    상기 프로파일 관리부는
    상기 제2클라이언트로부터 상기 사용자 프로파일 정보의 요청을 수신하고, 상기 수신된 요청을 상기 프로파일 규칙 관리부에 전송하고, 상기 프로파일 규칙 관리부로부터 공유가 허용된 사용자 프로파일 정보를 선별하는 선별 규칙 정보를 수신하면 이에 근거하여 사용자 프로파일 정보를 선별하는 것을 특징으로 하는 사 용자 프로파일 정보 관리 시스템.
  11. 제9항에 있어서,
    상기 프로파일 규칙 관리부는
    상기 프로파일 관리부로부터 상기 제2클라이언트의 사용자 프로파일 정보 요청을 수신하고, 상기 제2클라이언트가 상기 사용자 프로파일 정보의 공유 권한을 갖는지 판단하고, 공유가 허용된 사용자 프로파일 정보를 선별하는 선별 규칙 정보를 적용할지 여부를 판단하고, 상기 선별 규칙 정보를 상기 프로파일 관리부로 전송하는 것을 특징으로 하는 사용자 프로파일 정보 관리 시스템.
  12. 제7항에 있어서,
    상기 제2클라이언트는
    상기 제1클라이언트를 식별하는 정보 또는 사용자 프로파일 정보를 구성하는 적어도 하나의 하위 정보로 구성되는 검색어를 통해 공유 프로파일 서버에 상기 사용자 프로파일 정보를 요청하는 것을 특징으로 하는 사용자 프로파일 정보 관리 시스템.
KR1020090086991A 2009-09-15 2009-09-15 사용자 프로파일 정보 관리 방법 및 시스템 KR20110029354A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090086991A KR20110029354A (ko) 2009-09-15 2009-09-15 사용자 프로파일 정보 관리 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090086991A KR20110029354A (ko) 2009-09-15 2009-09-15 사용자 프로파일 정보 관리 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR20110029354A true KR20110029354A (ko) 2011-03-23

Family

ID=43935245

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090086991A KR20110029354A (ko) 2009-09-15 2009-09-15 사용자 프로파일 정보 관리 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR20110029354A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170045786A (ko) * 2015-10-19 2017-04-28 주식회사 케이티 개인정보 보호 서비스 제공 시스템 및 그 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170045786A (ko) * 2015-10-19 2017-04-28 주식회사 케이티 개인정보 보호 서비스 제공 시스템 및 그 방법

Similar Documents

Publication Publication Date Title
EP1983683B1 (en) A method and system for managing XML document
EP1968263B1 (en) A method and system for querying user information, and search agent, client and server
US8566109B2 (en) Common interest community service via presence messaging
EP2207305B1 (en) A method and a system for address book processing
EP2586171B1 (en) Method, server and system for granting temporary access to electronic content
US20090282005A1 (en) Sip network-based content sharing method and system
US7756952B2 (en) Method, system, server and unit for setting configuration information of a presentity client
US20070124294A1 (en) Search proxy device, communication system, and method for searching for information
RU2477014C2 (ru) Способ группового оповещения в службе обмена сообщениями на основе протокола инициации сеанса связи &#34;sip&#34;
US20080005119A1 (en) Remotely updating a user status on a presence server
US10051081B2 (en) Method and system for managing profiles
CN1859402B (zh) Xml文档管理系统及其方法与xml文档访问控制方法
US20110137817A1 (en) System and method for aggregating and disseminating personal data
CN101557409A (zh) 一种地址簿信息融合管理的方法及装置
CN102156758B (zh) 用于转发文档的可扩展标记语言文档管理系统方法
JP2009054086A (ja) 情報提供装置
Alliance XML Document Management (XDM) Specification
EP1862932B1 (en) Managing information in XML document management architecture
US20140082075A1 (en) Method for managing converged address book capability
KR20110029354A (ko) 사용자 프로파일 정보 관리 방법 및 시스템
Tschofenig et al. The IETF Geopriv and presence architecture focusing on location privacy
JP7119797B2 (ja) 情報処理装置及び情報処理プログラム
EP2273807A1 (en) Method, system, server and client for implementing relative condition evaluation
KR20120090612A (ko) 문서 공유에 따른 권한 설정 장치 및 방법
Waher XEP-0324: Internet of Things-Provisioning

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application