KR101560440B1 - 안전한 동적 권한 위임을 위한 방법 및 장치 - Google Patents

안전한 동적 권한 위임을 위한 방법 및 장치 Download PDF

Info

Publication number
KR101560440B1
KR101560440B1 KR1020127023776A KR20127023776A KR101560440B1 KR 101560440 B1 KR101560440 B1 KR 101560440B1 KR 1020127023776 A KR1020127023776 A KR 1020127023776A KR 20127023776 A KR20127023776 A KR 20127023776A KR 101560440 B1 KR101560440 B1 KR 101560440B1
Authority
KR
South Korea
Prior art keywords
resource
residence
owner
requester
requestor
Prior art date
Application number
KR1020127023776A
Other languages
English (en)
Other versions
KR20120128674A (ko
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 알까뗄 루슨트
Publication of KR20120128674A publication Critical patent/KR20120128674A/ko
Application granted granted Critical
Publication of KR101560440B1 publication Critical patent/KR101560440B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • G06F21/335User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2103Challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

제1 컴퓨팅 장치가 자원 소유자를 나타내고, 제2 컴퓨팅 장치가 자원 요청자를 나타내는 통신 네트워크에서, 자원 소유자는 이벤트 발생을 검출하고, 이벤트 발생은 자원 레지던스에 저장된 자원 소유자의 하나 이상의 자원을 액세스하려는 요청을 나타낸다. 자원 소유자는 이벤트 발생에 응답하여 자원 요청자에게로 권한부여 토큰을 송신하고, 권한부여 토큰은 자원 레지던스에 저장된 하나 이상의 자원에 대한 자원 요청자의 액세스를 허가하기 위하여 자원 요청자에 의해 자원 레지던스로 제공될, 자원 소유자에 의해 위임된 권한부여의 증거로서의 기능을 한다.

Description

안전한 동적 권한 위임을 위한 방법 및 장치{METHODS AND APPARATUS FOR SECURE DYNAMIC AUTHORITY DELEGATION}
본 발명은 일반적으로 통신 네트워크에 관한 것으로, 특히 보호 자원(protected resources)에 대한 자원 소유자 외의 엔티티의 액세스를 포함한 애플리케이션을 가능하게 하도록 권한(authority)의 안전한 동적 위임을 위해 통신 네트워크에 사용하기 위한 기법에 관한 것이다.
이 섹션은 본 발명을 보다 잘 이해하는데 도움이 되는 양상을 소개한다. 따라서 이 섹션의 진술은 이러한 점에서 판독될 것이며, 무엇이 종래기술이고, 무엇이 종래기술이 아닌 지에 대해 용인하는 것으로 이해되어서는 안된다.
사용자는 월드와이드웹(World Wide Web)과 같이 통신 네트워크를 통해 이용가능한 다양한 설비로 인하여 그들 자신의 애플리케이션 또는 웹 페이지를 생성할 수 있다. 일 예는 새로운 서비스 또는 애플리케이션을 생성하기 위해 둘 이상의 소스로부터의 데이터 또는 기능성을 사용하거나 또는 결합하는 웹 페이지 또는 애플리케이션인 "매시업(mashup)"으로 알려져 있다.
그러나 사용자가 일 소스에 대한 그/그녀의 크리덴셜(credentials)(사용자명 및 패스워드)을 다른 소스에 부여할 필요가 있을 때에 소스들 간의 정보 노출, 그리고 일 소스의 전체 액세스를 다른 소스에게 부여함으로 인해 문제가 발생한다. 이것은 사용자에게 바람직하지 않을 수 있다.
OAuth로 알려진 프로토콜은 이 문제에 대한 해결방안을 제공하려 한다. 통상, OAuth 프로토콜(http://oauth.net/)은 사용자가 그들의 패스워드를 공유하지 않으면서 그들의 웹 자원에 대한 제3 자 액세스를 제공할 수 있도록 해준다. 그러나 이 프로토콜에는 몇몇 제약과 약점이 있다. 먼저, 이 프로토콜은 HTTP(Hypertext Transfer Protocol)와 결부되어 있어 웹이 아닌 애플리케이션에는 적용될 수 없다. 두 번째, 프로토콜은 HTTP 리디렉션(redirection)의 사용에 의존하므로 피싱(phishing) 공격에 취약하다. 또한 프로토콜은 위임된 권한부여(delegated authorization)를 얻기 위해 다수의 라운드 트립(round trip)을 필요로 하며, 이것은 애플리케이션 성능에 최적이 아니다. 마지막으로, 프로토콜은 둘 이상의 유형의 위임 증거(delegation proof), 그리고 반복된 암호화 서명을 포함한 증거 방안을 사용하므로, 필요이상으로 더 복잡해진다.
따라서 상기 및 다른 단점을 극복하는 권한 위임에 대한 개선된 접근방안이 필요하다.
본 발명의 실시예는 보호 자원에 대해 자원 소유자 외의 엔티티에 의한 액세스를 포함한 통신 네트워크(예를 들면 차세대 네트워크에서, 또는 World wide Web) 상의 애플리케이션(예를 들면 매시업 및 제3 자 애플리케이션)을 가능하게 하도록 동적 권한 위임을 위한 일반적이고 효과적이며 안전한 방법을 제공한다.
제1 양상에서, 방법은, 제1 컴퓨팅 장치가 자원 소유자를 나타내고 제2 컴퓨팅 장치가 자원 요청자를 나타내는 통신 네트워크에서, 자원 소유자가 이벤트 발생을 검출하는 단계―상기 이벤트 발생은 자원 레지던스(resource residence)에 저장된 자원 소유자의 하나 이상의 자원을 액세스하려는 요청을 나타냄―와, 자원 소유자가 이벤트 발생에 응답하여 자원 요청자에게 권한부여 토큰(authorization token)을 송신하는 단계―상기 권한부여 토큰은 자원 레지던스에 저장된 하나 이상의 요청 자원에 대한 자원 요청자의 액세스를 허용하기 위하여 자원 요청자에 의해 자원 레지던스로 제공될, 자원 소유자에 의해 위임된 권한부여 증거로서의 기능함―를 포함한다.
하나 이상의 실시예에서, 이벤트 발생은 자원 소유자가 자원 요청자로부터 자원 요청을 수신한 인수증일 수 있다(예를 들면 풀(pull) 방법). 이 대신에, 이벤트 발생은 애플리케이션 프로그램과 관련된 트리거링 이벤트(triggering event)의 발생일 수 있다(예를 들면 푸시(push) 방법). 자원 레지던스는 제3 컴퓨팅 장치에 상주하거나, 또는 제1 컴퓨팅 장치에 상주할 수 있다. 권한부여 토큰은 검증가능한 구조(verifiable structure), 제한된 수명 중의 하나 이상을 가질 수 있고, 자원 요청자를 인증하기 위한 보증 레벨 또는 자원 요청자를 인증하기 위한 방법을 명시할 수 있다. 검증가능한 구조는 자원 소유자의 디지털 서명을 포함할 수 있다. 권한부여 토큰은 하나 이상의 요청 자원에 따라서 수행되도록 허용되는 하나 이상의 동작을 명시할 수 있다. 자원 요청자는 일 라운드 트립에서 자원 소유자로부터 권한부여 토큰을 얻을 수 있다. 토큰을 얻기 위한 메카니즘은 기존 애플리케이션 프로토콜과 관계가 있다. 하나 이상의 요청 자원에 대한 액세스를 얻기 위한 권한부여 토큰의 제공은 기존 애플리케이션 프로토콜과 관계가 있다.
더욱이 자원 소유자에 의해 위임된 권한부여 증거는 자원 요청자로부터 적어도 다른 자원 요청자에게 전송될 수 있어, 다른 자원 요청자는 자원 레지던스에 저장된 하나 이상의 요청 자원에 대한 다른 자원 요청자의 액세스를 허용하도록 자원 레지던스로 또 다른 권한부여 토큰을 제공할 수 있다. 다른 자원 요청자가 얻은 다른 권한부여 토큰은 자원 요청자에 의해 자원 소유자로부터 직접 얻은 권한부여 토큰에 명시된 동작 허용 범주의 서브셋인 동작 허용 범주를 명시할 수 있다. 일 실시예에서, 다른 자원 요청자가 얻은 다른 권한부여 토큰은 자원 요청자를 인증하기 위한 보증 레벨, 또는 자원 요청자를 인증하기 위한 방법을 변경하지 않는다. 더욱이 다른 권한부여 토큰은 원래 수신한 권한부여 토큰의 변경 형태일 수 있고, 이전 자원 요청자는 변경을 수행하여 다른 자원 요청자에게 변경된 형태의 권한부여 토큰을 송신한다.
또한 자원 소유자는 자원 요청자에게 권한부여 토큰을 송신하기 전에 자원 요청자를 인증할 수 있다.
제2 양상에서, 방법은, 제1 컴퓨팅 장치가 자원 소유자를 나타내고 제2 컴퓨팅 장치가 자원 요청자를 나타내는 통신 네트워크에서, 자원 소유자가 이벤트 발생을 검출하는 단계―상기 이벤트 발생은 자원 레지던스에 저장된 자원 소유자의 하나 이상의 자원을 액세스하려는 요청을 나타냄―와, 자원 요청자가 이벤트 발생에 응답하여 자원 소유자에 의해 송신된 권한부여 토큰을 수신하는 단계―상기 권한부여 토큰은 자원 레지던스에 저장된 하나 이상의 요청 자원에 대한 자원 요청자의 액세스를 허용하도록 자원 요청자에 의해 자원 레지던스로 제공될, 자원 소유자에 의해 위임된 권한 증거로서 기능함―를 포함한다.
하나 이상의 실시예에서, 자원 요청자가 자원 레지던스로 권한부여 토큰을 제공하기 전에, 자원 레지던스는 자원 요청자를 인증할 수 있다. 자원 레지던스는 하나 이상의 요청 자원 상에서 동작하기에 앞서 자원 요청자에 의해 제공되는 권한부여 토큰을 확인한다. 더욱이 자원 요청자가 자원 레지던스로 권한부여 토큰을 제공한 후에, 자원 레지던스는 자원 요청자를 인증할 수 있다. 또한 자원 요청자는 자원 소유자에 의해 위임된 권한부여 증거를 적어도 또 다른 자원 요청자에게 전송할 수 있다. 이러한 전송은 자원 요청자가 다른 자원 요청자에게로 또 다른 권한부여 토큰을 송신하는 것을 포함함으로써, 자원 레지던스에 저장된 하나 이상의 요청 자원에 대한 다른 자원 요청자의 액세스를 허용하도록 자원 레지던스로 다른 권한부여 토큰을 제공할 수 있다.
제3 양상에서, 방법은, 제1 컴퓨팅 장치가 자원 소유자를 나타내고 제2 컴퓨팅 장치가 자원 요청자를 나타내는 통신 네트워크에서, 자원 소유자가 이벤트 발생을 검출하는 단계―상기 이벤트 발생은 자원 레지던스에 저장된 자원 소유자의 하나 이상의 자원을 액세스하려는 요청을 나타냄―와, 자원 요청자가 이벤트 발생에 응답하여 자원 소유자에 의해 송신된 권한부여 토큰을 수신하는 단계와, 자원 레지던스가 권한부여 토큰을 수신하는 단계―상기 권한부여 토큰은 자원 레지던스에 저장된 하나 이상의 요청 자원에 대한 자원 요청자의 액세스를 허용하도록 자원 요청자에게로 자원 소유자에 의해 위임된 권한 증거로서 기능함―를 포함한다.
유리하게도, 본 발명의 동적 권한 위임 기법은 웹 및 비-웹 애플리케이션에도 적용될 수 있다. 상기 본 발명의 기법은 HTTP 리디렉션의 사용에 의존하지 않으며, 위임된 권한부여를 얻기 위해 다수의 라운드 트립을 요구하지 않는다. 더욱이 상기 본 발명의 기법은 기존의 권한 위임 방안보다 덜 복잡하다.
본 발명의 상기 및 다른 목적, 양상 및 장점은 첨부 도면과 함께 판독되는 예시적 실시예의 다음 상세한 설명으로부터 명백해질 것이다.
도 1은 본 발명의 일 실시예에 따라서, 안전한 동적 권한 위임에 참여하는 엔티티를 도시하는 도면.
도 2는 본 발명의 실시예에 따라서, 권한부여 토큰의 기본 구조를 도시하는 도면.
도 3은 본 발명의 실시예에 따라서, 권한부여 토큰을 요청하기 위해 자원 요청자에 의해 수행되는 방법을 도시하는 도면.
도 4는 본 발명의 실시예에 따라서, 권한부여 토큰에 대한 요청에 응답하여 자원 소유자에 의해 수행되는 방법을 도시하는 도면.
도 5a 및 도 5b는 본 발명의 실시예에 따라서, 보호 자원을 액세스하기 위해 자원 요청자에 의해 수행되는 방법을 도시하는 도면.
도 6a 및 도 6b는 본 발명의 실시예에 따라서, 보호 자원을 액세스하려는 요청에 응답하여 자원 레지던스에 의해 수행되는 방법을 도시하는 도면.
도 7은 본 발명의 실시예예 따라서, 다른 권한부여 토큰의 구조를 도시하는 도면.
도 8은 본 발명의 실시예에 따라서, 안전한 동적 권한 위임을 구현하기에 적당한 통신 네트워크의 하드웨어 구조를 도시하는 도면.
본 발명은 예시적 통신 네트워크 및 예시적 애플리케이션과 함께 후술될 것이다. 그러나 본 발명은 임의 특정 유형의 통신 네트워크 또는 애플리케이션과의 사용으로 제한되지 않는다는 것을 알아야 한다. 개시된 기법은 웹기반 및 비-웹 기반 네트워크를 포함한 폭넓고 다양한 통신 네트워크, 그리고 다수의 애플리케이션에 사용하기에 적합하다. 사실상, 개시된 기법은 임의 적당한 애플리케이션으로써 임의 적당한 통신 네트워크에서 구현될 수 있고, 보호 자원에 대해 자원 소유자 외의 엔티티에 의한 액세스를 포함한 통신 네트워크상에서 애플리케이션을 가능하도록 권한의 동적 위임을 제공하는 것이 바람직하다.
여기에 사용되는 바와 같이, "권한 위임"은 일반적으로, 소정 항목에 대한 액세스를 가진 일 파티가 상기 항목에 대한 액세스를 또 다른 파티에게 허가해 주는 것을 언급한다. 예를 들면 아래의 실시예에서, 자원 소유자는 권한부여 토큰을 사용하여 자원 요청자의 소정 자원에 대한 액세스를 허가해 준다. 이 동작은 위임이 프로비저닝(provisioning)을 통해서라기 보다는 필요에 따라 실시간으로 발휘된다는 점에서 "동적"인 것으로 간주된다.
여기에 사용되는 바와 같이, "토큰"은 일반적으로 입증가능 또는 인증될 수 있는 동작 및 액세스 제어 표준을 나타내는 데이터 객체 또는 구조를 언급한다.
여기에 사용되는 바와 같이, "자원"은 일반적으로 통신 네트워크를 통해 액세스될 수 있는 임의 항목, 데이터, 정보등을 언급한다.
여기에 사용되는 바와 같이, "애플리케이션"은 일반적으로 사용자 또는 엔티티가 하나 이상의 특정 작업을 수행하는 것을 돕도록 설계된 컴퓨터 소프트웨어를 언급한다.
여기에 설명될 바와 같이, 본 발명의 예시적 실시예는 기법을 제공함으로써, 자원 요청자는 자원 소유자로부터 직접, 자원 레지던스에서의 그의 자원을 액세스하는 것을 동적으로 허가받을 수 있다. 여기에 사용되는 "레지던스"는 일반적으로 통신 네트워크를 통해 액세스될 수 있는 저장 위치를 언급한다. 자원 요청자는 자원 소유자에 의해 위임된 허가 증거를 제공함으로써 자원 레지던스에서의 보호 자원을 액세스할 수 있다. 증거(즉 권한부여 토큰)는 입증가능한 구조 및 제한된 수명을 가지며, 다른 것들 중에서 자원 요청자를 인증하기 위한 보증 레벨 또는 방법을 명시한다. 자원 요청자는 요청-응답 기반인 메카니즘을 통해 일 라운드 트립으로 자원 소유자로부터 동적으로 권한부여 토큰을 얻을 수 있고, 기존 애플리케이션 프로토콜과 관계가 있다. 예를 들면 자원 토큰 요청/응답은 메시지 헤더 또는 바디 또는 이 둘 모두의 부분으로서 HTTP 또는 SIP(Session Initional Protocol)를 통해 운송될 수 있다. 보호 자원에 대한 액세스를 얻기 위해 자원 토큰을 제공하는 메카니즘은 요청-응답 기반이며, 기존 애플리케이션 프로토콜과 관계가 있다. 예를 들면 토큰은 메시지 헤더 또는 바디의 일부로서 HTTP 또는 SIP를 통해 운송될 수 있다.
도 1은 본 발명의 일 실시예에 따라서 엔티티가 안전한 동적 권한 위임에 참여하는 시스템(100)을 도시한다. 도시된 바와 같이, 시스템은 자원 소유자(102), 자원 요청자(104) 및 자원 레지던스(106)의 세 유형의 액터(actors)를 포함한다. 세 액터의 각각은 하나 이상의 컴퓨팅 장치로서 구현될 수 있다는 것을 알아야 하며, 이는 보다 더 후술될 것이다.
자원 소유자(102)는 (단말 사용자의 경우에) 사용자 에이전트로서, 또는 (서비스 제공자 또는 구성의 경우에) 권한부여 서버로서 구현될 수 있다. 유사하게, 자원 요청자(104)는 (단말 사용자의 경우에) 사용자 에이전트로서, 또는 (서비스 제공자 또는 구성의 경우에) 애플리케이션 서버로서 구현될 수 있다. (컴퓨팅 장치 A를 동작시키는) "앨리스(Alice)"가 서버상에 저장된 그녀의 모스크바 여행에 대한 그녀의 사진을 인쇄하도록 사진인쇄 서비스 제공자에게 요청하는 사용 경우(use case)에, 자원 소유자(102)(앨리스)는 사용자 에이전트(예를 들면 컴퓨팅 장치 A상에서 실행되는 웹 브라우저 프로그램)로 표현되고, 자원 요청자(104)(사진 인쇄 서비스 제공자)는 애플리케이션 서버로 표현된다. (컴퓨팅 장치 B에서 동작중인) "밥(Bob)"이 온라인 영화 서비스의 가입자인 다른 사용 경우에, 자원 소유자(102)(온라인 영화 서비스 제공자)는 권한부여 서버로 표현되고, 자원 요청자(104)(밥)는 사용자 에이전트(예를 들면 컴퓨팅 장치 B 상에서 실행중인 웹 브라우저 프로그램)로 표현된다.
자원 레지던스(106)의 소정 보호 자원에 대한 액세스를 얻기 위하여, 자원 요청자(104)는 도 2에 예시적으로 도시된 바와 같이(아래에 더 후술되는 바와 같이) 기본 구조(200)를 가진 권한부여 토큰을 자원 소유자(102)로부터 직접 얻을 필요가 있다. 이를 위하여 풀과 푸시(pull and push)인 두 방법이 가능하다. 풀 방법에서, 자원 요청자(104)와 자원 소유자(102)는 요청과 응답을 교환한다. 토큰 요청은 적어도 요청자, 목표 자원과 관련 동작을 식별할 것이다. 후술되는 도 3 및 도 4는 자원 요청자(104)와 자원 소유자(102)의 각각의 관점으로부터의 풀 방법을 도시한다. 푸시 방법에서, 자원 소유자(102)는 자원 요청자로부터의 분명한 요청에 의한 것이라기 보다는 애플리케이션 트리거의 결과로서 권한부여 토큰을 자원 요청자(104)에게 발행할 수 있다.
도 3은 기본 권한부여 토큰을 요청하기 위해 자원 요청자 측(예를 들면 도 1의 참조번호 104)에서의 풀 방법(300)을 도시한다. 단계(302)에서, 자원 요청자는 자원 소유자에게로 권한부여 토큰 요청을 생성 및 송신한다. 단계(304)에서, 자원 요청자는 자원 소유자로부터 수신한 제1 응답을 검사하고, 단계(306)에서, 제1 응답이 인증 요청을 포함하는 지의 여부(이로써 자원 소유자는 요청자에게 권한부여 토큰을 송신하기 전에 요청자의 인증을 요청중), 또는 제1 응답이 권한부여 토큰을 포함하는 지의 여부를 결정한다.
자원 소유자로부터의 제1 응답이 인증 요청이 아니고 오히려 권한 토큰을 포함하고, 따라서 단계(308)(즉 후술되는 실패 토큰 응답(failure token response)의 수신에 대해 검사)에서 네거티브로 결정된다면, 단계(310)에서 요청자는 (자원 레지던스로의 후속 전송을 위해) 권한부여 토큰을 저장한다.
그러나 자원 소유자로부터의 제1 응답이 인증 요청인 경우, 단계(312)에서 자원 요청자는 자원 소유자로 인증 응답을 생성하여 송신한다. 단계(314)에서, 자원 요청자는 그 후에 자원 소유자로부터 수신한 제2 응답을 검사하고, 제2 응답이 권한부여 토큰을 포함하는 지(따라서 인증이 성공적이였다고 추정)의 여부를 결정한다. 그러하다면, 단계(308)(실패 토큰 응답)는 네거티브를 도출하고, 단계(310)에서 요청자는 (자원 레지던스로의 후속 전송을 위해) 인증 토큰을 저장한다. 그러나 인증이 실패하면, 자원 소유자로부터 수신한 제2 응답은 실패 토큰 응답이며, 즉 이것은 자원 소유자가 권한부여 토큰을 요청자에게 발행하지 않을 것이라는 것을 의미한다. 요청자를 인증하는데 사용되는 기법은 임의 종래 인증 기법을 포함할 수 있다는 것을 알 것이다.
도 4는 토큰 요청을 처리하기 위한 자원 소유자 측(예를 들면 도 1의 102)에서의 풀(pull) 방법(400)를 도시한다. 단계(402)에서, 자원 소유자는 (토큰 요청을 송신하였던) 자원 요청자의 인증 여부를 검사한다. 인증되지 않았다면, 단계(404)에서 자원 소유자는 인증 요청을 생성하여 자원 요청자에게로 송신한다. 단계(406)에서, 자원 소유자는 자원 요청자로부터 수신한 인증 응답을 검사한다. 검사는 단계(408)에서 인증이 성공했는지의 여부를 결정하기 위해 행해진다. 인증이 성공하지 못했다면, 단계(410)에서 자원 소유자를 실패 토큰 응답을 요청자에게 송신한다(즉 요청자에게 송신되는 권한부여 토큰이 없다). 그러나 인증이 성공적이였다면, 단계(412)에서 소유자는 요청자에게 소유자의 자원(들)에 대한 액세스를 부여해야 하는 지의 여부를 결정하고, 그렇다면 단계(414)에서 권한부여 토큰을 생성하여 이를 요청자에게 송신한다. 그러나 액세스가 거부되면, 단계(410)에서 실패 토큰 응답을 송신한다.
자원 요청자(104)는 권한부여 토큰을 가지게 되면 자원 레지던스(106)에서의 보호 자원에 대한 액세스를 요청할 수 있다. 자원 요청을 수신시에(도 1 참조), 자원 레지던스(106)는 다음 조치를 취한다:
1 - 요청과 관련된 디지털 서명이 토큰에서 명시된 디지털 서명 방법을 기반으로 유효하다는 것을 검증;
2 - 토큰이 최대 사용 수와 시간이라는 면에서 만료되지 않았다는 것을 검증;
3 - 요청된 자원과 수행할 동작이 토큰에 명시된 자원 리스트 및 권리의 일부임을 검증;
4 - 자원 요청자의 이름이 토큰에서 요청자 이름과 매칭한다는 것을 검증;
5 - 상기 방법 또는 토큰에 명시된 세기 레벨의 방법을 사용하여 자원 요청자를 검증.
도 5a 및 도 5b는 자원 레지던스(예를 들면 도 1의 106)에 의해 유지되는 (초기 요청에 권한부여 토큰을 반드시 포함할 필요없이) 보호 자원에 대한 액세스를 위해 자원 요청자(예를 들면 도 1에서 104) 측에서의 방법(500)을 도시한다.
단계(502)에서, 자원 요청자는 요청 레지던스로 자원 요청을 생성하여 송신한다. 단계(504)에서, 자원 요청자는 자원 레지던스로부터 수신한 제1 응답을 검사하고, 단계(506)에서 제1 응답이 인증 요청을 포함하는 지(이로써 자원 레지던스가 요청자에 의한 자원에 대한 액세스를 허용하기 전에, 자원 레지던스는 요청자 인증을 요청중), 또는 제1 응답이 권한부여 토큰을 요구중인지의 여부를 결정한다.
자원 레지던스로부터 제1 응답이 인증 요청이 아니라 인증 토큰을 요구중이라면(후술되는 514), 따라서 단계(508)(즉 후술되는 실패 응답의 수신에 대해 검사)가 "아니오"로 판명되면, 요청자는 권한부여 토큰을 송신한다(후술되는 516).
그러나 자원 레지던스로부터 제1 응답이 인증 요청이라면, 단계(510)에서 자원 요청자는 인증 응답을 생성하여 자원 레지던스로 송신한다. 단계(512)에서, 자원 요청자는 자원 레지던스로부터 수신한 제2 응답을 검사하고, 제2 응답이 실패 응답인지(508), 또는 인증이 성공적이였다는 가정하에 권한부여 토큰에 대한 요청인지(514)의 여부를 결정한다. 후자의 경우, 요청자는 단계(516)에서 (도 3 및 도 4의 문맥에서 전술한 프로토콜에 따라서 자원 소유자로부터 수신한 ) 권한부여 토큰을 송신한다.
단계(518)에서, 자원 요청자는 자원 레지던스로부터 수신한 제3 응답을 검사하고, 제3 응답이 또 다른 인증 요청, 즉 토큰에서 전술한 방법으로써 요청자 인증을 보장하기 위해 레지던스에 의한 후속 인증 요청인 지의 여부를 결정한다. 즉 보안 추가를 위하여, 자원 레지던스는 토큰을 수신할 때마다 요청자를 재인증할 필요가 있을 수 있다. 그렇다면, 전술한 단계(510, 512, 508)와 유사한 단계(524, 526, 528)가 수행된다. 단계(530)에서, 요청자는 전형적으로 요청 자원(들)을 포함한 응답을 처리한다.
도 6a 및 도 6b는 자원 요청자(에를 들면 도 1의 104)로부터의 자원 요청을 처리하기 위해 자원 레지던스(예를 들면 도 1의 106) 측에서의 방법(600)을 도시한다. 단계(602)에서, 자원 레지던스는 자원 요청자를 인증했는 지의 여부를 검사한다. 답이 "예"인 경우, 단계(604)에서 자원 레지던스는 요청자가 자원 소유자인지(이 경우 요청자는 인증 토큰을 필요로 하지 않는다)의 여부를 확인한다. 답이 "예"인 경우, 단계(606)에서 레지던스는 적절한 자원 동작을 적용하고, 응답을 송신한다(예를 들면 요청 자원(들)에 대한 액세스 제공).
그러나 단계(602)로 복귀하여, 요청자가 인증되지 않았고 요청자가 권한부여 토큰을 아직 제공하지 않았다면(단계 608), 인증 처리는 단계(610)(요청을 생성하여 요청자에게 송신), 단계(612)(인증 응답 검사), 단계(614)(인증 성공 확인)에서 수행된다. 인증이 성공적이지 않다면, 단계(616)에서 실패 응답을 요청자에게로 송신한다. 그러나 인증이 성공적이였다면, 단계(604)가 수행되고(요청자가 소유자인지 검사), 답이 "예"이면 단계(606)(자원 동작 적용 및 응답 송신)가 수행된다. 그러나 성공적인 인증(단계 614)과 요청자가 자원 소유자가 아니라는 확인(단계 604) 후인 경우, 레지던스는 단계(618)에서 권한부여 토큰에 대해 요청자에게 요구하고, 단계(620)에서 요청자가 토큰을 제공했는지의 여부를 검사한다. 제공되지 않았다면, 단계(616)에서 실패 응답을 송신한다.
일단 토큰이 수신되었다면, 단계(622)에서 자원 레지던스는 토큰을 검증한다. 예를 들면 검증은 토큰 서명이 유효한 지의 여부, 토큰과 요청에서 요청자의 이름이 매칭하는 지, 토큰이 만료되지 않았는지, 요청 자원과 동작이 범주(즉 요청중인 요청자 및/또는 자원에 대해 허용된 범주) 내에 있는 지의 여부를 결정하기 위해 수행된다. 토큰의 구조에 따라 토큰 및 그의 콘텐츠에 대해 보다 적거나 또는 보다 많은 검증을 행할 수 있다는 것을 알 것이다. 토큰의 하나 이상의 양상을 검증할 수 없다면, 단계(624)에서 실패 응답이 요청자에게 송신되고, 따라서 요청자는 자원을 이용할 수 없게 된다. 그러나 수신한 토큰의 모든 양상이 검증된다면, 토큰에 명시된 (방법 또는 보증 레벨이라는 면에서) 인증 요건에 따라서 레지던스가 다른 인증 처리를 요청할 수 있다. 이것은 단계(610, 612, 614)와 유사한 단계(626, 628, 630, 632)를 통해 행해진다. 제2 인증이 성공적이라고 추정시에, 단계(634)에서 자원 동작이 적용되고 응답이 송신된다(즉 자원에 대한 액세스가 허용됨). 그렇지 않다면, 단계(624)에서 실패 응답이 송신된다.
도 2를 다시 참조하면, 권한부여 토큰의 기본 구조는 (이름-값 쌍(name-value pairs)이라는 면에서) 필드 리스트, 그리고 사설 키(private key) 또는 공유 비밀(shared secret)을 기반으로 명시된 서명 알고리즘(210)(예를 들면 RSA-SHA1 및 HMAC-SHA256)를 사용하여 필드에 대해 계산된 발행자의 서명(202)으로 구성된다. 고유 토큰 식별자(204)는 발행자의 이름(206)과 타임스탬프를 연결함으로써 구성될 수 있다. 발행자의 인증서 체인 또는 인증서로의 포인터(208)가 토큰에 명시된다. 이 필드는 발행자의 서명을 계산하기 위해 사용되는 알고리즘이 사설키 기반일 때에 전체 성능을 개선시키기 위해 단지 이 필드를 포함할 필요가 있다는 데에 주목한다. 필드(212)는 자원 요청자의 이름(신원)을 명시한다. 필드(214)는 요청자를 인증하기 위한 방법 또는 방법의 세기를 명시한다. 필드(216)는 수신자, 즉 자원 레지던스로서 동작하는 장치 또는 서버의 이름(신원)을 명시한다.
자원 및 권리 리스트(218), 종료 시간(220), 최대 이용 수(222)의 결합된 필드가 전체 위임 범주를 설정한다. 가반성도(transferability)는 자원 소유자에 의해 발행된 토큰이 원래 요청자로부터 시작하는 일련의 토큰 요청자로 하향 전송될 수 있는 정도(degree)를 가리킨다. 음이 아닌 정수 값을 추정할 수 있다. 0 도 (zero-th degree) 가반성의 토큰은 전송되지 않을 수 있다. N 도(N-th degree) 가반성의 토큰은 원래 토큰 요청자에 의해 제2 토큰 요청자로, 이어서 제3 요청자로, 등등 최대 N 요청자로 전송될 수 있다.
전송가능한 토큰을 얻은 후에, 요청자는 구 토큰을 기반으로 하여 새 요청자에게로 새 토큰을 발행할 수 있다. 도 7에 도시된 바와 같이, 새 토큰(700)은 (전과 동일한 방법에 의해 인증될) 새 요청자(708)의 신원을 명시하고, 가능하게는 다운그레이드된 위임 범주(710)을 명시한다. 일 실시예에서, 새 토큰(700)은 구 토큰(704)(즉 도 2에 도시된 토큰 구조)을 포함할 뿐만 아니라, 이전 요청자(새 발행자)의 인증서 체인 또는 인증서로의 포인터(706)를 포함한다. 발행자의 서명(702)은 발행자의 사설 키 또는 공유 비밀을 기반으로 (구 토큰에 명시된 서명 알고리즘과 동일할 수 있는) 서명 알고리즘을 사용하여 필드에 걸쳐 계산된다.
전송된 토큰을 검증시에, 자원 레지던스는 추가로 다음을 검사할 필요가 있다:
1 - 가반성도는 제공된 새 요청자의 수보다 크다
2 - 모든 서명은 유효하다
3 - 범주는 토큰이 방식에 따라 전송되는 대로 넓어지지 않는다.
전송가능한 토큰의 사용 경우는 다음과 같다: 앨리스는 콘텐츠 서버상에서 소정 콘텐츠를 발행하고, 관련 콘텐츠 관리자로 하여금 그녀의 콘텐츠에 대한 다른 사람들의 액세스를 처리하기 위해 그녀의 프록시(proxy)를 만들게 한다. 전송가능하거나 또는 제한된 수의 사용인 토큰을 지원하기 위하여, 자원 레지던스는 상태를 유지할 필요가 있다는 점에 주목한다.
마지막으로, 도 8은 본 발명의 전술한 원리에 따라서 안전하고 동적인 권한 위임을 구현하기에 적당한 통신 네트워크(800)의 일반화된 하드웨어 구조를 도시한다.
도시된 바와 같이, 자원 소유자(810)를 위한 컴퓨팅 장치(예를 들면 도 1에서 102), 자원 레지던스(820)를 위한 컴퓨팅 장치(예를 들면 도 1의 106), 그리고 자원 요청자(830)를 위한 컴퓨팅 장치(예를 들면 도 1의 104)는 통신 네트워크 매체(850)를 통해 동작가능하게 연결된다. 네트워크 매체는 컴퓨팅 장치가 통신하기 원하는 임의 네트워크 매체일 수 있다. 예를 들면 네트워크 매체는 IP 패킷을 단 대 단(end-to end) 전송할 수 있고, 액세스 네트워크의 UMTS(Universal Mobile Telecommunications System) 또는 WiFI 또는 DSL(Digital Subscriber Line), 메트로 네트워크의 이더넷, 백본(backbone)의 MPLS(Multiprotocol Label Switching)를 포함할 수 있다. 그러나 본 발명은 특정 유형의 네트워크 매체로 제한되지 않는다. 전형적으로, 각 컴퓨팅 장치는 수행되는 권한 위임 시나리오에 따라서 클라이언트 머신 또는 서버 머신으로서 기능할 수 있다. 또한 자원 레지던스가 개별 컴퓨팅 장치로 도시되지만, 레지던스는 소유자 또는 요청자와 동일한 컴퓨팅 장치의 일부일 수 있다는 것을 알 것이다. 또한 자원 소유자, 요청자 및 레지던스의 각각이 일 컴퓨팅 장치를 통해 구현되는 것으로 도 8에 도시되었지만, 각각은 이러한 둘 이상의 컴퓨팅 장치를 통해 구현될 수 있다는 것을 알 것이다.
본 기술분야에 통상의 지식을 가진 자는 쉽게 알 수 있는 바와 같이, 컴퓨팅 장치는 컴퓨터 프로그램 코드의 제어하에 동작하는 프로그래밍된 컴퓨터로서 구현될 수 있다. 컴퓨터 프로그램 코드는 컴퓨터(또는 프로세서 또는 머신) 판독가능 저장매체(예를 들면 메모리)에 저장되고, 코드는 컴퓨터의 프로세서에 의해 실행된다. 본 발명의 이 개시물을 고려하면, 본 기술분야에 통상의 지식을 가진 자는 여기에 기술된 프로토콜을 구현하기 위하여 적절할 컴퓨터 프로그램 코드를 쉽게 생성할 수 있다.
그럼에도 불구하고, 도 8은 일반적으로 네트워크 매체를 통해 통신중인 각 장치를 위한 예시적 구조를 도시한다. 도시된 바와 같이, 자원 소유자(810)는 I/O 장치(812), 프로세서(814) 및 메모리(816)를 포함한다. 자원 레지던스(820)는 I/O 장치(822), 프로세서(824) 및 메모리(826)를 포함한다. 자원 요청자(830)는 I/O 장치(832), 프로세서(834) 및 메모리(836)를 포함한다.
여기에 사용되는 용어 "프로세서"는 CPU(central processing unit)를 포함한 하나 이상의 처리장치, 또는 하나 이상의 신호 프로세서, 하나 이상의 집적회로 등을 포함하지만 이로 제한되지 않는 다른 처리회로를 포함하려 한다. 또한 여기에 사용되는 용어 "메모리"는 RAM, ROM, 고정 메모리 장치(예를 들면 하드 드라이브) 또는 착탈가능 메모리 장치(예를 들면 디스켓 또는 CDROM)과 같이 프로세서 또는 CPU와 관련된 메모리를 포함하려 한다. 또한 여기에 사용되는 용어 "I/O 장치"는 처리 유닛으로 데이터를 입력하기 위한 하나 이상의 입력 장치(예를 들면 키보드, 마우스)뿐만 아니라, 차리 유닛과 관련된 결과를 제공하기 위한 하나 이상의 출력 장치(예를 들면 CRT 디스플레이)를 포함하려 한다.
따라서 여기에 기술된 본 발명의 방법론을 수행하기 위한 소프트웨어 또는 코드가 하나 이상의 관련 메모리 장치, 예를 들면 ROM, 고정 또는 착탈가능 메모리에 저장될 수 있고, 이용 준비가 될 때, RAM으로 로딩되어 CPU에 의해 실행될 수 있다. 즉 도 8에 도시된 각 컴퓨팅 장치(810, 820, 830)는 도 1 및 도 7에 도시된 프로토콜의 각 단계를 수행하도록 개별적으로 프로그래밍될 수 있다.
본 발명의 예시적 실시예는 첨부도면을 참조하여 여기에 기술되었지만, 본 발명은 이들 정밀한 실시예로 제한되지 않으며, 본 기술분야에 통상의 지식을 가진 자는 본 발명의 사상 또는 범주를 벗어나지 않고서도 다양한 다른 변경 및 변형을 행할 수 있다는 것을 알 것이다.

Claims (10)

  1. 제1 컴퓨팅 장치가 자원 소유자(resource owner)를 나타내고 제2 컴퓨팅 장치가 자원 요청자(resource requestor)를 나타내는 통신 네트워크에서, 상기 자원 소유자가 이벤트의 발생을 검출하는 단계―상기 이벤트 발생은 자원 레지던스(resource residence)에 저장된 상기 자원 소유자의 하나 이상의 자원을 액세스하려는 요청을 나타냄―와,
    상기 자원 소유자가 상기 이벤트 발생에 응답하여 상기 자원 요청자에게 권한부여 토큰(authorization token)을 송신하는 단계―상기 권한부여 토큰은 상기 자원 요청자가 상기 자원 레지던스에 저장된 상기 하나 이상의 요청 자원에 액세스하는 것을 허가하기 위하여 상기 자원 요청자에 의해 상기 자원 레지던스로 제공될, 상기 자원 소유자에 의해 위임된(delegated) 권한부여 증거로서 기능함―를 포함하며,
    상기 권한부여 토큰은 검증가능한 구조(verifiable structure)를 가지며, 상기 검증가능한 구조는
    상기 자원 요청자를 인증하기 위하여 상기 자원 레지던스가 사용하는 방법 및 상기 자원 요청자를 인증하기 위하여 상기 자원 레지던스가 사용하는 상기 방법의 세기(a strength of the method) 중 적어도 하나를 포함하는 하나 이상의 필드와,
    상기 자원 소유자의 사설 키를 사용하여 상기 하나 이상의 필드에 대해 계산되는 서명을 포함하는
    안전한 동적 권한 위임(secure dynamic authority delegation)을 위한 방법.
  2. 제1항에 있어서,
    상기 이벤트 발생은 상기 자원 요청자와 상기 자원 소유자가 풀(pull) 통신 방법을 통해 요청 및 응답을 교환할 수 있도록 상기 자원 소유자가 상기 자원 요청자로부터 수신한 자원 요청의 인수인
    안전한 동적 권한 위임을 위한 방법.
  3. 제1항에 있어서,
    상기 자원 요청자와 상기 자원 소유자 간의 통신 방법이 푸시(push) 통신 방법이 되도록 상기 이벤트 발생이 상기 자원 요청자로부터의 분명한 요청에 의한 것이라기보다는 애플리케이션 프로그램과 관련된 트리거링 이벤트(triggering event)의 발생인
    안전한 동적 권한 위임을 위한 방법.
  4. 제1항에 있어서,
    상기 자원 소유자에 의해 위임된 권한부여의 증거가 상기 자원 소유자와의 추가적인 소통 없이 상기 자원 요청자로부터 적어도 또 다른 자원 요청자에게로 전송될 수 있으며, 이에 의해 상기 적어도 또 다른 자원 요청자가 상기 자원 레지던스에 저장된 상기 하나 이상의 요청 자원에 액세스하는 것을 허가하도록 상기 적어도 또 다른 자원 요청자에 의하여 다른 권한부여 토큰을 상기 자원 레지던스에게 제공할 수 있는
    안전한 동적 권한 위임을 위한 방법.
  5. 제1항에 있어서,
    상기 권한부여 토큰을 획득하고 상기 하나 이상의 요청 자원에 대한 액세스를 얻기 위해 상기 권한부여 토큰을 제공하는 것은, 기존의 애플리케이션 프로토콜과 관련되는
    안전한 동적 권한 위임을 위한 방법.
  6. 자원 소유자를 나타내는 제1 컴퓨팅 장치를 구현하기 위한 안전한 동적 권한 위임을 위한 장치에 있어서,
    상기 장치는 메모리와, 상기 메모리에 연결된 프로세서를 구비하고, 청구항 제1항의 단계를 수행하도록 구성되는
    안전한 동적 권한 위임을 위한 장치.
  7. 제1 컴퓨팅 장치가 자원 소유자를 나타내고 제2 컴퓨팅 장치가 자원 요청자를 나타내며, 상기 자원 소유자가 이벤트의 발생을 검출하고, 상기 이벤트 발생은 자원 레지던스에 저장된 상기 자원 소유자의 하나 이상의 자원을 액세스하려는 요청을 나타내는 통신 네트워크에서,
    상기 자원 요청자가 상기 이벤트 발생에 응답하여 상기 자원 소유자에 의해 송신된 권한부여 토큰을 수신하는 단계―상기 권한부여 토큰은 상기 자원 레지던스에 저장된 상기 하나 이상의 요청 자원에 대한 상기 자원 요청자의 액세스를 허용하기 위하여 상기 자원 요청자에 의해 상기 자원 레지던스로 제공될, 상기 자원 소유자에 의해 위임된 권한부여의 증거로서 기능함―를 포함하고,
    상기 권한부여 토큰은 검증가능한 구조(verifiable structure)를 가지며, 상기 검증가능한 구조는
    상기 자원 요청자를 인증하기 위하여 상기 자원 레지던스가 사용하는 방법 및 상기 자원 요청자를 인증하기 위하여 상기 자원 레지던스가 사용하는 상기 방법의 세기(a strength of the method) 중 적어도 하나를 포함하는 하나 이상의 필드와,
    상기 자원 소유자의 사설 키를 사용하여 상기 하나 이상의 필드에 대해 계산되는 서명을 포함하는
    안전한 동적 권한 위임을 위한 방법.
  8. 제7항에 있어서,
    상기 자원 요청자가 상기 자원 레지던스로 상기 권한부여 토큰을 제공하기 전, 그리고 상기 자원 요청자가 상기 자원 레지던스로 상기 권한부여 토큰을 제공한 후 중의 적어도 한 경우에 상기 자원 레지던스가 상기 자원 요청자를 인증하는 단계를 더 포함하는
    안전한 동적 권한 위임을 위한 방법.
  9. 제7항에 있어서,
    상기 하나 이상의 요청된 자원에 대해 동작하기 전에 상기 자원 레지던스가 상기 자원 요청자에 의해 제공된 상기 권한부여 토큰을 검증하는 단계를 더 포함하는
    안전한 동적 권한 위임을 위한 방법.
  10. 제1 컴퓨팅 장치가 자원 소유자를 나타내고 제2 컴퓨팅 장치가 자원 요청자를 나타내며, 상기 자원 소유자가 이벤트의 발생을 검출하고, 상기 이벤트 발생은 자원 레지던스에 저장된 상기 자원 소유자의 하나 이상의 자원을 액세스하려는 요청을 나타내며, 상기 자원 요청자가 상기 이벤트 발생에 응답하여 상기 자원 소유자에 의해 송신된 권한부여 토큰을 수신하는 통신 네트워크에서,
    상기 자원 레지던스가 상기 권한부여 토큰을 수신하는 단계―상기 권한부여 토큰은 상기 자원 레지던스에 저장된 하나 이상의 요청 자원에 대한 상기 자원 요청자의 액세스를 허용하기 위하여 상기 자원 소유자에 의해 상기 자원 요청자에게로 위임된 권한부여의 증거로서 기능함―를 포함하고,
    상기 권한부여 토큰은 검증가능한 구조(verifiable structure)를 가지며, 상기 검증가능한 구조는
    상기 자원 요청자를 인증하기 위하여 상기 자원 레지던스가 사용하는 방법 및 상기 자원 요청자를 인증하기 위하여 상기 자원 레지던스가 사용하는 상기 방법의 세기(a strength of the method) 중 적어도 하나를 포함하는 하나 이상의 필드와,
    상기 자원 소유자의 사설 키를 사용하여 상기 하나 이상의 필드에 대해 계산되는 서명을 포함하는
    안전한 동적 권한 위임을 위한 방법.
KR1020127023776A 2010-03-12 2011-02-22 안전한 동적 권한 위임을 위한 방법 및 장치 KR101560440B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/723,049 US8776204B2 (en) 2010-03-12 2010-03-12 Secure dynamic authority delegation
US12/723,049 2010-03-12
PCT/US2011/025641 WO2011112345A1 (en) 2010-03-12 2011-02-22 Secure dynamic authority delegation

Publications (2)

Publication Number Publication Date
KR20120128674A KR20120128674A (ko) 2012-11-27
KR101560440B1 true KR101560440B1 (ko) 2015-10-14

Family

ID=44148917

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127023776A KR101560440B1 (ko) 2010-03-12 2011-02-22 안전한 동적 권한 위임을 위한 방법 및 장치

Country Status (6)

Country Link
US (1) US8776204B2 (ko)
EP (2) EP3396574B1 (ko)
JP (1) JP5635133B2 (ko)
KR (1) KR101560440B1 (ko)
CN (1) CN102792311B (ko)
WO (1) WO2011112345A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190040225A (ko) * 2016-09-02 2019-04-17 아싸 아브로이 에이비 접근을 제어하기 위한 열쇠 위임

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10181953B1 (en) 2013-09-16 2019-01-15 Amazon Technologies, Inc. Trusted data verification
AU781021B2 (en) * 1999-06-18 2005-04-28 Echarge Corporation Method and apparatus for ordering goods, services and content over an internetwork using a virtual payment account
JP5130722B2 (ja) * 2007-01-19 2013-01-30 セイコーエプソン株式会社 認証装置及び方法
US9807096B2 (en) 2014-12-18 2017-10-31 Live Nation Entertainment, Inc. Controlled token distribution to protect against malicious data and resource access
US8776204B2 (en) 2010-03-12 2014-07-08 Alcatel Lucent Secure dynamic authority delegation
JP5623234B2 (ja) * 2010-10-22 2014-11-12 キヤノン株式会社 権限委譲システム、権限委譲方法、情報処理装置およびその制御方法、並びにプログラム
US9258312B1 (en) 2010-12-06 2016-02-09 Amazon Technologies, Inc. Distributed policy enforcement with verification mode
US9237155B1 (en) 2010-12-06 2016-01-12 Amazon Technologies, Inc. Distributed policy enforcement with optimizing policy transformations
US8973108B1 (en) * 2011-05-31 2015-03-03 Amazon Technologies, Inc. Use of metadata for computing resource access
US8769642B1 (en) 2011-05-31 2014-07-01 Amazon Technologies, Inc. Techniques for delegation of access privileges
AU2012275653A1 (en) * 2011-06-27 2013-05-02 Google Inc. Persistent key access to a resources in a collection
US8931041B1 (en) * 2011-07-29 2015-01-06 Symantec Corporation Method and system for visibility and control over access transactions between clouds using resource authorization messages
US9197409B2 (en) 2011-09-29 2015-11-24 Amazon Technologies, Inc. Key derivation techniques
US9178701B2 (en) 2011-09-29 2015-11-03 Amazon Technologies, Inc. Parameter based key derivation
US9203613B2 (en) 2011-09-29 2015-12-01 Amazon Technologies, Inc. Techniques for client constructed sessions
JP5529105B2 (ja) * 2011-11-24 2014-06-25 日本電信電話株式会社 アクセスチケット発行システム及びアクセスチケット発行方法
US20130144755A1 (en) * 2011-12-01 2013-06-06 Microsoft Corporation Application licensing authentication
CN103188244B (zh) * 2011-12-31 2016-04-06 卓望数码技术(深圳)有限公司 基于开放授权协议实现授权管理的系统及方法
US8990898B2 (en) * 2012-02-16 2015-03-24 Citrix Systems, Inc. Connection leasing for hosted services
US9215076B1 (en) 2012-03-27 2015-12-15 Amazon Technologies, Inc. Key generation for hierarchical data access
US8892865B1 (en) 2012-03-27 2014-11-18 Amazon Technologies, Inc. Multiple authority key derivation
US8739308B1 (en) 2012-03-27 2014-05-27 Amazon Technologies, Inc. Source identification for unauthorized copies of content
US11250423B2 (en) * 2012-05-04 2022-02-15 Institutional Cash Distributors Technology, Llc Encapsulated security tokens for electronic transactions
EP2850772A4 (en) * 2012-05-04 2016-02-17 Institutional Cash Distributors Technology Llc CREATION, PROPAGATION AND INVOCATION OF SECURE TRANSACTION OBJECTS
US10423952B2 (en) 2013-05-06 2019-09-24 Institutional Cash Distributors Technology, Llc Encapsulated security tokens for electronic transactions
US9660972B1 (en) 2012-06-25 2017-05-23 Amazon Technologies, Inc. Protection from data security threats
US9258118B1 (en) 2012-06-25 2016-02-09 Amazon Technologies, Inc. Decentralized verification in a distributed system
EP2688263A1 (en) 2012-07-17 2014-01-22 Tele2 Sverige AB System and method for delegated authentication and authorization
US9009787B2 (en) * 2012-07-25 2015-04-14 Oracle International Corporation System and method of mapping and protecting communication services with OAuth
US8806595B2 (en) 2012-07-25 2014-08-12 Oracle International Corporation System and method of securing sharing of resources which require consent of multiple resource owners using group URI's
JP5988841B2 (ja) * 2012-11-16 2016-09-07 キヤノン株式会社 通信装置、通信システム、情報処理方法及びプログラム
JP6044299B2 (ja) * 2012-11-26 2016-12-14 富士通株式会社 データ参照システムおよびアプリケーション認証方法
US8813206B2 (en) 2012-11-27 2014-08-19 Hong Kong Applied Science and Technology Research Institute Company Limited Anonymous personal content access with content bridge
US9861160B2 (en) 2012-11-30 2018-01-09 Nike, Inc. Article of footwear incorporating a knitted component
US9038142B2 (en) * 2013-02-05 2015-05-19 Google Inc. Authorization flow initiation using short-term wireless communication
US9887983B2 (en) 2013-10-29 2018-02-06 Nok Nok Labs, Inc. Apparatus and method for implementing composite authenticators
US9367676B2 (en) 2013-03-22 2016-06-14 Nok Nok Labs, Inc. System and method for confirming location using supplemental sensor and/or location data
US10270748B2 (en) 2013-03-22 2019-04-23 Nok Nok Labs, Inc. Advanced authentication techniques and applications
JP6141076B2 (ja) * 2013-04-04 2017-06-07 キヤノン株式会社 システムおよびその制御方法、アクセス管理サービスシステムおよびその制御方法、並びにプログラム
US9407440B2 (en) 2013-06-20 2016-08-02 Amazon Technologies, Inc. Multiple authority data security and access
US9521000B1 (en) 2013-07-17 2016-12-13 Amazon Technologies, Inc. Complete forward access sessions
WO2015013548A1 (en) 2013-07-24 2015-01-29 Visa International Service Association Systems and methods for interoperable network token processing
US9426183B2 (en) 2013-07-28 2016-08-23 Acceptto Corporation Authentication policy orchestration for a user device
US11349879B1 (en) 2013-07-28 2022-05-31 Secureauth Corporation System and method for multi-transaction policy orchestration with first and second level derived policies for authentication and authorization
KR20150020350A (ko) * 2013-08-12 2015-02-26 삼성전자주식회사 통신 시스템에서 멀티미디어 컨텐츠 위임 방법 및 장치
US9311500B2 (en) 2013-09-25 2016-04-12 Amazon Technologies, Inc. Data security using request-supplied keys
US9237019B2 (en) 2013-09-25 2016-01-12 Amazon Technologies, Inc. Resource locators with keys
WO2015054697A1 (en) 2013-10-11 2015-04-16 Visa International Service Association Network token system
US10243945B1 (en) 2013-10-28 2019-03-26 Amazon Technologies, Inc. Managed identity federation
US9397990B1 (en) * 2013-11-08 2016-07-19 Google Inc. Methods and systems of generating and using authentication credentials for decentralized authorization in the cloud
US9420007B1 (en) 2013-12-04 2016-08-16 Amazon Technologies, Inc. Access control using impersonization
US9369461B1 (en) 2014-01-07 2016-06-14 Amazon Technologies, Inc. Passcode verification using hardware secrets
US9374368B1 (en) 2014-01-07 2016-06-21 Amazon Technologies, Inc. Distributed passcode verification system
US9292711B1 (en) 2014-01-07 2016-03-22 Amazon Technologies, Inc. Hardware secret usage limits
US9270662B1 (en) 2014-01-13 2016-02-23 Amazon Technologies, Inc. Adaptive client-aware session security
US9332010B2 (en) * 2014-03-07 2016-05-03 Motorola Solutions, Inc. Methods and systems for token-based application management
US11178131B2 (en) 2014-03-14 2021-11-16 Telefonaktiebolaget Lm Ericsson (Publ) Systems and methods related to establishing a temporary trust relationship between a network-based media service and a digital media renderer
US10771255B1 (en) 2014-03-25 2020-09-08 Amazon Technologies, Inc. Authenticated storage operations
US10325259B1 (en) 2014-03-29 2019-06-18 Acceptto Corporation Dynamic authorization with adaptive levels of assurance
US20170109751A1 (en) * 2014-05-02 2017-04-20 Nok Nok Labs, Inc. System and method for carrying strong authentication events over different channels
US11023890B2 (en) 2014-06-05 2021-06-01 Visa International Service Association Identification and verification for provisioning mobile application
US9258117B1 (en) 2014-06-26 2016-02-09 Amazon Technologies, Inc. Mutual authentication with symmetric secrets and signatures
US10326597B1 (en) 2014-06-27 2019-06-18 Amazon Technologies, Inc. Dynamic response signing capability in a distributed system
CN105763514B (zh) 2014-12-17 2019-11-29 华为技术有限公司 一种处理授权的方法、设备和系统
US9479916B2 (en) 2014-12-31 2016-10-25 Motorola Solutions, Inc. Method and apparatus for providing access to local services and applications to multi-agency responders
US9350556B1 (en) 2015-04-20 2016-05-24 Google Inc. Security model for identification and authentication in encrypted communications using delegate certificate chain bound to third party key
US10044718B2 (en) 2015-05-27 2018-08-07 Google Llc Authorization in a distributed system using access control lists and groups
US10387980B1 (en) 2015-06-05 2019-08-20 Acceptto Corporation Method and system for consumer based access control for identity information
US10122689B2 (en) 2015-06-16 2018-11-06 Amazon Technologies, Inc. Load balancing with handshake offload
US10122692B2 (en) 2015-06-16 2018-11-06 Amazon Technologies, Inc. Handshake offload
US9906558B2 (en) 2015-06-24 2018-02-27 International Business Machines Corporation User managed access scope specific obligation policy for authorization
KR101626723B1 (ko) * 2015-08-27 2016-06-13 목포대학교산학협력단 사물인터넷 기반의 서비스 게이트웨이 및 동작 방법
KR102349454B1 (ko) * 2015-11-06 2022-01-10 삼성전자주식회사 서비스의 이용 권한을 공유하는 방법, 장치 및 기록 매체
US10402549B1 (en) * 2015-12-17 2019-09-03 Symantec Corporation Systems and methods for creating validated identities for dependent users
WO2017131892A1 (en) 2016-01-29 2017-08-03 Google Inc. Device access revocation
CN107612870B (zh) * 2016-07-11 2021-01-05 香港理工大学深圳研究院 物联网设备的委托授权方法、服务器、终端及物联网设备
US10637853B2 (en) 2016-08-05 2020-04-28 Nok Nok Labs, Inc. Authentication techniques including speech and/or lip movement analysis
US10769635B2 (en) 2016-08-05 2020-09-08 Nok Nok Labs, Inc. Authentication techniques including speech and/or lip movement analysis
US10116440B1 (en) 2016-08-09 2018-10-30 Amazon Technologies, Inc. Cryptographic key management for imported cryptographic keys
JP6882641B2 (ja) * 2016-08-23 2021-06-02 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
US10223541B2 (en) * 2017-01-24 2019-03-05 Salesforce.Com, Inc. Adaptive permission token
US11868995B2 (en) 2017-11-27 2024-01-09 Nok Nok Labs, Inc. Extending a secure key storage for transaction confirmation and cryptocurrency
US11831409B2 (en) 2018-01-12 2023-11-28 Nok Nok Labs, Inc. System and method for binding verifiable claims
US11133929B1 (en) 2018-01-16 2021-09-28 Acceptto Corporation System and method of biobehavioral derived credentials identification
US11367323B1 (en) 2018-01-16 2022-06-21 Secureauth Corporation System and method for secure pair and unpair processing using a dynamic level of assurance (LOA) score
US11115392B1 (en) * 2018-03-07 2021-09-07 Turbo Business Suite LLC Consumer-authorized controlled distribution of trusted source data
US11455641B1 (en) 2018-03-11 2022-09-27 Secureauth Corporation System and method to identify user and device behavior abnormalities to continuously measure transaction risk
US11005839B1 (en) 2018-03-11 2021-05-11 Acceptto Corporation System and method to identify abnormalities to continuously measure transaction risk
KR102289138B1 (ko) * 2019-01-30 2021-08-12 현대오토에버 주식회사 블록체인 기반 공유서비스 제공 시스템 및 그 방법
US11792024B2 (en) 2019-03-29 2023-10-17 Nok Nok Labs, Inc. System and method for efficient challenge-response authentication
US11096059B1 (en) 2019-08-04 2021-08-17 Acceptto Corporation System and method for secure touchless authentication of user paired device, behavior and identity
US10922631B1 (en) 2019-08-04 2021-02-16 Acceptto Corporation System and method for secure touchless authentication of user identity
US10824702B1 (en) 2019-09-09 2020-11-03 Acceptto Corporation System and method for continuous passwordless authentication across trusted devices
US10951606B1 (en) 2019-12-04 2021-03-16 Acceptto Corporation Continuous authentication through orchestration and risk calculation post-authorization system and method
US11329998B1 (en) 2020-08-31 2022-05-10 Secureauth Corporation Identification (ID) proofing and risk engine integration system and method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030097655A1 (en) 2001-11-21 2003-05-22 Novak Robert E. System and method for providing conditional access to digital content
US20060080546A1 (en) * 2004-08-31 2006-04-13 Brannon Karen W System and method for regulating access to objects in a content repository

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4868877A (en) * 1988-02-12 1989-09-19 Fischer Addison M Public key/signature cryptosystem with enhanced digital signature certification
US5596576A (en) * 1995-11-03 1997-01-21 At&T Systems and methods for sharing of resources
US6892307B1 (en) * 1999-08-05 2005-05-10 Sun Microsystems, Inc. Single sign-on framework with trust-level mapping to authentication requirements
JP2002108840A (ja) * 2000-09-28 2002-04-12 Toshiba Corp 分散型注文受付システム、受付サーバ、コンテンツサーバ、分散型注文受付方法及びコンピュータプログラム製品
JP2002278839A (ja) * 2001-03-15 2002-09-27 Sony Corp データアクセス管理システム、メモリ搭載デバイス、およびデータアクセス管理方法、並びにプログラム記憶媒体
JP2002278838A (ja) * 2001-03-15 2002-09-27 Sony Corp メモリアクセス制御システム、デバイス管理装置、パーティション管理装置、メモリ搭載デバイス、およびメモリアクセス制御方法、並びにプログラム記憶媒体
US7085232B1 (en) * 2001-03-29 2006-08-01 Cisco Technology, Inc. ARQ in a point to multipoint network
US6601230B2 (en) * 2001-04-05 2003-07-29 Agilent Technologies, Inc. Low power circuit design through judicious module selection
US20020147929A1 (en) * 2001-04-10 2002-10-10 Rose Mark E. Access control for distributed content servers
US7305701B2 (en) * 2001-04-30 2007-12-04 Microsoft Corporation Methods and arrangements for controlling access to resources based on authentication method
US7353281B2 (en) * 2001-08-06 2008-04-01 Micron Technology, Inc. Method and system for providing access to computer resources
US7406519B2 (en) * 2001-11-13 2008-07-29 Microsoft Corporation Method and system for locking resources in a distributed environment
US20040019801A1 (en) 2002-05-17 2004-01-29 Fredrik Lindholm Secure content sharing in digital rights management
US7472171B2 (en) * 2002-06-21 2008-12-30 Jpmorgan Chase Bank, National Association Method and system for determining receipt of a delayed cookie in a client-server architecture
US7512782B2 (en) * 2002-08-15 2009-03-31 Microsoft Corporation Method and system for using a web service license
JP2004164299A (ja) 2002-11-13 2004-06-10 Nec Corp コンテンツ利用システムおよび方法ならびにサーバ
KR100493900B1 (ko) 2003-08-21 2005-06-10 삼성전자주식회사 사용자간 콘텐츠에 대한 권한정보의 공유방법
JP2005157881A (ja) 2003-11-27 2005-06-16 Canon Inc サーバ端末装置、クライアント端末装置、オブジェクト管理システム、オブジェクト管理方法、コンピュータプログラム及び記録媒体
US7685206B1 (en) * 2004-02-12 2010-03-23 Microsoft Corporation Authorization and access control service for distributed network resources
JP2006221506A (ja) 2005-02-14 2006-08-24 Hitachi Software Eng Co Ltd ユーザパスワード認証システムにおける権限委譲方法
US8775586B2 (en) * 2005-09-29 2014-07-08 Avaya Inc. Granting privileges and sharing resources in a telecommunications system
JP4766249B2 (ja) 2006-03-01 2011-09-07 日本電気株式会社 トークン譲渡方法、トークン譲渡システム及び権限認証許可サーバ
US7925023B2 (en) * 2006-03-03 2011-04-12 Oracle International Corporation Method and apparatus for managing cryptographic keys
KR20080046345A (ko) * 2006-11-22 2008-05-27 삼성전자주식회사 휴대용 단말기의 메모리 절약 장치 및 방법
US8656472B2 (en) * 2007-04-20 2014-02-18 Microsoft Corporation Request-specific authentication for accessing web service resources
CN101222432B (zh) * 2008-01-23 2011-08-24 中兴通讯股份有限公司 一种资源接纳控制的方法
US8402508B2 (en) * 2008-04-02 2013-03-19 Microsoft Corporation Delegated authentication for web services
US8776204B2 (en) 2010-03-12 2014-07-08 Alcatel Lucent Secure dynamic authority delegation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030097655A1 (en) 2001-11-21 2003-05-22 Novak Robert E. System and method for providing conditional access to digital content
US20060080546A1 (en) * 2004-08-31 2006-04-13 Brannon Karen W System and method for regulating access to objects in a content repository

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190040225A (ko) * 2016-09-02 2019-04-17 아싸 아브로이 에이비 접근을 제어하기 위한 열쇠 위임
KR102376196B1 (ko) 2016-09-02 2022-03-18 아싸 아브로이 에이비 접근을 제어하기 위한 열쇠 위임

Also Published As

Publication number Publication date
CN102792311A (zh) 2012-11-21
US8776204B2 (en) 2014-07-08
JP2013522722A (ja) 2013-06-13
EP2545482B1 (en) 2018-07-25
JP5635133B2 (ja) 2014-12-03
CN102792311B (zh) 2015-07-29
US20110225643A1 (en) 2011-09-15
EP3396574A1 (en) 2018-10-31
EP3396574B1 (en) 2021-05-26
EP2545482A1 (en) 2013-01-16
KR20120128674A (ko) 2012-11-27
WO2011112345A1 (en) 2011-09-15

Similar Documents

Publication Publication Date Title
KR101560440B1 (ko) 안전한 동적 권한 위임을 위한 방법 및 장치
EP3913854B1 (en) Methods and systems for pki-based authentication
US7032110B1 (en) PKI-based client/server authentication
US8621598B2 (en) Method and apparatus for securely invoking a rest API
JP4886508B2 (ja) 既存のsslセッションを中断することなく証明書ベースの認証にステップアップするための方法及びシステム
KR100872099B1 (ko) 컴퓨터 그리드에 대한 싱글-사인-온 액세스를 위한 방법 및시스템
US7900247B2 (en) Trusted third party authentication for web services
JP5602165B2 (ja) ネットワーク通信を保護する方法および装置
CN112532599B (zh) 一种动态鉴权方法、装置、电子设备和存储介质
US11622276B1 (en) Systems and method for authentication and authorization in networks using service based architecture
Shingala Json web token (jwt) based client authentication in message queuing telemetry transport (mqtt)
Aiash et al. An integrated authentication and authorization approach for the network of information architecture
Gajek et al. Stronger TLS bindings for SAML assertions and SAML artifacts
Schardong et al. Post-Quantum Electronic Identity: Adapting OpenID Connect and OAuth 2.0 to the Post-Quantum Era
Olson et al. Trust negotiation as an authorization service forweb services
Kurnikov et al. Using safekeeper to protect web passwords
Sudhakar Techniques for securing rest
Deeptha et al. Extending OpenID connect towards mission critical applications
Jeong et al. Java-based single sign-on library supporting SAML (Security Assertion Markup Language) for distributed Web services
Rajathi et al. Practical Implementation and Analysis of TLS Client Certificate Authentication
Hosseyni et al. Formal security analysis of the OpenID FAPI 2.0 Security Profile with FAPI 2.0 Message Signing, FAPI-CIBA, Dynamic Client Registration and Management: technical report
Li A Capability-based System to Enforce Context-aware Permission Sequence
Fleischer et al. Information Assurance for Global Information Grid (GIG) Net-Centric Enterprise Services
Hendrickson Web services security: A proposed architecture for interdomain trust relationship
Talaviya et al. Security Assessment OAuth 2.0 System

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180918

Year of fee payment: 4