KR101932825B1 - 하나 이상의 정책 핸들러를 이용하여 멀티팩터 인증 정책 시행을 가능하게 하기 위한 시스템 및 방법 - Google Patents

하나 이상의 정책 핸들러를 이용하여 멀티팩터 인증 정책 시행을 가능하게 하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR101932825B1
KR101932825B1 KR1020167023302A KR20167023302A KR101932825B1 KR 101932825 B1 KR101932825 B1 KR 101932825B1 KR 1020167023302 A KR1020167023302 A KR 1020167023302A KR 20167023302 A KR20167023302 A KR 20167023302A KR 101932825 B1 KR101932825 B1 KR 101932825B1
Authority
KR
South Korea
Prior art keywords
policy
handler
sub
policy handler
factor authentication
Prior art date
Application number
KR1020167023302A
Other languages
English (en)
Other versions
KR20160113247A (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 KR20160113247A publication Critical patent/KR20160113247A/ko
Application granted granted Critical
Publication of KR101932825B1 publication Critical patent/KR101932825B1/ko

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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
    • 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/2105Dual mode as a secondary aspect
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/082Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Processing Of Solid Wastes (AREA)

Abstract

하나 이상의 정책 핸들러를 이용하여 멀티팩터 인증 정책 시행을 가능하게 하기 위한 방법, 장치, 시스템 및 제조물이 개시된다. 분산 환경에서 글로벌 정책을 관리하기 위한 예시적인 제1 정책 핸들러는 제1 정책 핸들러에 의해 시행될 수 있는 글로벌 정책의 제1 하위 정책을 식별하기 위한 파서 및 제1 하위 정책에 서명하기 위한 입증기를 포함한다. 예시적인 제1 정책 핸들러는 글로벌 정책의 서명 상태에 기초하여 글로벌 정책을 제2 정책 핸들러로 전송할지 여부를 판단하고, 글로벌 정책의 서명 상태가 서명되지 않은 제2 하위 정책을 표시할 때 글로벌 정책을 제2 정책 핸들러로 전송하기 위한 감독기를 더 포함한다.

Description

하나 이상의 정책 핸들러를 이용하여 멀티팩터 인증 정책 시행을 가능하게 하기 위한 시스템 및 방법{SYSTEMS AND METHODS TO FACILITATE MULTI-FACTOR AUTHENTICATION POLICY ENFORCEMENT USING ONE OR MORE POLICY HANDLERS}
본 발명은 일반적으로 컴퓨팅 보안에 관한 것으로서, 구체적으로는 하나 이상의 정책 핸들러를 이용하여 멀티팩터 인증 정책 시행을 가능하게 하기 위한 시스템 및 방법에 관한 것이다.
최근에, 클라이언트의 보안은 현재의 클라이언트-서버 모델에서 약한 링크인 것으로 입증되었다. 현재의 클라이언트-서버 모델은 통상적으로 인증 정책을 관리하는 기업 서버 및 각각의 클라이언트 노드 상에서 국지적으로 인증 정책을 시행하는 하나 이상의 클라이언트 노드를 포함한다. 사용자는 먼저 그 자신을 인증함으로써 클라이언트 노드를 통해 자원에 대한 액세스를 요청할 수 있다. 사용자 이름 및 대응하는 패스워드와 같은 보안 증명이 수십 년 동안 사용되었지만, 현재는 사용자가 수백 개는 아니더라도 수십 개의 패스워드를 관리해야 할 것으로 예상되는 유용성 문제를 내포한다. 대안적인 또는 추가적인 해결책은 생체 측정, 웨어러블 및/또는 터치 감지 입력 장치를 이용하여 사용자를 인증하는 것을 필요로 한다.
도 1은 멀티팩터 인증 정책 시행을 가능하게 하기 위한 본 발명의 가르침에 따라 구성되는 예시적인 분산 컴퓨팅 환경의 개략도이다.
도 2 및 3은 도 1의 예시적인 클라이언트 환경에서 피제어 자원에 대한 액세스를 제어하도록 실행될 수 있는 의사 코드를 포함하는 예시적인 멀티팩터 인증 정책을 나타낸다.
도 4는 도 1의 예시적인 정책 핸들러의 예시적인 구현의 개략도이다.
도 5는 도 1의 분산 컴퓨팅 환경에서 멀티팩터 인증 정책을 프로비저닝하도록 실행될 수 있는 예시적인 머신 판독 가능 명령어의 흐름도 표현이다.
도 6은 멀티팩터 인증 정책 시행을 가능하게 하도록 실행될 수 있는 예시적인 머신 판독 가능 명령어의 흐름도 표현이다.
도 7은 도 1의 분산 컴퓨팅 환경에서 멀티팩터 인증 정책을 프로비저닝하도록 실행될 수 있는 예시적인 머신 판독 가능 명령어의 흐름도 표현이다.
도 8은 도 1의 분산 컴퓨팅 환경에서 멀티팩터 인증 정책을 시행하도록 실행될 수 있는 예시적인 머신 판독 가능 명령어의 흐름도 표현이다.
도 9는 도 1의 예시적인 정책 관리자 및/또는 도 1 및/또는 4의 예시적인 정책 핸들러를 각각 구현하도록 도 5-8의 예시적인 머신 판독 가능 명령어를 실행할 수 있는 예시적인 프로세서 플랫폼의 개략도이다.
본 명세서에서 개시되는 시스템, 방법, 장치 및/또는 제조물은 클라이언트 환경에서 클라이언트 환경 내에 분산된 하나 이상의 정책 핸들러를 이용하여 멀티팩터 인증 정책의 관리를 가능하게 한다. 멀티팩터 인증(MFA)은 간단한 패스워드에 대한 추가적인 또는 대안적인 사용자 인증 접근법이다. 멀티팩터 인증을 시행하는 시스템은 사용자가 요청된 피제어 자원에 액세스할 수 있기 전에 사용자 이름/패스워드, 생체 측정, 웨어러블 및/또는 터치 감지 입력 장치와 같은 다수의 보안 증명을 요구할 수 있다. (때때로 "글로벌 정책"으로 지칭되는) MFA 정책은 예로서 논리곱(AND) 및/또는 논리합(OR) 연산자를 이용하여 조합될 수 있는 하위 정책(예로서, 보안 증명, 상황 요구 등과 같은 팩터)의 집합이다. 예로서, 2개의 정책을 포함하는 MFA 정책의 준수는 (1) 지문 판독기로부터의 센서 입력에 대응하는 제1 팩터, OR (2) 카메라로부터의 센서 입력에 대응하는 제2 팩터 AND 사용자 이름/패스워드 조합에 대응하는 제3 팩터를 충족시킴으로써 판단될 수 있다. 클라이언트 환경에서의 MFA 정책의 관리는 MFA 정책을 클라이언트 환경에 프로비저닝(예로서, 배치, 제공 등)한 후에 클라이언트 환경의 제어 하의 자원에 대한 액세스가 요청될 때 MFA 정책을 시행하는 것을 포함한다. 일부 예에서, 하위 정책은 피제어 자원에 대한 액세스를 요청하고 있는 사용자에 대한 인증의 상이한 레벨(들) 또는 타입(들)에 관련된다. 하위 정책은 그의 보안 증명(예로서, 사용자 이름/패스워드 조합과 같이 사용자가 알고 있는 무언가, 스마트 카드와 같이 사용자가 소유하는 무언가 및/또는 생체 측정 특성과 같이 사용자가 드러내는 무언가)을 상이한 강도 레벨에 기초하여 처리한다. 예로서, 보안 증명을 검증하기 위한 정책 또는 하위 정책은 센서로부터의 입력이 준수에 대한 임계치를 충족시키는지를 검사하기 위한 제1 하위 정책, 센서가 최소 보안 강도 기준을 충족시키는지를 검사하기 위한 제2 하위 정책, 및 보안 증명이 신뢰되는 센서에서 획득되었는지를 검사하기 위한 제3 하위 정책을 포함할 수 있다. 따라서, 정책 및/또는 하위 정책은 추가 하위 정책을 포함할 수 있다. 예로서, 위의 예에서, 제1 정책 또는 하위 정책은 허가된 지문 서명과 매칭시키기 위한 지문 스캔을 요구할 수 있다. 제1 정책 또는 하위 정책은 지문 판독기의 보안 강도 레벨을 검사하기 위한 제2 하위 정책 및 지문 판독기가 신뢰되는 지문 판독기인지를 검사하기 위한 제3 하위 정책을 포함할 수 있다. 일부 그러한 예에서, 제1 정책 또는 하위 정책은 제2 및 제3 하위 정책이 먼저 준수되는 것으로 간주되는 경우에만 테스트될 수 있다. 본 명세서에서 사용되는 바와 같이, 피제어 자원은 하나 이상의 관련된 액세스 제어 제한 및/또는 규칙을 갖는 임의의 파일, 폴더, 주변 장치, 센서, 키, 서비스 또는 엔티티일 수 있다. 피제어 자원은 상이한 사람에 대해 상이한 규칙에 의해 처리될 수 있다. 예로서, 제1 사용자는 파일에 액세스할 때 판독 전용 허가를 가질 수 있는 반면, 제2 사용자는 동일 파일에 액세스할 때 완전 제어(예로서, 판독 및/또는 기록) 허가를 가질 수 있다.
본 명세서에서 개시되는 일부 예에서, 정책 관리자는 클라이언트 환경 내에 분산된 정책 핸들러에 MFA 정책을 제공한다. 그러한 예에서, MFA 정책은 정책 핸들러에 의해 프로비저닝 및 시행된다. 일부 예에서, 정책 핸들러는 운영 체제와 같은 소프트웨어, 및/또는 인증을 수행하거나(예로서, 사용자 이름/패스워드 조합 증명을 제공하기 위한 키보드), 생기 테스트를 수행하거나(예로서, 망막 스캔 증명을 제공하기 위한 카메라), 사용자 존재 샘플링을 수행하기 위해(예로서, 근접 증명을 제공하기 위한 NFC-인에이블드 장치) 사용자와 인터페이스하는 센서와 같은 하드웨어/펌웨어 컴포넌트에 의해 구현된다. 일부 예에서, 정책 경화 전략이 정책 핸들러에 적용된다. 경화는 예로서 무허가 멀웨어에 대한 시스템의 취약성을 줄임으로써 시스템을 보호하는 프로세스를 포함한다. 예시적인 정책 경화 전략은 호스트 및/또는 클라이언트 환경의 입출력, 처리 및/또는 메모리를 격리하는 메커니즘을 포함한다. 이러한 피제어 자원 격리 메커니즘은 때때로 신뢰되는 실행 환경(TEE)으로 지칭될 수 있다. 본 명세서에서 개시되는 예에서, 정책 핸들러는 신뢰되는 실행 환경에서 실행될 수 있다. 일반적으로, 정책 핸들러는 (때때로 "입증"으로 지칭되는) 그의 진정성에 대한 입증을 수행할 수 있으며, 따라서 정책 핸들러로부터 획득된 메시지(예로서, 피제어 자원 액세스 요청, 센서 입력 등)가 진정한 메시지로서 처리될 수 있는 것을 보증할 수 있다.
일부 예에서, 클라이언트 환경에서 정책 핸들러를 구현하기 위해 상이한 기술이 이용될 수 있다. 예로서, 인텔(등록상표) 기술은 "관리성 엔진(ME)", "수렴 보안 엔진(CSE)", "보안 요소 컴포넌트(SEC)", "샤비(Chaabi)", "소프트웨어 가드 확장(SGX)", "가상화 기술(VT-X)" 및/또는 "신뢰 실행 기술(TXT)"을 포함한다. 일부 예에서, ARM 아키텍처에 의해 정의되는 "트러스트존(TrustZone)" 기술은 구글(등록상표) "트러스티(Trusty)" 운영 체제와 연계하여 사용될 수 있는 ARM 아키텍처 정의 트러스트존 기술과 연계하여 사용될 수 있다. 또한, 다른 예에서, 다양한 신뢰되는 OS 시스템을 실행하는 클라우드 서버(예로서, SE-Linux)가 사용될 수 있다.
일부 예에서, 예로서 정책 핸들러 및/또는 정책 핸들러와 통신하는 센서의 상이한 레벨의 보안 강도(예로서, 정책 경도) 및/또는 기능에 기초하여 정책 핸들러의 계층구조를 구축하기 위해 상이한 TEE 기술의 세트 또는 서브세트가 사용될 수 있다. 예로서, 제1 계층의 정책 핸들러(예로서, 계층 1 정책 핸들러)는 제1 보안 강도를 적용하는 주변 장치(예로서, 키보드, 지문 판독기, 카메라 등)에 대응할 수 있고, 제2 계층의 정책 핸들러(예로서, 계층 2 정책 핸들러)는 제2 보안 강도를 적용하는 관리성 엔진에 대응할 수 있고, 제3 계층 정책 핸들러(계층 3 정책 핸들러)는 제3 보안 강도를 적용하는 운영 체제에 대응할 수 있다. 그러한 예에서, 정책 핸들러의 계층구조는 (때때로 본 명세서에서 "리프 노드"로 지칭되는) 제1 계층 정책 핸들러를 계층구조의 하나의 단부에, (때때로 본 명세서에서 "루트 노드"로 지칭되는) 제3 계층 정책 핸들러를 계층구조의 나머지 단부에 그리고 (때때로 본 명세서에서 "중간 노드"로 지칭되는) 제2 계층 정책 핸들러를 제1 계층 정책 핸들러와 제3 계층 정책 핸들러 사이에 배열할 수 있다. 일부 예에서, 정책 핸들러의 기능 타입 및 보안 강도는 정책 핸들러의 컴포넌트(들)(예로서, 소프트웨어, 하드웨어 및/또는 펌웨어)에 의존할 수 있다.
일부 예에서, MFA 정책은 클라이언트 환경에서 정책 핸들러를 통해 계층적으로 프로비저닝된다. 예로서, 주요 정책 핸들러는 하위 정책 핸들러를 맵핑하고, 맵핑된 클라이언트 토폴로지를 이용하여 MFA 정책을 배포할 수 있다. 본 명세서에서 사용되는 바와 같이, 주요 정책 핸들러는 직접 통신 경로를 갖는 정책 핸들러이다(예로서, 중개 정책 핸들러의 사용 없이 정책 관리자와 직접 통신한다). 하위 정책 핸들러는 정책 관리자에 대한 간접 통신 경로를 갖는 정책 핸들러이다(예로서, 주요 정책 핸들러를 통해(그리고 아마도 하나 이상의 다른 정책 핸들러를 통해) 정책 관리자와 통신한다). 그러나, 응용 및 구성에 따라서는, 클라이언트 환경 내의 임의의 정책 핸들러(예로서, 하나 이상의 제1 계층 정책 핸들러, 하나 이상의 제2 계층 정책 핸들러 및/또는 하나 이상의 제3 계층 정책 핸들러)가 주요 정책 핸들러로서 지정될 수 있다. 정책 핸들러는 클라이언트 환경 내에 국지적으로 그리고/또는 원격적으로 분산될 수 있다. 예로서, 클라이언트 토폴로지 맵은 모든 정책 핸들러를 단일 플랫폼 또는 호스트에 맵핑하고, 모든 정책 핸들러를 클라우드 서비스에 맵핑하고/하거나, 정책 핸들러의 상이한 세트 및/또는 서브세트를 호스트(들) 및/또는 클라우드 서비스(들)의 임의 조합에 맵핑할 수 있다(예로서, 그들과의 통신 경로를 설정할 수 있다). 일부 예에서, 토폴로지 맵은 각각의 정책 핸들러의 기능 타입 및/또는 보안 강도도 포함할 수 있다.
본 명세서에서 개시되는 일부 예에서, 각각의 정책 핸들러는 MFA 정책을 어떻게 프로비저닝할지를 판단한다(예로서, 국지적으로 판단한다). 예로서, MFA 정책이 프로비저닝되고 있을 때, 정책 핸들러는 MFA 정책에 액세스하고, MFA 정책을 파싱하여 정책 핸들러에 의해 시행될 수 있는 MFA 정책의 하나 이상의 하위 정책을 식별하고, 정책 핸들러에 의해 청구되는 것으로서 그 하위 정책에 서명한다. 일부 예에서, 정책 핸들러는 정책 핸들러가 어느 하위 정책(또는 하위 정책들)을 시행할지를 식별하기 위해 하위 정책에 서명함으로써(예로서, 정책 핸들러에 고유한 비공개 키를 첨부함으로써) 하위 정책을 청구한다. 일부 예에서, 정책 핸들러가 하위 정책의 기능 요구와 매칭되고, 하위 정책에 의해 요구되는 최소 보안 강도 기준을 적용할 수 있을 때, 정책 핸들러는 하위 정책을 청구한다. 예로서, 위치 정책을 시행하기 위한 하위 정책은 위치 기반 센서(예로서, 글로벌 포지셔닝 시스템 센서)에 대한 액세스를 갖지 않는 정책 핸들러에 의해 청구될 수 없다.
일부 예에서, 정책 핸들러는 하위 정책을 청구할 때 그의 증명을 입증하기 위해 함의 증거(entailment evidence)를 이용할 수 있다. 예로서, 함의 증거(예로서, 신뢰 체인)는 통신 경로의 방법 또는 구성을 지정 또는 식별할 수 있으며, 따라서 함의의 독립적인 검토를 이용하여 통신 경로의 신뢰성 특징을 판단할 수 있다. 함의는 하나 이상의 제조자 증명서, 하나 이상의 서명된 코드, 하나 이상의 인증 코드, 하나 이상의 적하 목록, 하나 이상의 "재료표" 및/또는 화이트리스트와 같은 신뢰 체인 증거를 지칭할 수 있다. 함의는 스트링, 균일 자원 식별자, 객체 식별자 등과 같은 열거 메커니즘으로서 표현될 수 있다. 예로서, 레벨 1 하위 정책은 관련된 정책 핸들러가 그 하위 정책을 청구할 수 있기 전에 센서에 대한 최소 펌웨어 버전을 식별할 수 있다. 이어서, 정책 핸들러는 그의 함의를 제공하여 하위 정책에 대한 그의 청구를 정당화할 수 있다.
이어서, 정책 핸들러는 청구된 하위 정책을 포함하는 MFA 정책을 클라이언트 환경 내의 다른 정책 핸들러로 전송할 수 있다. 이러한 방식으로, MFA 정책은 클라이언트 환경 내의 정책 핸들러로 프로비저닝(예로서, 배포)된다. 일부 예에서, 정책 핸들러는 MFA 정책을 전송할 때 클라이언트 환경의 토폴로지 맵을 이용한다. 예로서, 정책 핸들러는 그와 접속된 하나 이상의 정책 핸들러를 식별하고, 그에 따라 MFA 정책을 전송할 수 있다. 추가로 또는 대안으로서, 정책 핸들러는 MFA 정책 내의 서명되지 않은 하위 정책을 식별하고, 하나 이상의 서명되지 않은 하위 정책을 시행할 수 있는 정책 핸들러로 MFA 정책을 전송할 수 있다. 예로서, 정책 핸들러는 서명되지 않은 하위 정책에 의해 정의되는 기능 요구 및 최소 보안 강도 기준을 판단하고, 기능 요구 및 최소 보안 강도 기준을 충족시키는 정책 핸들러를 식별할 수 있다. 이어서, 예시적인 정책 핸들러는 MFA 정책을 전송하는 데 사용되는 접속 경로에 기초하여 실행 계획을 생성하기 위해 토폴로지 맵을 이용할 수 있다.
MFA 정책 관리는 또한 피제어 자원(예로서, 피보호 자원)에 대한 요청이 획득될 때 MFA 정책을 시행하는 것을 포함한다. 본 명세서에서 개시되는 예는 MFA 정책의 하위 정책이 충족되는지를 판단함으로써 MFA 정책을 시행한다. 즉, 개시되는 예의 정책 핸들러는 그가 청구한 특정 하위 정책(또는 하위 정책들)이 충족되는지를 평가하고, 평가(들)의 결과를 이용하여, 요청된 피제어 자원에 대한 액세스를 허가 또는 거절할지를 판단한다. 일부 예에서, 하위 정책의 평가는 제1 센서 입력을 제2 센서 입력과 비교하는 것, 제1 센서 입력을 알려진 허가된 입력 값과 비교하는 것, 제1 센서 입력에 대해 부울 검사를 적용하는 것 등을 포함한다. 일부 예에서, 평가 정책 핸들러가 그가 하위 정책을 평가하는 데 적합한 정책 핸들러가 아닌 것으로(예로서, 기능 요구 및/또는 최소 보안 강도 기준을 충족시키지 못하는 것으로) 판단하는 경우, 정책 핸들러는 보안 증명을 처리를 위해 다른 정책 핸들러로 전송한다. 이러한 방식으로, MFA 정책은 클라이언트 환경 내의 정책 핸들러에 의해 시행된다. MFA 정책이 충족될 때(예로서, 성공적인 평가가 발생할 때), 요청된 피제어 자원에 대한 액세스가 허가된다. 일부 예에서, MFA 정책이 충족되지 않는 경우(예로서, 보안 증명이 적어도 하나의 하위 정책에 실패하는 경우(예로서, 팩터의 논리 조합이 참 문장을 산출하지 못한 경우)), 요청된 피제어 자원에 대한 액세스는 거절된다. 일부 예에서, 피제어 자원 액세스 요청의 결과가 클라이언트 환경 내의 다른 정책 핸들러에 제공될 수 있다. 일부 예에서, 피제어 자원 액세스 요청 판단의 상태의 변화도 다른 정책 핸들러로 시그널링될 수 있다. 예로서, 피제어 자원이 임계 시간 양 동안 유휴 상태인 경우, 피제어 자원에 대한 액세스가 취소될 수 있다.
클라이언트 환경 내의 하나 이상의 센서는 일부 예에서 사용자와 관련된 보안 증명을 제공하는 데 사용된다. 일부 예에서, 센서는 호스트의 플랫폼(예로서, 하드웨어, 펌웨어 및/또는 운영 체제)의 시스템 상태를 모니터링한다. 예로서, 시스템 센서는 시각, 요일, 호스트의 물리 또는 논리 위치, 호스트의 이동 여부, 플랫폼 온도 및/또는 클라이언트 환경의 다른 특성을 판단할 수 있다. 일부 예에서, 논리 위치는 각각의 기술에 대한 근사 접속 범위 내에서 추정될 수 있다. 예로서, 관리 포트를 포함하는 이더넷 스위치 또는 관리성을 갖는 와이파이 라우터는 스위치 또는 라우터 위치를 보고할 수 있으며, 따라서 엔드포인트 시스템 위치가 추정될 수 있다. 일부 그러한 예에서, 시스템 센서는 사용자를 하나 이상의 시스템 상태(예로서, 로그인, 액세스 허가, 액세스 거절, 액세스 취소 등)와 상관시키는 확률 모델을 구축하는 데 사용된다.
일부 예에서, 클라이언트 환경과 통신하는 센서로부터의 입력은 상황 기반 판단을 행하는 데 사용되는 부가 상황을 제공한다. 예로서, NFC 라디오와 같은 일부 센서로부터의 입력은 특정 사용자에 고유한 송신을 검출할 수 있다. NFC 라디오와 같은 센서의 경우, 의도된 사용자가 송신기를 소지하고 있을 확률이 높다. 예로서, 손목시계 또는 스마트폰이 고유 값을 NFC 채널을 통해 NFC 라디오로 전송할 수 있다. 일부 예에서, 블루투스 저에너지 라디오("BLE")가 NFC 라디오의 대안으로 사용될 수 있다. BLE는 NFC와 유사한 보안 특성을 갖지만, NFC보다 비교적 더 큰 통신 범위를 포함한다. 예로서, BLE는 멀티미터 범위 내에서 측정될 수 있는 반면, NFC는 밀리미터의 통신 범위만을 가질 수 있다. 적외선 및/또는 초음파 신호는 센티미터의 범위 내에서 측정될 수 있으며, 사용자가 페어링 장치(예로서, 라디오)를 소지할 것을 요구하지 않을 수 있다. 예로서, 발광기를 포함하는 적외선 센서는 광빔을 방송할 수 있고, 적외선 센서는 반사된 적외선 광을 흡수하여, 최근에 인증된 사용자일 것으로 추정되는 객체의 존재를 감지할 수 있다. 일부 예에서, 마이크 어레이는 최근에 인증된 사용자에 관하여 일관되게 유지되는 음성 패턴을 감지하고/하거나, 감지된 음성 프린트에 기초하여 사용자를 고유하게 식별할 수 있다. 또 다른 예에서, 카메라는 객체 및 패턴 인식을 이용하여 사용자를 식별한다. 가속도계 또는 글로벌 포지셔닝 시스템과 같은 다른 센서 입력이 추가로 대안으로 포함될 수 있다.
일부 예에서, MFA 정책 또는 하위 정책은 정책 핸들러가 청구된 하위 정책을 평가하기 전에 정책 핸들러가 충족시켜야 할 요구를 포함한다. 예로서, 하위 정책은 예시적인 정책 핸들러가 MFA 정책 시행을 개선하는 데 사용하는 실행 규준(예로서, 전력, 지연, 계산 등)을 지정할 수 있다. 예로서, 센서가 더 높은 전력 레벨에서 사용자 존재의 더 정밀한 판독을 전달할 수 있는 경우, 센서를 제어하는 정책 핸들러는 센서가 사용자 존재를 처리하는 동안 더 높은 전력 레벨로 전이하고, 사용자 존재의 처리가 행해지면 이전의 전력 레벨로 복귀하게 할 수 있다.
도 1은 클라이언트 환경(100) 내에 분산된 정책 핸들러를 이용하여 멀티팩터 인증 정책이 관리되는 예시적인 클라이언트 환경(100)의 개략도이다. 도 1의 예시적인 클라이언트 환경(100)은 정책 관리자(102) 및 호스트(104)를 포함한다. 도시된 예에서, 정책 관리자(102)는 하나 이상의 장치를 이용하여 구현된다. 유사하게, 호스트(104)(때때로, "호스트 머신", "클라이언트 플랫폼", "클라이언트 노드" 또는 "컴퓨팅 장치"로 지칭됨)는 하나 이상의 장치를 이용하여 구현된다. 예로서, 정책 관리자(102) 및/또는 호스트(104)는 서로 통신하는 디스크 어레이 및/또는 하나 이상의 워크스테이션(예로서, 데스크탑 컴퓨터, 워크스테이션 서버, 랩탑, x86 장치, 리눅스 장치 등)을 포함할 수 있다. 도 1의 도시된 예에서, 정책 관리자(102)는 네트워크(106)로 표시되는 하나 이상의 유선 및/또는 무선 네트워크를 통해 호스트(104)와 선택적으로 통신한다. 예시적인 네트워크(106)는 예로서 하나 이상의 데이터 버스, 하나 이상의 근거리 네트워크(LAN), 하나 이상의 무선 LAN, 하나 이상의 셀룰러 네트워크, 인터넷 등을 포함하는 임의의 적절한 유선 및/또는 무선 네트워크(들)를 이용하여 구현될 수 있다. 본 명세서에서 사용되는 바와 같이, 그의 변형을 포함하는 "통신"이라는 표현은 직접 통신 및/또는 하나 이상의 중개 컴포넌트를 통한 간접 통신을 포함하며, 직접적인 물리(예로서, 유선) 통신 및/또는 꾸준한 통신을 요구하는 것이 아니라, 주기적인 간격, 스케줄링된 간격, 수동 간격, 비주기적 간격 및/또는 일회성 이벤트의 선택적 통신을 더 포함한다.
도 1의 도시된 예에서, 정책 관리자(102)는 허가 서비스의 집중 관리를 가능하게 하고 클라이언트 환경(100) 내의 자원(예로서, 피제어 자원)의 추적 및 제어를 용이하게 하는 서버 및/또는 데이터베이스에 의해 구현된다. 일부 예에서, 정책 관리자(102)는 하나 이상의 MFA 정책 및/또는 하위 정책(예로서, 예시적인 MFA 정책(108))을 저작 및/또는 프로비저닝하기 위한(예로서, 이용 가능하게 하거나 제공하기 위한) 관리성 콘솔 또는 호스트 애플리케이션이다. 일부 예에서, 정책 관리자(102)는 정책 관리 플러그인에 의해 구현된다. 예로서, 정책 관리자(102)는 정책 서버에 의해 실행되는 보안 및/또는 관리성 콘솔을 위한 정책 관리 플러그인에 의해 구현될 수 있다. 일부 예에서, 정책 관리자(102)는 사용자가 클라이언트 환경(100)에서 적용할 MFA 정책을 관리하는 것을 가능하게 하는 하나 이상의 인터페이스를 포함한다. 예로서, 정책 관리자(102)는 사용자(예로서, 정보 기술(IT) 관리자, 시스템 관리자, 엔티티, 비즈니스, 조직 등)가 정책 관리자(102)와 통신하는 예시적인 저장소(126) 내에 MFA 정책 및/또는 하위 정책을 저장하는 것을 가능하게 하는 인터페이스를 포함할 수 있다. 예시적인 MFA 정책은 호스트(104)를 통해 액세스 가능한 피제어 자원에 대한 액세스를 제어하고/하거나 액세스를 우선순위화하는 데 사용될 수 있다.
도 1의 도시된 예에서, MFA 정책(108)은 부울 논리에 의해 함께 조합되는 하위 정책(예로서, 정책 A, 정책 B, 정책 C, 정책 D)의 집합이다. 예로서, MFA 정책(108)은 제공시에 피제어 자원에 대한 액세스를 허가하는 한 세트의 보안 증명(예로서, 팩터)을 정의할 수 있다. 아래의 식 1은 예시적인 MFA 정책(108)의 예시적인 구현의 예시적인 표현이다.
식 1: P = (A || B) && C && D
위의 식 1에서, MFA 정책(108)(P)은 하위 정책(예로서, 정책 A, 정책 B, 정책 C, 정책 D)의 논리 조합이다. 식 1에서, "||"는 논리 OR 연산자이고, "&&"는 논리 AND 연산자이다. 예시적인 식 1은 MFA 정책 준수에 대한 임계치를 정의하는 MFA 정책 테스트를 나타낸다. 따라서, 위의 식 1을 이용하여, MFA 정책(108)은 예시적인 정책 A가 충족되는 경우(예로서, 사용자가 허가된 NFC 신호 서명을 NFC 라디오에 제공하는 경우) OR 예시적인 정책 B가 충족되는 경우(예로서, 사용자가 예시적인 정책 B의 제1 하위 정책을 충족시키기 위한 유효 지문 서명을 제공하는 경우 OR 사용자가 예시적인 정책 B의 제2 하위 정책을 충족시키기 위한 유효 보안 토큰 AND 검증된 얼굴 패턴을 제공하는 경우) 피제어 자원에 대한 액세스를 허가한다. 정책 A OR 정책 B의 충족과 더불어, 도 1의 예시적인 MFA 정책(108)은 또한 예시적인 정책 C의 충족(예로서, 사용자가 예시적인 정책 C의 제1 하위 정책을 충족시키기 위해 호스트(104)의 소정 범위(예로서, 임계 범위) 내에 있어야 함 AND 사용자 활동이 예시적인 정책 C의 제2 하위 정책을 충족시키기 위해 임계 기간 동안 유휴 상태가 아니어야 함) AND 예시적인 정책 D의 충족(예로서, 호스트(104)의 와이파이 주소가 허가된 위치에 대응함)을 요구한다.
일부 예에서, MFA 정책(108)은 예로서 상이한 클라이언트 환경에서 시행할 백업 하위 정책 및/또는 대안 하위 정책을 포함하도록 구성된다. 예로서, 클라이언트 환경이 (예로서, 정책 A를 평가하기 위한) NFC 라디오를 포함하지 않는 경우, 정책 B가 여전히 사용자를 허가하는 데 사용될 수 있다. 따라서, MFA 정책은 클라이언트 환경이 각각의 하위 정책을 시행하기 위한 센서(들)를 포함하는지에 기초하여 교정될 수 있다. 따라서, 예시적인 MFA 정책(108)은 플랫폼 불가지론 표현일 수 있으며, 사용자가 클라이언트 환경(100) 내의 피제어 자원에 대한 액세스를 제어하기 위한 더 적은 MFA 정책을 구성하는 것을 가능하게 할 수 있다.
일부 예에서, 정책 준수(예로서, MFA 정책이 충족되는지)의 판단은 하위 정책에 의해 설정된 최소 보안 강도 기준에 기초하여 하위 정책을 (때때로 본 명세서에서 정책 레벨로서 지칭되는) 상이한 레벨로서 평가함으로써 수행될 수 있다. 예로서, NFC 신호 서명이 (예로서, 정책 A에 대해) 허가되는 것을 검증하기 위해, NFC 신호 서명은 3개의 정책 레벨을 준수해야 할 수 있으며, 여기서 레벨 1 하위 정책은 NFC 신호 서명이 신뢰되는 채널을 통해 NFC 라디오로 전송되는지와 관련되고, 레벨 2 하위 정책은 NFC 신호를 수집하는 NFC 라디오가 신뢰되는 환경이고/이거나 신뢰되는 환경을 제공하는지와 관련되고, 레벨 3 하위 정책은 사용자를 성공적으로 인증하도록 조합될 수 있는 팩터의 조합을 지정한다. 도시된 예의 도시된 예시적인 MFA 정책(108)은 3개의 정책 레벨을 포함하지만, MFA 정책 또는 하위 정책은 1개, 2개 또는 4개 등과 같은 임의의 적절한 수의 정책 레벨을 포함할 수 있다.
일부 예에서, MFA 정책(108)은 물리 또는 논리 위치 제한, 지속 사용 제한, 사용자 존재 요구 등과 같은 상황 요구를 포함한다. 일부 그러한 예에서, 피제어 자원에 대한 액세스는 (예로서, 위의 예에서 정책 A 및/또는 정책 B를 충족시키는) 허가된 보안 증명에 의해 판단될 수 있으며, 피제어 자원에 대한 액세스는 상황 하위 정책(예로서, 위의 예에서 정책 C 및 정책 D)이 충족되는(예로서, 하나 이상의 임계치 내에 있는) 동안 허가 상태로 유지될 수 있다. 따라서, 예로서, 사용자 존재 테스트, 생체 측정 특성 테스트 및/또는 위치 테스트와 같은 상황 하위 정책은 예로서 사용자가 보안 위치로부터 다른 위치로 이동하였는지, 사용자가 더 이상 피제어 자원에 액세스하고 있지 않은지 등을 검사함으로써 피제어 자원에 대한 액세스가 허가될 때 추가 보안 레벨을 제공하는 데 유용할 수 있다. 일부 예에서, 상황 하위 정책은 사용자로부터의 정보를 동적으로 표시하고/하거나 보류하는 데 사용된다. 예로서, 웹 기반 허가 스크린은 사용자가 공개 컴퓨터를 통해 피제어 자원에 대한 액세스를 요청할 때 제1 및 제2 증명에 대해 사용자를 프롬프트할 수 있다. 이에 비해, 웹 기반 허가 스크린은 피제어 자원 액세스 요청이 비공개(예로서, 보안) 랩탑을 통해 행해질 때 제1 보안 증명에 대해서만 사용자를 프롬프트할 수 있다. 예로서, MFA 정책(108)은 사용자가 검증된 사용자 이름/패스워드 조합을 제공함으로써 신뢰되는 컴퓨팅 장치(예로서, 개인용 랩탑, 스마트폰, 태블릿 등)로부터 온라인 서비스(예로서, 웹메일 서비스, 소셜 미디어 서비스, 개인 뱅킹 서비스 등)에 액세스할 수 있다는 것을 지정할 수 있다. MFA 정책(108)은 또한 사용자가 신뢰되지 않는 컴퓨팅 장치(예로서, 공개 도서관 컴퓨터 등)로부터 온라인 서비스에 대한 액세스를 요청할 때 허가된 패스워드 AND 유효 보안 토큰을 제공함으로써 그러한 동일 온라인 서비스에 액세스할 수 있다는 것을 지정할 수 있다.
도 1의 도시된 예에서, 호스트(104)는 제1 정책 핸들러(110), 제2 정책 핸들러(111) 및 제3 정책 핸들러(112)와 같은 다수의 정책 핸들러를 포함한다. 전술한 바와 같이, 도 1의 예시적인 제1 정책 핸들러(110), 예시적인 제2 정책 핸들러(111) 및/또는 예시적인 제2 정책 핸들러(112)는 MFA 정책 판단 및 시행을 보호하는 경화된(예로서, 신뢰되는) 실행 환경이다. 일부 예에서, 제1 정책 핸들러(110), 제2 정책 핸들러(111) 및/또는 제3 정책 핸들러(112)는 호스트(104) 내의 하나 이상의 피제어 자원을 격리하는 소프트웨어 컴포넌트(예로서, 운영 체제 에이전트, 드라이버 등) 및/또는 하드웨어/펌웨어 컴포넌트(예로서, 칩셋, 메모리의 보호되는 부분 등)이다. 도 1의 도시된 예에서, 예시적인 제1 정책 핸들러(110)는 계층 3 정책 핸들러이고, 제1 피제어 자원(114)(예로서, 데이터베이스)에 대한 액세스를 보호 및 제한하며, 예시적인 제2 정책 핸들러(111)는 계층 2 정책 핸들러이고, 제1 센서(115)(예로서, NFC 라디오와 같은 센서)에 대한 액세스를 보호 및 제한하며, 예시적인 제3 정책 핸들러(112)는 계층 1 정책 핸들러이고, 제2 센서(116)(예로서, 지문 판독기와 같은 센서)에 대한 액세스를 보호 및 제한한다. 일부 예에서, 정책 관리자(102)는 예로서 정책 관리자(102)에 의해 이용 가능한 MFA 정책(예로서, 예시적인 MFA 정책(108))에 대한 액세스를 보호 및 제한하는 정책 핸들러(예로서, 계층 4 정책 핸들러)일 수도 있다.
도 1의 도시된 예에서, 아래에서 예시적인 구현이 더 상세히 설명되는 제1 정책 핸들러(110), 제2 정책 핸들러(111) 및 제3 정책 핸들러(112)는 클라이언트 환경(100)에서 호스트(104)의 제어하에 정책 핸들러에 대해 MFA 정책을 프로비저닝하는 것을 용이하게 하고, 피제어 자원 액세스가 요청될 때 프로비저닝된 MFA 정책을 시행한다. 도 1의 도시된 예에서, 예시적인 MFA 정책(108)은 클라이언트 환경(100) 내의 제1 통신 경로(129)를 통해 프로비저닝되어, 도 1의 예시적인 제1 정책 핸들러(110)에 의해 보호되는 예시적인 제1 피제어 자원(114)(예로서, 데이터베이스)에 대한 액세스의 제어를 제공한다.
일부 예에서, 제1 정책 핸들러(110), 제2 정책 핸들러(111) 및/또는 제3 정책 핸들러(112)는 호스트 내성(host introspection)을 주기적인 간격으로, 비주기적인 간격으로 및/또는 일회성 이벤트로서 수행하며, 클라이언트 환경(100)의 토폴로지 맵(128)을 맵핑(또는 발견)한다. 본 명세서에서 사용되는 바와 같이, 내성은 정책 핸들러가, 존재할 경우에, 어느 컴포넌트(예로서, 정책 핸들러, 피제어 자원, 센서 등)에 그가 접속되는지를 식별하기 위해 그 자신에게 질의(예로서, 검사)하는 프로세스이다. 도 1의 도시된 예에서, 제1 정책 핸들러(110)는 제2 통신 경로(130)를 호스트(104) 내의 정책 핸들러(예로서, 제2 정책 핸들러(111))에 맵핑하고, 또한 호스트(104) 외부에서 동작하는 정책 핸들러, 예로서 하나 이상의 네트워크(예로서, 네트워크(106)를 통한 클라우드 기반 액세스)를 통해 접속되는 제4 정책 핸들러(118)에 대한 제3 통신 경로(131)를 발견한다. 도 1의 도시된 예에서, 제4 정책 핸들러(118)는 계층 3 정책 핸들러이고, 제2 피제어 자원(120)(예로서, 가상 머신)에 대한 액세스를 보호 및 제한한다. 도 1의 예시적인 제1 정책 핸들러(110)는 발견된 제2 및 제3 통신 경로(130, 131)를 이용하여, 제2 정책 핸들러(111) 및 제4 정책 핸들러(118) 각각에 대해 MFA 정책(108)을 프로비저닝한다. 유사한 프로세스를 이용하여, 제2 정책 핸들러(111), 제3 정책 핸들러(112) 및/또는 제4 정책 핸들러(118)는 제2 및 제3 정책 핸들러(111, 112) 및 제3 및 제4 정책 핸들러(112, 118) 각각 사이에서 제4 및 제5 통신 경로(132, 133)를 맵핑할 수 있다.
일부 예에서, 토폴로지 맵(128)은 상이한 정책 핸들러가 예로서 각각의 정책 핸들러에 고유한 식별자로 내성 요청에 서명함으로써 준비될 수 있다. 일부 예에서, 정책 핸들러는 그의 각각의 통신 경로를 중앙 정책 핸들러(예로서, 예시적인 제1 정책 핸들러(110))로 푸시할 수 있다. 일부 그러한 예에서, 제1 정책 핸들러(110)는 통신 경로를 이용하여, 클라이언트 환경(100)의 토폴로지 맵(128)을 형성한다. 일부 예에서, 정책 핸들러는 각각 토폴로지 맵(128)의 사본을 저장할 수 있다. 일부 예에서, 토폴로지 맵(128)은 정책 핸들러(예로서, 기능 타입 및 보안 강도)와, 존재할 경우에, 정책 핸들러가 보호하고 있는 피제어 자원에 관한 정보를 포함한다.
도시된 도 1의 예시적인 정책 핸들러(110, 111, 112, 118)는 멀티팩터 허가를 수행할 때 센서 입력(예로서, 보안 증명)에 상이한 보안 특성을 적용한다. 일부 그러한 예에서, 정책 핸들러(110, 111, 112, 118)는 예로서 각각의 정책 핸들러(들)의 기능 타입 및 보안 강도에 기초하여 상이한 MFA 정책 및/또는 MFA 정책의 하위 정책을 적용(예로서, 시행)할 수 있다.
예로서, 도 1의 예시적인 제3 정책 핸들러(112)(예로서, 계층 1 정책 핸들러)는 센서 입력에 대해 레벨 1 하위 정책을 적용하는 데 적합한 하드웨어 및/또는 펌웨어 환경일 수 있다. 예로서, 도 1의 제3 정책 핸들러(112)는 사용자에 의해 제공된 보안 증명(예로서, 지문 스캔)이 보안 채널을 통해(예로서, 지문 판독기와 같은 신뢰되는 센서에서) 획득되었는지를 판단할 수 있다. 일부 그러한 예에서, 제3 정책 핸들러(112)는 제2 센서(116)가 신뢰되는 지문 판독기라는 증거로서 그의 함의 증거(예로서, 제조자 증명서 등)를 제공할 수 있다.
도시된 도 1의 예시적인 제2 정책 핸들러(111)(예로서, 계층 2 정책 핸들러)는 예로서 호스트(104) 운영 체제와 무관하게 동작하고 호스트(104) 운영 체제를 통해 액세스되지 못할 수 있는 하드웨어 및/또는 펌웨어 환경일 수 있고/있거나 그러한 환경을 제공할 수 있다. 예로서, 제2 정책 핸들러(111)는 호스트(104)의 주요 처리 피제어 자원과 별개인 처리 피제어 자원을 포함하는 "관리성 엔진" 또는 "보안 구역(security enclave)"을 구현할 수 있다. 일부 그러한 예에서, 제2 정책 핸들러(111)는 예로서 지문 판독기(116)가 최소 보안 강도 기준을 충족시키는지와 관련되는 레벨 2 하위 정책을 적용하는 데 적합할 수 있다. 일부 그러한 예에서, 제2 정책 핸들러(111)는 제2 센서(116)가 레벨 2 하위 정책에 의해 지정된 최소 보안 강도 기준을 충족시킨다는 증거로서 그의 함의 증거(예로서, 서명된 코드 등)를 제공할 수 있다.
일부 예에서, 도 1의 예시적인 제1 정책 핸들러(110)(예로서, 계층 3 정책 핸들러)는 레벨 3 하위 정책을 처리하는 데 적합한 소프트웨어 에이전트에 의해 구현된다. 예로서, 제1 정책 핸들러(110)는 호스트(104)의 운영 체제 환경에서 적용되는 하위 정책을 처리할 수 있다. 일부 예에서, 도 1의 예시적인 제4 정책 핸들러(118)(예로서, 계층 3 정책 핸들러)는 레벨 3 정책을 처리하는 소프트웨어 에이전트에 의해 구현된다. 예로서, 제4 정책 핸들러(118)는 클라우드 서비스에 적용되는 하위 정책을 처리할 수 있다. 도 1의 도시된 예에서, 제1 정책 핸들러(110) 및/또는 제4 정책 핸들러(118)는 예로서 제2 센서(116)로부터 획득된 지문 스캔이 정책 준수에 대한 임계 준수를 충족시키는지를 판단하는 하위 정책 레벨을 적용할 수 있다. 예로서, 제1 정책 핸들러(110)는 센서 입력이 MFA 정책(108)의 정책 A 및/또는 정책 B 및 정책 C 및 정책 D를 충족시키는지를 평가할 수 있다.
도 1의 도시된 예에서, 도 1의 예시적인 정책 관리자(102)는 클라이언트 핸들러(122), 정책 구축기(124) 및 저장소(126)를 포함한다. 도 1의 예시적인 저장소(126)는 예로서 플래시 메모리, 자기 매체, 광학 매체 등과 같이 데이터를 저장하기 위한 저장 장치 및/또는 저장 디스크에 의해 구현될 수 있다. 또한, 예시적인 저장소(126) 내에 저장되는 데이터는 예로서 이진 데이터, 콤마 한정 데이터, 탭 한정 데이터, 구조화된 질의 언어(SQL) 구조 등과 같은 임의의 데이터 포맷을 가질 수 있다. 도 1의 도시된 예에서는 저장소(126)가 단일 데이터베이스로서 도시되지만, 저장소(126)는 임의 수 및/또는 타입(들)의 데이터베이스에 의해 구현될 수 있다.
도 1의 도시된 예에서, 정책 관리자(102)는 클라이언트 환경(100) 내의 정책 핸들러와 인터페이스하기 위한 예시적인 클라이언트 핸들러(122)를 포함한다. 예로서, 클라이언트 핸들러(122)는 네트워크(106)에 주기적인 간격, 스케줄링된 간격, 비주기적 간격 및/또는 일회성 이벤트로 질의하여, 클라이언트 환경(100)을 통해 정책을 전달하는 데 사용할 신뢰되는 정책 핸들러를 포함하는 호스트를 식별할 수 있다. 예로서, 도 1의 클라이언트 핸들러(122)는 제1 정책 핸들러(110)를 내포하는 호스트(104)를 발견할 수 있다. 예시적인 클라이언트 핸들러(122)는 예로서 클라이언트 환경(100)의 정책 핸들러(110, 111, 112, 118)로부터 MFA 정책의 프로비저닝 및/또는 시행에 관한 상태 갱신을 획득할 수 있다. 일부 예에서, 클라이언트 핸들러(122)는 제1 정책 핸들러(110)로부터 토폴로지 맵(128)을 획득한다. 일부 예에서, 정책 관리자(102)는 토폴로지 맵(128)을 이용하여, 예로서 클라이언트 환경(100)에 포함된 정책 핸들러, 센서 및/또는 피제어 자원에 기초하여 MFA 정책을 구성한다.
일부 예에서, 클라이언트 핸들러(122)는 예로서 모니터와 같은 출력 장치를 통해 사용자에게 상태 갱신을 제공한다. 예로서, 클라이언트 핸들러(122)는 프로비저닝이 실패했는지, 프로비저닝이 성공했는지, 피제어 자원 액세스가 요청되었는지 및/또는 MFA 정책(108)이 성공적으로 시행되었는지 등의 표시를 출력할 수 있다.
도 1의 도시된 예에서, 정책 관리자(102)는 정책 구축기(124)를 호출하여, 클라이언트 환경(100) 내에 예시적인 MFA 정책(108)을 저작(예로서, 구성, 생성, 기록 등)한다. 일부 예에서, 정책 구축기(124)는 토폴로지 맵(128)에 기초하여 MFA 정책(108)을 저작한다. 일부 예에서, 정책 구축기(124)는 예시적인 저장소(126)로부터 하위 정책 또는 MFA 정책을 획득하여 MFA 정책(108)을 구축한다. 예로서, 도시된 예의 정책 구축기(124)는 제1 피제어 자원(114)에 대한 액세스를 제어하기 위한 제1 MFA 정책 및 제2 피제어 자원(120)에 대한 액세스를 제어하기 위한 제2 MFA 정책을 검색한다.
동작에 있어서, 도 1의 예시적인 제1 정책 핸들러(110)는 클라이언트 핸들러(122)로부터 MFA 정책(108)을 획득하고, MFA 정책(108)이 제1 정책 핸들러(110)에 의해 시행될 수 있는 하위 정책을 포함하는지를 판단한다. 예로서, 도시된 예의 제1 정책 핸들러(110)는 MFA 정책(108)을 파싱하고, 제1 정책 핸들러(110)에 의해 시행될 수 있는 하나 이상의 레벨 3 정책을 식별한다. 이 예의 예시적인 제1 정책 핸들러(110)는 식별된 레벨 3 정책에 서명하고, MFA 정책(108)에 서명한다. 예로서, 제1 정책 핸들러(110)는 제1 정책 핸들러(110)에 고유한 비공개 키를 포함하도록 MFA 정책(108)을 변경할 수 있다. 일부 그러한 예에서, 비공개 키는 정책 핸들러가 이전에 MFA 정책(108)을 파싱했는지를 판단하는 데 사용된다. 예로서, 토폴로지 맵(128)은 맵(128) 내에 포함된 각각의 정책 핸들러에 대한 대응하는 비공개 키를 포함할 수 있다. 일부 예에서, 제1 정책 핸들러(110)는 MFA 정책(108)의 서명 상태에 기초하여 MFA 정책(108)이 서명되지 않은 하위 정책을 포함하는지를 판단하고, MFA 정책(108)에 서명하지 않는 정책 핸들러(예로서, 예시적인 제2 정책 핸들러(111), 예시적인 제3 정책 핸들러, 예시적인 제4 정책 핸들러(118) 등)로 MFA 정책(108)을 전송한다. 위의 프로세스를 이용하여(예로서, 하나 이상의 정책 핸들러를 이용하여 하위 정책을 통해 반복함으로써), MFA 정책(108)이 정책 핸들러 사이에서 전송되며, MFA 정책(108)이 클라이언트 환경(100) 내에서 프로비저닝된다. 일부 예에서, 정책 핸들러가 MFA 정책(108)의 서명 상태가 서명되지 않은 하위 정책을 표시하고, 토폴로지 맵(128) 내에 포함된 모든 정책 핸들러가 MFA 정책(108)에 서명한 것으로 판단하는 경우, 정책 핸들러는 클라이언트 환경(100)에서 MFA 정책 프로비저닝이 실패했다는 것을 보고하는 메시지를 정책 관리자(102)로 전송할 수 있다.
MFA 정책 시행 동안, 도시된 예의 예시적인 정책 핸들러(110, 111, 112, 118)는 피제어 자원에 액세스하려고 시도하는 사용자와 관련된 센서 입력(예로서, 보안 증명)에 MFA 정책을 적용한다. 예로서, 도 1의 정책 핸들러(110, 111, 112, 118)는 제1 자원(114)(예로서, 데이터베이스)에 대한 액세스가 요청될 때 MFA 정책(108)을 시행할 수 있다. 도시된 예에서, 예시적인 제2 센서(116)로부터 획득된 센서 입력(134)(예로서, 지문 스캔)은 정책 핸들러(110, 111, 112 및/또는 118)에 의해 평가될 수 있다. 예로서, 제3 정책 핸들러(112)는 예시적인 MFA 정책(108)의 레벨 1 하위 정책을 처리하고, 제2 센서(116)가 신뢰되는 센서인지를 판단할 수 있다. 예시적인 제2 정책 핸들러(111)는 예시적인 MFA 정책(108)의 레벨 2 하위 정책을 처리하고, 제2 센서(116)가 하위 정책에 의해 정의된 최소 보안 강도 기준을 충족시키는지를 판단할 수 있다. 예시적인 제3 정책 핸들러(112)는 예시적인 MFA 정책(108)의 레벨 3 하위 정책을 처리하고, 센서 입력(134)이 준수에 대한 MFA 정책(108) 임계치를 충족시키는지를 판단할 수 있다. 일부 예에서, 처리 정책 핸들러는 그의 함의 증거를 제공하여, 신뢰되는 통신 경로 메커니즘이 센서 입력(134)을 평가하는 데 사용된다는 것을 검증할 수 있다. 일부 예에서, 정책 핸들러는 병렬로 동작한다. 이 예에서, 정책 핸들러는 순차적으로 동작한다.
도 2 및 3은 도 1의 예시적인 클라이언트 환경(100) 내의 피제어 자원에 대한 액세스를 제어하도록 실행될 수 있는 의사 코드를 포함하는 예시적인 MFA 정책(108)의 예시적인 구현을 나타낸다. 도시된 예에서, MFA 정책(108)은 JSON(JavaScript Object Notation) 문서이다. 그러나, XACML(extensible Access Control Markup Language), SAML(Security Assertion Markup Language), XML(extensible Markup Language) 등과 같은 다른 정책 표현 언어 신택스가 사용될 수 있다. 도 2 및 3의 도시된 예에서, 예시적인 MFA 정책(108)은 사용자를 인증하기 위한 증명 정책부(108A)(도 2) 및 생체 측정 특성 테스트 및/또는 사용자 존재/연속 인증 제한과 같은 상황 요구가 충족되는지를 판단하기 위한 상황 정책부(108B)(도 3)를 포함한다.
도 2의 도시된 예에서, 증명 정책부(108A)는 예시적인 액션 하위 정책 블록(202), 레벨 3 하위 정책 블록(204), 제1 레벨 2 하위 정책 블록(206A), 제2 레벨 2 하위 정책 블록(206B), 제3 레벨 2 하위 정책 블록(206C), 제4 레벨 2 하위 정책 블록(206D), 제1 레벨 1 하위 정책 블록(208A), 제2 레벨 1 하위 정책 블록(208B), 제3 레벨 1 하위 정책 블록(208C) 및 제4 레벨 1 하위 정책 블록(208D)을 포함한다. 도 2의 도시된 예에서, 액션 하위 정책 블록(202)은 성공적으로 적용된 MFA 정책 및/또는 하위 정책에 응답하여 취해지는 액션(들) 및 액션이 적용되는 컴포넌트(예로서, 호스트)를 지정한다. 예로서, 도 2의 라인 210은 성공적인 인증이 적용되는 경우(예로서, 피제어 자원이 OS 로그온 프로세스인 경우) 호스트가 "OS 로그온" 프로세스(라인 212)를 수행해야 한다는 것을 식별한다.
도 2의 도시된 예에서, 예시적인 레벨 3 하위 정책 블록(204)은 예로서 논리 AND 및/또는 OR 조합을 이용하여 조합될 수 있는 하위 정책의 조합(예로서, 예시적인 정책 A OR 예시적인 정책 B)을 지정한다. 예로서, 정책 B의 라인 214는 정책 B의 성공적인 적용이 (1) 유효 지문 서명의 획득 OR (2) 유효 보안 토큰 AND 검증된 얼굴 패턴의 획득을 포함한다는 것을 지정한다.
도 2의 도시된 예에서, 예시적인 제1 레벨 2 하위 정책 블록(206A), 제2 레벨 2 하위 정책 블록(206B), 제3 레벨 2 하위 정책 블록(206C) 및 제4 레벨 2 하위 정책 블록(206D)은 각각의 팩터(예로서, 정책 핸들러)에 고유하며, 팩터 타입(예로서, 기능 요구)에 대한 팩터 환경(예로서, 최소 보안 강도 기준)을 지정한다. 예로서, 예시적인 정책 A의 프로비저닝 동안, NFC 센서로부터의 입력을 처리하는 데 적합하고 "보안 엔진"에 대응하는 최소 보안 강도 레벨 정책(예로서, 레벨 2 하위 정책(206A))을 적용하는 데 적합한 제1 정책 핸들러가 예시적인 정책 A를 청구(예로서, 서명)할 수 있다. 제1 정책 핸들러가 NFC 센서로부터의 입력을 처리하는 데 적합하지 않을 경우(예로서, 제1 정책 핸들러가 NFC 센서 또는 NFC 센서 입력에 대한 액세스를 갖지 않고/않거나, 제1 정책 핸들러 보안 강도가 "보안 엔진" 계층 정책 핸들러만큼 안전하지 않을 경우), 예시적인 제1 정책 핸들러는 제1 정책 핸들러에 의해 시행될 수 있는 하위 정책에 대해 정책 B를 검사할 수 있다. 제1 정책 핸들러가 MFA 정책의 파싱을 완료하면, 제1 정책 핸들러는 MFA 정책을 제2 정책 핸들러로 전송한다. 위의 프로세스를 이용하여(예로서, 하나 이상의 정책 핸들러를 이용하여 하위 정책을 통해 반복함으로써), MFA 정책(108)은 정책 핸들러 사이에서 전송되며, MFA 정책(108)은 클라이언트 환경(100) 내에서 프로비저닝된다.
정책 A의 시행 동안, 제1 정책 핸들러는 NFC 센서의 함의가 레벨 1 하위 정책(208A) 문장에 의해 정의되는 허가된 NFC 센서(예로서, "인텔 칩셋 Rel 1.O")에 대응하는지를 검사함으로써 NFC 센서(예로서, NFC 라디오)가 신뢰되는 센서인 것을 검증할 수 있다. 제1 정책 핸들러가 레벨 1 하위 정책(208A) 문장을 시행할 수 있는 경우, 제1 정책 핸들러는 NFC 센서 입력의 처리를 진행한다. 일부 예에서, 제1 정책 핸들러가 레벨 1 하위 정책(208A) 문장을 시행할 수 없는(예로서, 시행할 자격이 없는) 경우 그리고/또는 클라이언트 환경(100)이 레벨 1 하위 정책(208A)을 시행하기에 더 적합한 다른 정책 핸들러를 포함하는 경우, 제1 정책 핸들러는 센서 입력을 다음 정책 핸들러 및/또는 더 적합한 정책 핸들러로 재지향할 수 있다. 예로서, "보안 엔진" 계층 정책 핸들러는 정책 B가 충족되는지를 평가하는 데 적합할 수 있으며(라인 216), "호스트" 계층 정책 핸들러는 카메라 입력(예로서, 레벨 2 하위 정책(206D))을 평가하는 데 더 적합할 수 있다. 일부 그러한 예에서, "보안 엔진" 계층 정책 핸들러는 카메라 입력을 "호스트" 계층 정책 핸들러로 재지향하여 카메라 입력을 처리하게 할 수 있다.
도시된 예에서, 도 2의 MFA 정책은 도 3으로 계속된다. 도 3의 예의 예시적인 상황 정책부(108B)는 사용자 존재(라인 310)를 모니터링하기 위한 예시적인 정책 C 및 위치(라인 311 "지오 펜스")를 모니터링하기 위한 예시적인 정책 D를 포함하는 예시적인 레벨 3 하위 정책 블록(302)을 포함한다. 예로서, 정책 C를 적용할 때, 사용자 존재가 검출되지 않는 경우(라인 312 "ON NOT PRESENT"), 사용자의 증명은 취소되고, 호스트에 대한 액세스가 거절된다. 정책 D의 예에서, 사용자가 지리 경계선을 벗어난 것으로 검출되는 경우(라인 313 "ON EXIT"), 사용자의 증명이 취소되고, "OS 로그온" 자원에 대한 액세스가 거절된다.
도 3의 도시된 예에서, 예시적인 제1 레벨 2 하위 정책 블록(304A), 제2 레벨 2 하위 정책 블록(304B) 및 제3 레벨 2 하위 정책 블록(304C)는 각각의 팩터(들)와 관련되며, 대응하는 팩터 타입에 대한 수용 가능한 팩터 환경을 지정한다. 예로서, 정책 핸들러가 레벨 2 하위 정책 블록(304B)을 적용할 때, 키보드 입력(라인 314 "KEYBOARD ACTIVITY")이 운영 체제 계층 정책 핸들러에서 획득되었는지(라인 315 "'FACTOR ENV':'OS'")에 대한 판단이 행해진다. 도 3의 도시된 예에서, 예시적인 제1 레벨 1 하위 정책 블록(306A), 제2 레벨 1 하위 정책 블록(306B) 및 제3 레벨 1 하위 정책 블록(306C)은 센서가 정책 핸들러(예로서, 환경)에 접속되는 방법과 관련된다. 함의를 이용하여, 정책 핸들러는 입력을 획득하는 데 사용된 신뢰되는 통신 경로를 식별한다. 이어서, 정책 핸들러는 함의 증거가 각각의 레벨 1 하위 정책을 충족시키는지를 판단할 수 있다.
도 4는 도 1의 예시적인 클라이언트 환경(100)에서 멀티팩터 인증(MFA) 정책의 관리를 가능하게 하기 위한 예시적인 정책 핸들러(400)의 예시적인 구현의 개략도이다. 도 4의 도시된 예에서, 정책 핸들러(400)는 입증기(402), 토폴로지 맵퍼(404), 정책 감사기(406), 정책 파서(408), 정책 감독기(410), 센서 초기화기(414), 정책 평가기(416), 자원 핸들러(418) 및 데이터 스토어(420)를 구비한다. 도 4의 예시적인 정책 핸들러는 도 1의 예시적인 제1 정책 핸들러(110), 예시적인 제2 정책 핸들러(111), 예시적인 제3 정책 핸들러(112) 및/또는 예시적인 제4 정책 핸들러(118) 중 임의의 것을 구현할 수 있다.
도 4의 도시된 예에서, 정책 핸들러(400)는 입증기(402)를 호출하여, 정책 핸들러(400)의 기능 및 보안 특성을 입증한다. 예로서, 입증기(402)는 예로서 정책 관리자(102) 및/또는 다른 신뢰되는 정책 핸들러로부터 MFA 정책, 센서 입력, 메시지 등에 액세스할 때 일련의 챌린지 요청 교환을 개시하여, 하위 정책, 센서 입력, 메시지 등의 진정성을 검증할 수 있다. 일부 예에서, 입증기(402)는 정책 핸들러(400)에 고유한 비공개 키를 이용하여 함의에 서명하여, 예로서 정책 핸들러(400)가 신뢰되는 환경이라는 것을 클라이언트 환경 내의 다른 노드에 대해 보증할 수 있다.
도 4의 도시된 예에서, 정책 핸들러(400)는 토폴로지 맵퍼(404)를 호출하여, 클라이언트 환경의 토폴로지를 맵핑함으로써, 클라이언트 환경(100)에서의 MFA 정책(108)의 프로비저닝 및/또는 시행을 가능하게 한다. 예로서, 토폴로지 맵퍼(404)는 클라이언트 환경(100)의 내성을 수행하여, 클라이언트 환경(100) 내의 다른 신뢰되는 환경(예로서, 제1 정책 핸들러(110), 제2 정책 핸들러(111), 제3 정책 핸들러(112) 및/또는 제4 정책 핸들러(118))을 발견한다. 전술한 바와 같이, 내성은 예시적인 토폴로지 맵퍼(404)가 다른 노드로부터 소정의 정보, 예로서 노드가 정책 핸들러, 센서 또는 피제어 자원인지, 피제어 자원의 타입, 정책 핸들러 보안 강도, 정책 핸들러에 의해 시행될 수 있는 보안 레벨, 정책 핸들러에 의해 서명된 하나 이상의 하위 정책, 피제어 자원에 적용된 하나 이상의 MFA 정책 및/또는 하위 정책 등을 획득하는 것을 가능하게 한다. 도 4의 도시된 예에서, 토폴로지 맵(128)은 데이터 스토어(420)에 저장된다. 일부 예에서, 토폴로지 맵(128)은 클라이언트 환경(100) 내의 주요 정책 핸들러(예로서, 예시적인 제1 정책 핸들러(110))에 의해 저장될 수 있다. 일부 예에서, 정책 핸들러는 각각의 정책 핸들러에 대응하는 토폴로지 맵(128)의 일부를 저장한다. 예로서, 도 1의 예시적인 제3 정책 핸들러(112)는 단지 예시적인 제2 정책 핸들러(111) 및 제4 정책 핸들러(118)와의 그의 접속에 관한 정보를 그가 그의 데이터 스토어(420) 내에 저장하는 토폴로지 맵 내에 저장할 수 있다. 일부 예에서, 내성 동안, 예시적인 토폴로지 맵퍼(404)는 정책 핸들러의 기능 타입 및/또는 정책 핸들러의 보안 강도와 같은 정책 핸들러의 특성도 포함한다. 예로서, 토폴로지 맵(128)은 예시적인 제3 정책 핸들러(112)가 계층 1 보안 강도를 갖는 센서 입력에 대해 레벨 1 하위 정책을 적용하기에 적합하다는 것을 표시할 수 있다.
위에서 상세히 설명된 바와 같이, 도 1의 예시적인 정책 관리자(102)는 토폴로지 맵(128)을 이용하여, 클라이언트 환경 토폴로지에 기초하여 MFA 정책(108)을 구성한다. 예로서, 정책 관리자(102)는 클라이언트 환경(100)의 주요 정책 핸들러로부터 토폴로지 맵(128)을 획득할 수 있다. 예로서, 도 1의 클라이언트 핸들러(122)는 클라이언트 환경의 제1 정책 핸들러(110)로부터 갱신을 주기적인 간격으로(예로서, 24시간마다) 그리고/또는 비주기적인 간격으로(예로서, MFA 정책을 프로비저닝하기 위한 요청에 응답하여) 그리고/또는 일회성 이벤트로서 획득할 수 있다. 일부 예에서, 도 1의 정책 핸들러(110, 111, 112, 118)는 토폴로지 맵(128)을 이용하여, 클라이언트 환경(100)을 통해 MFA 정책(108)을 프로비저닝하고/하거나, 클라이언트 환경(100)에서 MFA 정책(108)을 시행한다.
도 4의 도시된 예에서, 정책 핸들러(400)는 정책 감사기(406)를 호출하여, 적용될 수 있고/있거나 적용되는 MFA 정책 및/또는 하위 정책을 모니터링한다. 일부 예에서, 정책 감사기(406)는 예로서 클라이언트 환경(100) 내에서 프로비저닝되거나 프로비저닝될 수 있는 MFA 정책에 관하여 클라이언트 환경(100)의 상태를 모니터링한다. 예로서, 제1 정책 핸들러(110)의 정책 감사기(406)는 토폴로지 맵(128)에 질의하여, 클라이언트 환경(100)이 MFA 정책 및/또는 하위 정책을 적용할 필수 정책 핸들러를 포함하는지를 판단할 수 있다. 일부 예에서, 정책 감사기(406)는 예로서 MFA 정책이 클라이언트 환경(100) 내의 정책 핸들러(들)에 의해 적용될 때 어느 MFA 정책 및/또는 하위 정책이 적용되었는지, MFA 정책이 왜 적용되었는지(예로서, 어느 피제어 자원이 보호되는지) 그리고 어느 MFA 정책 및/또는 하위 정책이 시행되고 있는지를 기록(또는 로깅)할 수 있다. 일부 예에서, 도 4의 정책 감사기(406)는 로그를 데이터 스토어(420) 내에 저장한다.
일부 예에서, 도 4의 정책 감사기(406)는 토폴로지 맵에 기초하여 MFA 정책을 변경(예로서, 교정, 필터링)한다. 예로서, 제1 정책 핸들러(110)의 정책 감사기(406)는 클라이언트 환경(100)이 정책 핸들러와 통신하는 카메라를 포함하지 않는다는 것을 식별할 수 있다. 일부 그러한 예에서, 도 4의 정책 감사기(406)는 예로서 망막 스캔 또는 얼굴 패턴의 수집을 포함하지 않는 하위 정책을 필터링함으로써 MFA 정책을 변경할 수 있다.
도 4의 도시된 예에서, 정책 핸들러(400)는 정책 파서(408)를 호출하여, 정책 핸들러(400)가 시행할 수 있는 하위 정책을 식별한다. 예로서, 클라이언트 환경(100)에서 프로비저닝할 MFA 정책(108)이 정책 관리자(102)로부터 획득될 때, 제1 정책 핸들러(110)는 MFA 정책(108)을 파싱하고, 정책 핸들러(110)가 MFA 정책 시행 동안 적용할 수 있는 하위 정책을 식별할 수 있다. 예로서, 제1 정책 핸들러(110)는 그의 보안 강도가 하위 정책의 최소 보안 강도 기준을 충족시키는지 그리고 제1 정책 핸들러(110)의 기능 타입이 하위 정책에서 정의되는 기능 요구를 충족시키는지를 검사할 수 있다. 일부 예에서, 정책 파서(408)는 식별된 MFA 정책 내의 하위 정책에 서명(예로서, 청구, 마킹 등)한다. 예로서, 정책 파서(408)는 예시적인 입증기(402)가 정책 핸들러(110)에 고유한 비공개 키를 이용하여 하위 정책 함의에 서명하게 할 수 있다. 따라서, 클라이언트 환경 내의 각각의 정책 핸들러는 클라이언트 환경 내의 MFA 정책을 어떻게 프로비저닝할지를 국지적으로 판단한다.
일부 예에서, 정책 파서(408)는 MFA 정책(108)을 파싱하고, MFA 정책(108)의 서명 상태가 서명되지 않은 하위 정책을 포함하지 않는 것으로(예로서, MFA 정책(108)을 구성하도록 조합되는 하위 정책 모두가 하나 이상의 정책 핸들러에 의해 서명된 것으로) 판단한다. 일부 그러한 예에서, 정책 파서(408)는 예시적인 MFA 정책(108)이 클라이언트 환경(100) 내에서 성공적으로 프로비저닝되었다는 것을 정책 관리자(102)(또는 주요 정책 핸들러)로 통신한다.
도 4의 도시된 예에서, 정책 핸들러(400)는 예시적인 정책 감독기(410)를 호출하여, 클라이언트 환경(100) 내의 MFA 정책(108)의 프로비저닝을 가능하게 한다. 예로서, 정책 감독기(410)는 예시적인 입증기(402)가 정책 함의에 서명한 후에 정책 핸들러가 통신하는 다음 정책 핸들러로 MFA 정책(108)을 전송할 수 있다. 예로서, 제1 정책 핸들러(110)가 MFA 정책(108)에 서명한 후, 제1 정책 핸들러(110)는 제2 정책 핸들러(111) 및/또는 제4 정책 핸들러(118)로 MFA 정책(108)을 전송(예로서, 프로비저닝)할 수 있다. 일부 예에서, 정책 감독기(410)는 토폴로지 맵(128)을 이용하여, 어느 정책 핸들러로 MFA 정책(108)을 전송할지를 식별한다. 일부 예에서, 정책 감독기(410)는 예로서 정책 핸들러의 기능 타입 및/또는 정책 핸들러의 보안 강도에 기초하여 특정 하위 정책을 시행하기에 적합한 정책 핸들러로 MFA 정책(108)을 전송한다. 예로서, 프로비저닝 동안, 제2 정책 핸들러(111)는 서명되지 않은 레벨 1 하위 정책을 지문 판독기에 대한 액세스 및/또는 지문 판독기로부터의 입력(예로서, 지문 스캔)을 이용하여 식별할 수 있다. 일부 그러한 예에서, 제2 정책 핸들러(111)는 토폴로지 맵을 이용하여, 제3 정책 핸들러(112)(예로서, 레벨 하위 정책을 시행할 수 있고 제2 센서(116)(예로서, 지문 판독기)와 통신하는 계층 1 정책 핸들러)에 대한 보안 통신 경로를 식별할 수 있다.
일부 예에서, 정책 감독기(410)는 MFA 정책(108)을 동일 계층 정책 핸들러로 전송한다. 예로서, 제1 정책 핸들러(110)(예로서, 계층 3 정책 핸들러)는 계층 3 정책 핸들러에 의해 충족되는 최소 보안 강도 기준을 갖는 하위 정책(예로서, 레벨 3 하위 정책)을 식별할 수 있지만, 제1 정책 핸들러(110)는 하위 정책의 기능 요구를 충족시키지 못한다. 일부 예에서, 제1 정책 핸들러(110)는 토폴로지 맵(128)을 이용하여, 하위 정책의 최소 보안 강도 기준 및 기능 요구를 충족시키는 정책 핸들러를 식별할 수 있다. 예로서, 제1 정책 핸들러(110)는 제4 정책 핸들러(118)(예로서, 계층 3 정책 핸들러)가 하위 정책(예로서, 클라우드 기반 서비스)의 최소 보안 강도 기준(예로서, 레벨 3 하위 정책) 및 기능 요구를 충족시킨다는 것을 토폴로지 맵(128)으로부터 식별할 수 있다. 이어서, 예시적인 제1 정책 핸들러(110)는 청구(예로서, 서명)하고 시행할 제4 정책 핸들러(118)로 MFA 정책(108)을 전송할 수 있다.
일부 예에서, 정책 감독기(410)는 하위 정책이 다른 보안 강도 계층의 정책 핸들러에 의해 더 양호하게 시행되는 것으로 판단할 수 있다. 예로서, 제2 정책 핸들러(111)(예로서, 계층 2 정책 핸들러)는 제3 정책 핸들러(112)(예로서, 계층 1 정책 핸들러)가 더 양호한 보안 특성을 가지며, 따라서 하위 정책의 시행에 바람직한 것으로 판단할 수 있다. 예로서, 제2 센서(116)와 제3 정책 핸들러(112) 사이에 신뢰되는 통신 경로가 존재할 수 있다. 일부 그러한 예에서, 도 4의 정책 감독 기(410)는 청구하고 시행할 제3 정책 핸들러(112)로 하위 정책을 지향할 수 있다. 일부 예에서, 상이한 보안 계층의 2개의 정책 핸들러 사이에는 (예로서, 계층 2 정책 핸들러(111)로부터 계층 1 정책 핸들러(112)로의) 신뢰되는 통신 경로가 존재하지 않을 수 있다. 도 4의 도시된 예에서, 정책 감독기(410)는 트램펄린 핸들러(trampoline handler)(412)를 호출하여, MFA 정책 평가를 "하위" 계층 정책 핸들러로 이동시킨다. 예로서, 제2 정책 핸들러(111)의 트램펄린 핸들러(412)는 센서 입력을 "하위" 계층 정책 핸들러(예로서, 제3 정책 핸들러(112))로 재지향(때때로 본 명세서에서 "트램펄린"으로 지칭됨)할 수 있다. 일부 그러한 예에서, 트램펄린 핸들러(412)는 정책 핸들러의 보안 강도와 MFA 정책(108) 보안 요구(예로서, 정책 레벨)의 정렬을 가능하게 한다. 예로서, (a) 센서 입력을 수신하는 제2 정책 핸들러(111)와 더 낮은 보안 강도 레벨 정책을 적용하기 위한 제3 정책 핸들러(112) 사이의 제4 통신 경로(132)가 안전하지 않은 경우(예로서, 안전하지 않은 통신 경로인 경우), 제2 정책 핸들러(111)의 예시적인 트램펄린 핸들러(412)는 제2 정책 핸들러(111)와 제3 정책 핸들러(112) 사이에 보안 터널을 구성(예로서, 생성)할 수 있다. 도시된 예의 트램펄린 핸들러(412)는 SIGMA(sign-and-mac) 프로토콜과 같은 키 교환 프로토콜을 이용하여 보안 채널을 구성한다. 일부 그러한 예에서, 제2 정책 핸들러(111)에 의해 획득된 센서 입력은 보안 통신 경로를 이용하여 제3 정책 핸들러(112)로 재지향될 수 있다. 일부 예에서, 트램펄린 핸들러(412)는 센서 입력에 대한 보안 라우터로서 동작한다. 예로서, 계층 3 정책 핸들러로부터 계층 1 정책 핸들러로의 보안 채널을 생성하는 것이 아니라, 계층 3 정책 핸들러는 토폴로지 맵(128)을 이용하여, 계층 3 정책 핸들러로부터 계층 2 정책 핸들러로의 보안 통신 경로 및 계층 2 정책 핸들러로부터 계층 1 정책 핸들러로의 보안 통신 경로를 식별할 수 있다. 일부 그러한 예에서, 계층 3 정책 핸들러는 계층 2 정책 핸들러의 트램펄린 핸들러(412)를 이용하여, 센서 입력을 계층 3 정책 핸들러로부터 계층 1 정책 핸들러로 라우팅할 수 있다.
일부 예에서, 정책 감독기(410)는 MFA 정책(108)이 클라이언트 환경(100) 내의 정책 핸들러에 의해 시행될 수 없는 하위 정책을 포함하는 것으로 판단한다. 예로서, 프로비저닝 동안, 정책 감독기(410)는 MFA 정책(108)의 서명 상태가 서명되지 않은 하위 정책을 포함하고, MFA 정책(108)이 토폴로지 맵(128)에 포함된 정책 핸들러(110, 111, 112, 118)에 의해 서명된 것으로 판단할 수 있다. 일부 그러한 예에서, 정책 핸들러(400)는 예시적인 MFA 정책(108)이 클라이언트 환경(100) 내에서 프로비저닝될 수 없다는 것을 정책 관리자(102)로 통신한다.
도 4의 도시된 예에서, 정책 핸들러(400)는 센서 활동이 요청 및/또는 검출될 때 예시적인 센서 초기화기(414)를 호출하여, 센서를 시동한다. 예로서, 제1 피제어 자원(114)에 대한 액세스가 요청될 때, 센서 초기화기(414)는 사용자를 인증하기 위해 사용자로부터 보안 증명을 획득할 수 있는 센서를 시동할 수 있다. 예로서, 제2 센서(예로서, 지문 판독기)와 같은 센서가 저전력(예로서, 슬립) 상태로 되어 활동하지 않을 수 있다(예로서, 지문 판독을 획득하지 않을 수 있다). 일부 그러한 예에서, 도 4의 예시적인 센서 초기화기(414)는 센서 입력을 획득하고/하거나 센서 입력을 획득하도록 준비시키기 위해 제2 센서(116)를 시동한다(예로서, 깨운다).
일부 예에서, MFA 정책(108)은 센서 및/또는 정책 핸들러의 실행 관련 규준, 예로서 정책 핸들러 전력, 지연, 컴퓨팅 등을 지정하여, MFA 정책(108)의 적용을 증진시킨다. 일부 예에서, 센서 초기화기(414)는 멀티팩터 인증 동안 센서의 특성을 변경할 수 있다. 예로서, 센서가 예로서 대역외 전력 레벨, 사용자 맞춤 전력 레벨 등에 비해 더 높은 전력 레벨에서 사용자 존재의 더 정밀한 판독을 전달하는 경우, 센서 초기화기(414)는 더 높은 전력 레벨로 전이하도록 센서에 시그널링할 수 있다. 일부 예에서, 센서 초기화기(414)는 더 낮은 전력 레벨로 전이하도록 센서에 시그널링할 수 있다. 예로서, 블루투스 저에너지(BLE) 라디오는 멀티미터 통신 범위에서 통상적으로 동작할 수 있지만, 센서 초기화기(414)는 BLE 라디오가 더 낮은 전력 레벨로 전이하게 하여, BLE 라디오의 통신 범위를 사용자 인증 동안 밀리미터로 줄일 수 있다. 일부 그러한 예에서, 사용자가 인증되는 경우(예로서, MFA 정책을 충족시키는 경우), 센서 초기화기(414)는 이전의(예로서, 더 높은) 전력 레벨로 복귀하도록 BLE 라디오에 시그널링할 수 있다.
도 4의 도시된 예에서, 정책 핸들러(400)는 정책 평가기(416)를 호출하여 시행 동안 MFA 정책(108)을 처리한다. 예로서, 정책 평가기(416)는 예시적인 정책 핸들러(400)에 의해 서명된 하위 정책을 시행할 수 있다. 예로서, 제3 정책 핸들러(112)는 MFA 정책(108)의 레벨 1 정책을 센서 입력(134)에 적용할 수 있다. 일부 예에서, 정책 평가기(416)는 센서 입력을 허가된 값과 비교함으로써 센서 입력이 적용된 하위 정책을 충족시키는지를 판단한다. 예로서, 인증 및/또는 사용자 존재 샘플링 동안, 예시적인 정책 평가기(416)는 센서 입력(예로서, NFC 신호)을 허가된 NFC 신호 서명과 비교할 수 있다. 예로서, 정책 평가기(416)는 예시적인 데이터 스토어(420)로부터 허가된 NFC 신호 서명을 검색하고, 검색된 NFC 신호 서명을 NFC 신호와 비교할 수 있다. 일부 예에서, 정책 평가기(416)는 센서 입력(예로서, NFC 신호)을 계속(또는 거의 계속) 평가한다. 일부 예에서, 정책 평가기(416)는 NFC 신호를 주기적인 간격, 비주기적인 간격 또는 일회성 이벤트로 샘플링한다.
일부 예에서, 정책 평가기(416)는 신호 입력이 하위 정책의 준수에 실패한 것으로 판단할 수 있다. 예로서, 신호 입력(134)에 대해 레벨 2 하위 정책을 적용하는 제2 정책 핸들러(111)는 신호 입력(134)이 신뢰되는 환경에서 획득되지 않은 것으로 판단할 수 있다. 일부 그러한 예에서, 제2 정책 핸들러(111)의 정책 평가기(416)는 센서 입력(134)을 평가할 다른 정책 핸들러를 식별하도록 정책 감독기(410)에게 명령할 수 있다.
일부 예에서, 정책 평가기(416)는 MFA 정책(108)이 충족된 것으로(예로서, 예시적인 정책 A OR 정책 B가 충족되고 AND 정책 C가 충족되고 AND 정책 D가 충족된 것으로) 판단한다. 일부 그러한 예에서, 도 4의 정책 핸들러(400)는 요청된 피제어 자원에 대한 액세스를 시행하기 위한 예시적인 자원 핸들러(418)를 포함한다. 도 4의 도시된 예에서, 정책 평가기(416)는 요청된 피제어 자원에 대한 액세스를 시행하는 자원 핸들러(418)에 MFA 정책(108)이 충족되는지 또는 충족되지 않는지를 시그널링한다. 예로서, 피제어 자원(114)이 제1 정책 핸들러(110)(예로서, 계층 3 정책 핸들러)의 자원 핸들러(418)에 의해 보호될 때 MFA 정책(108)이 호출될 수 있지만, 피제어 자원(114)에 대한 액세스를 허가 또는 거절하기 위한 판단은 다른 정책 핸들러에서 행해질 수 있다. 예로서, 도 2의 예시적인 증명 정책부(108A)에서는, 피제어 자원 "OS 로그온"이 "호스트" 계층 정책 핸들러에 의해 보호되지만, 정책 A가 충족되는지에 대한 판단은 "보안 엔진" 계층 정책 핸들러에서 평가되고, 정책 B의 레벨 2 하위 정책(206B)의 준수는 "보안 요소" 계층 정책 핸들러에서 평가되며, 레벨 2 하위 정책(206D)의 준수는 "호스트" 계층 정책 핸들러에서 평가된다. 일부 그러한 예에서, 정책 및/또는 하위 정책이 평가된 후, 피제어 자원 액세스 요청 판단은 피제어 자원을 보호하는 정책 핸들러(예로서, 제1 정책 핸들러(110))로 전송된다. 일부 그러한 예에서, 요청된 피제어 자원을 보호하는 자원 핸들러(418)는 피제어 자원 액세스 요청 판단을 포함하는 메시지를 획득한다. 일부 예에서, 평가 정책 핸들러의 정책 평가기(416)는 메시지를 클라이언트 환경(100) 내의 다른 정책 핸들러로 방송할 수 있다. 일부 예에서, 피제어 자원 액세스 상태의 변경이 클라이언트 환경(100) 내의 다른 정책 핸들러로 방송될 수 있다. 예로서, 제1 피제어 자원(114)에 대한 액세스가 취소되는 경우, 제1 정책 핸들러(110)는 상태 변경을 제2 정책 핸들러(111), 제3 정책 핸들러(112) 및 제4 정책 핸들러(118)로 방송할 수 있다. 일부 예에서, 피제어 자원 액세스 상태 메시지가 클라이언트 환경(100) 내의 정책 핸들러 사이에서 신뢰되는 채널을 통해(예로서, SIGMA 프로토콜을 통해) 통신된다.
도 4의 예시적인 데이터 스토어(420)는 예로서 플래시 메모리, 자기 매체, 광학 매체 등과 같이 데이터를 저장하기 위한 임의의 저장 장치 및/또는 저장 디스크에 의해 구현될 수 있다. 더구나, 데이터 스토어(420)에 저장되는 데이터는 예로서 이진 데이터, 콤마 한정 데이터, 탭 한정 데이터, 구조화된 질의 언어(SQL) 구조 등과 같은 임의의 데이터 포맷을 가질 수 있다. 도시된 예에서는 데이터 스토어(420)가 단일 데이터베이스로서 도시되지만, 데이터 스토어(420)는 임의 수 및/또는 타입의 데이터베이스에 의해 구현될 수 있다.
시스템 및/또는 정책 핸들러를 구현하는 예시적인 방식이 도 1 및 4에 도시되었지만, 도 1 및/또는 4에 도시된 요소, 프로세스 및/또는 장치 중 하나 이상은 결합되고, 분할되고, 재배열되고, 생략되고, 제거되고/되거나 임의의 다른 방식으로 구현될 수 있다. 또한, 예시적인 정책 관리자(102), 예시적인 호스트(104), 예시적인 제1 정책 핸들러(110), 예시적인 제2 정책 핸들러(111), 예시적인 제3 정책 핸들러(112), 예시적인 제1 피제어 자원(114), 예시적인 제1 센서(115), 예시적인 제2 센서(116), 예시적인 제4 정책 핸들러(118), 예시적인 제2 피제어 자원(120), 예시적인 입증기(402), 예시적인 토폴로지 맵퍼(404), 예시적인 정책 감사기(406), 예시적인 정책 파서(408), 예시적인 정책 감독기(410), 예시적인 트램펄린 핸들러(412), 예시적인 센서 초기화기(414), 예시적인 정책 평가기(416), 예시적인 자원 핸들러(418), 예시적인 데이터 스토어(420) 및/또는 더 일반적으로 예시적인 정책 핸들러(400)는 하드웨어, 소프트웨어, 펌웨어, 및/또는 하드웨어, 소프트웨어 및/또는 펌웨어의 임의 조합에 의해 구현될 수 있다. 따라서, 예로서, 예시적인 정책 관리자(102), 예시적인 호스트(104), 예시적인 제1 정책 핸들러(110), 예시적인 제2 정책 핸들러(111), 예시적인 제3 정책 핸들러(112), 예시적인 제1 피제어 자원(114), 예시적인 제1 센서(115), 예시적인 제2 센서(116), 예시적인 제4 정책 핸들러(118), 예시적인 제2 피제어 자원(120), 예시적인 입증기(402), 예시적인 토폴로지 맵퍼(404), 예시적인 정책 감사기(406), 예시적인 정책 파서(408), 예시적인 정책 감독기(410), 예시적인 트램펄린 핸들러(412), 예시적인 센서 초기화기(414), 예시적인 정책 평가기(416), 예시적인 자원 핸들러(418), 예시적인 데이터 스토어(420) 및/또는 더 일반적으로 예시적인 정책 핸들러(400) 중 임의의 것은 하나 이상의 아날로그 또는 디지털 회로(들), 논리 회로, 프로그래밍 가능 프로세서(들), 주문형 집적 회로(들)(ASIC(들)), 프로그래밍 가능 논리 장치(들)(PLD(들)) 및/또는 필드 프로그래머블 논리 장치(들)(FPLD(들))에 의해 구현될 수 있다. 그에 따라, 순수 소프트웨어 및/또는 펌웨어 구현을 포괄하기 위해 본 특허의 임의의 장치 또는 시스템 청구항을 읽을 때, 예시적인 정책 관리자(102), 예시적인 호스트(104), 예시적인 제1 정책 핸들러(110), 예시적인 제2 정책 핸들러(111), 예시적인 제3 정책 핸들러(112), 예시적인 제1 피제어 자원(114), 예시적인 제1 센서(115), 예시적인 제2 센서(116), 예시적인 제4 정책 핸들러(118), 예시적인 제2 피제어 자원(120), 예시적인 입증기(402), 예시적인 토폴로지 맵퍼(404), 예시적인 정책 감사기(406), 예시적인 정책 파서(408), 예시적인 정책 감독기(410), 예시적인 트램펄린 핸들러(412), 예시적인 센서 초기화기(414), 예시적인 정책 평가기(416), 예시적인 자원 핸들러(418) 및/또는 예시적인 데이터 스토어(420) 중 적어도 하나는 소프트웨어 및/또는 펌웨어를 저장하는 메모리, 디지털 다기능 디스크(DVD), 컴팩트 디스크(CD), 블루레이 디스크 등과 같은 유형적인 컴퓨터 판독 가능 저장 장치 또는 저장 디스크를 포함하도록 명확하게 정의된다. 더구나, 도 1의 예시적인 정책 핸들러(110, 111, 112, 118)는 도 4에 도시된 것에 더하여 또는 그 대신에 하나 이상의 요소, 프로세스 및/또는 장치를 포함할 수 있고/있거나, 임의의 또는 모든 도시된 요소, 프로세스 및 장치를 2개 이상 포함할 수 있다.
도 1의 정책 관리자(102)를 구현하기 위한 예시적인 머신 판독 가능 명령어를 나타내는 흐름도, 및 도 1 및/또는 4의 정책 핸들러(110, 111, 112, 118) 및/또는 정책 핸들러(400)를 구현하기 위한 예시적인 머신 판독 가능 명령어를 나타내는 흐름도가 각각 도 6-8에 도시된다. 이러한 예에서, 머신 판독 가능 명령어는 도 9와 관련하여 후술하는 예시적인 프로세서 플랫폼(900) 내에 도시된 프로세서(912)와 같은 프로세서에 의해 실행하기 위한 프로그램을 포함한다. 프로그램은 프로세서(912)와 관련된 CD-ROM, 플로피 디스크, 하드 드라이브, 디지털 다기능 디스크(DVD), 블루레이 디스크 또는 메모리와 같은 유형적인 컴퓨터 판독 가능 저장 매체 상에 저장된 소프트웨어 내에 구현될 수 있지만, 전체 프로그램 및/또는 그의 일부는 대안으로서 프로세서(912)가 아닌 다른 장치에 의해 실행될 수 있고/있거나, 펌웨어 또는 전용 하드웨어 내에 구현될 수 있다. 또한, 예시적인 프로그램이 도 5-8에 도시된 흐름도를 참조하여 설명되지만, 예시적인 정책 관리자(102) 및/또는 정책 핸들러(110, 111, 112, 118) 및/또는 정책 핸들러(400)를 구현하는 많은 다른 방법이 대안으로서 사용될 수 있다. 예로서, 블록의 실행 순서가 변경될 수 있고/있거나, 설명되는 블록 중 일부가 변경, 제거 또는 결합될 수 있다.
전술한 바와 같이, 도 5-8의 예시적인 프로세스는 하드 디스크 드라이브, 플래시 메모리, 판독 전용 메모리(ROM), 컴팩트 디스크(CD), 디지털 다기능 디스크(DVD), 캐시, 랜덤 액세스 메모리(RAM) 및/또는 임의의 지속기간 동안(예로서, 연장된 기간 동안, 영구적으로, 짧은 순간 동안, 일시적 버퍼링을 위해 그리고/또는 정보의 캐싱을 위해) 정보를 저장하는 임의의 다른 저장 장치 또는 저장 디스크와 같은 유형적인 컴퓨터 판독 가능 저장 매체 상에 저장된 코딩된 명령어(예로서, 컴퓨터 및/또는 머신 판독 가능 명령어)를 이용하여 구현될 수 있다. 본 명세서에서 사용되는 바와 같이, 유형적인 컴퓨터 판독 가능 저장 매체라는 용어는 임의 타입의 컴퓨터 판독 가능 저장 장치 및/또는 저장 디스크를 포함하고, 전파 신호를 배제하고, 송신 매체를 배제하도록 명확히 정의된다. 본 명세서에서 사용되는 바와 같이, "유형적인 컴퓨터 판독 가능 저장 매체" 및 "유형적인 머신 판독 가능 저장 매체"는 교환 가능하게 사용된다. 추가로 또는 대안으로서, 도 5-8의 예시적인 프로세스는 하드 디스크 드라이브, 플래시 메모리, 판독 전용 메모리, 컴팩트 디스크, 디지털 다기능 디스크, 캐시, 랜덤 액세스 메모리 및/또는 임의의 지속기간 동안(예로서, 연장된 기간 동안, 영구적으로, 짧은 순간 동안, 일시적 버퍼링을 위해 그리고/또는 정보의 캐싱을 위해) 정보를 저장하는 임의의 다른 저장 장치 또는 저장 디스크와 같은 비일시적 컴퓨터 및/또는 머신 판독 가능 매체 상에 저장된 코딩된 명령어(예로서, 컴퓨터 및/또는 머신 판독 가능 명령어)를 이용하여 구현될 수 있다. 본 명세서에서 사용되는 바와 같이, 비일시적 컴퓨터 판독 가능 매체라는 용어는 임의 타입의 컴퓨터 판독 가능 저장 장치 및/또는 저장 디스크를 포함하고, 전파 신호를 배제하고, 송신 매체를 배제하도록 명확히 정의된다. 본 명세서에서 사용되는 바와 같이, "적어도"라는 표현이 청구항의 전제부에서 전이어로서 사용될 때, 이것은 "포함하는"이라는 용어가 개방적인 것과 동일한 방식으로 개방적이다.
도 5의 프로그램은 클라이언트 환경 내에 분산된 정책 핸들러를 이용하여 클라이언트 환경 내의 멀티팩터 인증 정책(또는 정책들)의 관리를 가능하게 하는 데 사용될 수 있다. 예시적인 프로그램(500)은 예시적인 정책 관리자(102)(도 1)가 클라이언트 환경(100)(도 1)에 대한 클라이언트 토폴로지 정보를 획득하는 블록 502에서 시작된다. 예로서, 클라이언트 핸들러(122)(도 1)는 클라이언트 환경(100) 내에 분산된 제1 정책 핸들러(110)(도 1)로부터 클라이언트 토폴로지 맵(128)(도 1 및/또는 4)을 획득할 수 있다. 블록 504에서, 정책 관리자(102)는 클라이언트 환경(100)에서 시행하기 위한 멀티팩터 인증(MFA) 정책(108)을 구축한다. 예로서, 예시적인 정책 구축기(124)(도 1)는 예로서 제1 정책 핸들러(110)에 의해 제공된 클라이언트 토폴로지 맵(128)에 기초하여 MFA 정책(108)을 저작할 수 있다. 블록 506에서, 예시적인 정책 관리자(102)는 MFA 정책(108)을 클라이언트 환경(100) 내의 주요 정책 핸들러에 배포한다. 예로서, 클라이언트 핸들러(122)는 제1 정책 핸들러(110)에 대해 MFA 정책(108)을 프로비저닝할 수 있다. 블록 508에서, 정책 관리자(102)는 클라이언트 환경(100) 내에 분산된 정책 핸들러로부터 클라이언트 환경(100)에 관한 갱신을 취득한다. 예로서, 클라이언트 핸들러(122)는 제1 정책 핸들러(110), 제2 정책 핸들러(111), 제3 정책 핸들러(112) 및/또는 제4 정책 핸들러(118)(도 1) 중 하나 이상으로부터 갱신을 획득할 수 있다.
블록 510에서, 클라이언트 핸들러(122)는 갱신이 MFA 정책 프로비저닝 또는 MFA 정책 시행과 관련되는지를 판단한다. 블록 510에서 클라이언트 핸들러(122)가 갱신이 정책 시행과 관련되는 것으로 판단하는 경우, 블록 512에서, 정책 관리자(102)는 클라이언트 환경 시행 상태를 기록한다. 예로서, 클라이언트 핸들러(122)는 MFA 정책(108)이 클라이언트 환경(100)에서 성공적으로 시행되었는지, MFA 정책(108)의 어느 하위 정책이 대응하는 정책 핸들러에 의해 서명되었는지(예로서, MFA 정책(108)의 서명 상태) 등을 예시적인 저장소(126)(도 1)에 기록할 수 있다. 일부 예에서, 클라이언트 핸들러(122)는 클라이언트 환경 시행 상태를 예로서 모니터를 통해 사용자에게 제공할 수 있다. 이어서, 제어는 블록 514로 진행하여, 클라이언트 환경(100)을 계속 모니터링할지를 판단한다.
이와 달리, 블록 510에서 클라이언트 핸들러(122)가 갱신이 MFA 정책 프로비저닝과 관련된 것으로 판단하는 경우, 블록 516에서, 정책 관리자(102)는 클라이언트 환경(100) 내의 MFA 정책(108)의 프로비저닝 상태를 기록한다. 예로서, 클라이언트 핸들러(122)는 제1 정책 핸들러(110)로부터 수신된 프로비저닝 상태(예로서, 프로비저닝 실패, 프로비저닝 성공 등)를 저장소(126)에 기록한다. 일부 예에서, MFA 정책(108)의 프로비저닝에 실패하는 경우, 정책 관리자(102)는 클라이언트 환경(100)에서 프로비저닝할 새로운 MFA 정책을 구축한다. 일부 예에서, 클라이언트 핸들러(122)는 클라이언트 환경 프로비저닝 상태를 예로서 모니터를 통해 사용자에게 제공한다. 이어서, 제어는 블록 514로 진행하여, 클라이언트 환경(100)을 계속 모니터링할지를 판단한다.
블록 514에서, 정책 관리자(102)는 클라이언트 환경(100)을 계속 모니터링할지를 판단한다. 예로서, 클라이언트 핸들러(122)는 클라이언트 환경(100)으로부터 다른 갱신을 획득할 수 있다. 블록 514에서 예시적인 정책 관리자(102)가 클라이언트 환경(100)을 계속 모니터링하기로 판단하는 경우(예로서, 클라이언트 핸들러(122)가 다른 상태 갱신을 획득하는 경우 등), 제어는 블록 502로 복귀하여, 클라이언트 환경(100)에 대한 클라이언트 토폴로지 정보를 획득한다. 이와 달리, 블록 514에서 정책 관리자(102)가 (예로서, 셧다운 이벤트 등으로 인해) 클라이언트 환경(100)의 모니터링을 종료하기로 판단하는 경우, 도 5의 예시적인 프로세스(500)가 종료된다.
도 6의 프로그램은 클라이언트 환경(100) 내에 분산된 하나 이상의 정책 핸들러(예로서, 예시적인 제1 정책 핸들러(110)(도 1), 예시적인 제2 정책 핸들러(111)(도 1), 예시적인 제3 정책 핸들러(112)(도 1), 예시적인 제4 정책 핸들러(118)(도 1) 및/또는 더 일반적으로 도 4의 예시적인 정책 핸들러(400))를 이용하여 클라이언트 환경(100)(도 1) 내에서 MFA 정책(108)을 프로비저닝하는 예시적인 방법을 나타낸다. 도 6의 프로그램(600)은 예시적인 정책 핸들러(400)가 클라이언트 환경(100) 내의 하급 정책 핸들러를 식별하는 블록 602에서 시작된다. 예로서, 예시적인 토폴로지 맵퍼(404)(도 4)는 클라이언트 환경(100)의 내성을 수행하고, 클라이언트 환경(100) 내에 포함된 신뢰되는 환경에 대한 통신 경로를 식별(예로서, 맵핑 및/또는 발견)할 수 있다. 일부 예에서, 토폴로지 맵퍼(404)는 내성의 결과를 예시적인 토폴로지 맵(128)(도 1 및 4)에 기록할 수 있다. 블록 604에서, 정책 핸들러(400)는 클라이언트 토폴로지(128)를 예시적인 정책 관리자(102)(도 1)에 보고한다. 예로서, 하급 정책 핸들러(예로서, 제2 정책 핸들러(111), 제3 정책 핸들러(112) 및/또는 제4 정책 핸들러(118))는 그들 각각의 통신 경로를 제1 정책 핸들러(110)에 보고할 수 있고, 제1 정책 핸들러(110)는 클라이언트 환경(100)의 토폴로지 맵(128)을 정책 관리자(102)에 보고할 수 있다. 블록 606에서, 예시적인 정책 핸들러(400)는 그가 클라이언트 환경(100)을 통해 프로비저닝할 예시적인 MFA 정책(108)을 획득하였는지를 판단한다. 예로서, 주요 정책 핸들러(110)는 정책 관리자(102)로부터 클라이언트 환경(100)을 통해 프로비저닝할 MFA 정책(108)을 획득할 수 있고/있거나, 하급 정책 핸들러는 주요 정책 핸들러로부터 프로비저닝할 MFA 정책(108)을 획득할 수 있다. 블록 606에서 정책 핸들러(400)가 MFA 정책(108)을 획득하는 경우, 블록 608에서, 정책 핸들러(400)는 클라이언트 환경(100)을 통해 MFA 정책(108)을 프로비저닝한다. 도시된 예에서, 블록 608의 동작은 설명되는 바와 같은 도 7의 프로세스를 이용하여 구현될 수 있다. 제어는 블록 610으로 진행하여, 클라이언트 환경(100)을 계속 모니터링할지를 판단한다.
이와 달리, 블록 606에서 정책 핸들러(400)가 프로비저닝할 MFA 정책(108)을 획득하지 못하는 경우, 블록 612에서, 정책 핸들러(400)는 클라이언트 환경(100)에서 제어되는 피제어 자원(예로서, 예시적인 제1 피제어 자원(114)(도 1) 및/또는 예시적인 제2 피제어 자원(120)(도 1))에 대한 액세스가 요청되었는지를 판단한다. 예로서, 사용자는 운영 체제 로그온 프로세스를 개시할 수 있다. 블록 612에서 정책 핸들러(400)가 피제어 자원에 대한 액세스가 요청되지 않은 것으로 판단하는 경우, 제어는 블록 610으로 진행하여, 클라이언트 환경(100)을 계속 모니터링할지를 판단한다.
이와 달리, 블록 612에서 정책 핸들러(400)가 클라이언트 환경(100)의 제어하의 피제어 자원에 대한 액세스가 요청된 것으로 판단하는 경우, 블록 614에서, 정책 핸들러(400)는 클라이언트 환경(100)에서 MFA 정책(108)을 시행한다. 예로서, 정책 핸들러(400)는 MFA 정책(108)을 적용하여, 요청된 피제어 자원에 대한 액세스를 허가 또는 거절할지를 판단할 수 있다. 도시된 예에서, 블록 614의 동작은 설명되는 바와 같은 도 8의 프로세스를 이용하여 구현될 수 있다. 제어는 블록 610으로 진행하여, 클라이언트 환경(100)을 계속 모니터링할지를 판단한다.
블록 610에서, 정책 핸들러(400)는 클라이언트 환경(100)을 계속 모니터링할지를 판단한다. 예로서, 정책 핸들러(400)는 클라이언트 환경(100)의 제어하의 피제어 자원에 대한 액세스를 위한 다른 요청을 획득할 수 있다. 블록 610에서 예시적인 정책 핸들러(400)가 클라이언트 환경(100)을 계속 모니터링하기로 판단하는 경우(예로서, 정책 핸들러(400)가 피제어 자원에 대한 액세스를 위한 요청을 획득하는 경우 등), 제어는 블록 602로 복귀하여 클라이언트 환경(100) 내의 하급 정책 핸들러를 식별한다. 이와 달리, 블록 610에서 정책 핸들러(400)가 (예로서, 셧다운 이벤트 등으로 인해) 클라이언트 환경(100)의 모니터링을 종료하기로 판단하는 경우, 도 6의 예시적인 프로세스(600)가 종료된다.
도 7의 프로그램은 예시적인 클라이언트 환경(100)(도 1)을 통해 예시적인 MFA 정책(108)(도 1-3)을 프로비저닝하는 예시적인 방법을 나타낸다. 도 7의 예시적인 프로그램은 정책 핸들러(400)를 참조하지만, 임의의 정책 핸들러(110, 111, 112, 118)가 도 7의 프로그램을 구현하는 데 사용될 수 있다. 도 7의 예시적인 프로그램은 도 6의 블록 608을 구현하는 데 사용될 수 있다. 도 7의 프로그램은 예시적인 정책 핸들러(400)가 프로비저닝할 MFA 정책(108)을 획득하는 블록 702에서 시작된다. 예로서, 토폴로지 맵(128) 내의 주요 정책 핸들러(들)는 예시적인 정책 관리자(102)(도 1)로부터 MFA 정책(108)을 획득할 수 있고/있거나, 토폴로지 맵(128) 내의 하급 정책 핸들러는 주요 정책 핸들러로부터 MFA 정책(108)을 획득할 수 있다. 블록 704에서, 정책 핸들러(400)는 MFA 정책(108)을 파싱한다. 예로서, 예시적인 정책 파서(408)(도 4)는 MFA 정책(108)을 파싱하여, MFA 정책(108)이 정책 핸들러(400)가 시행할 수 있는 하위 정책을 포함하는지를 판단할 수 있다. 블록 706에서 정책 파서(408)가 MFA 정책(108)이 실행할 하나 이상의 하위 정책을 포함하는 것으로 판단하는 경우, 블록 708에서 정책 핸들러(400)는 정책 핸들러(400)가 시행할 하위 정책을 청구한다. 일부 예에서, 정책 핸들러(400)는 하위 정책에 서명하여 하위 정책을 청구한다. 예로서, 정책 핸들러(110)의 정책 파서(408)는 MFA 정책(108) 내의 레벨 3 하위 정책에 서명할 수 있다.
블록 706에서 정책 파서(408)가 MFA 정책(108)이 정책 핸들러(400)가 시행할 수 있는 하위 정책을 포함하지 않는 것으로 판단하는 경우, 또는 정책 파서(408)가 블록 708에서 MFA 정책(108)에 서명한 후에, 블록 710에서 정책 핸들러(400)는 정책 함의에 서명한다. 예로서, 예시적인 입증기(402)(도 4)는 정책 핸들러(400)에 고유한 비공개 키를 이용하여 MFA 정책(108)에 서명하여, 정책 핸들러(400)가 MFA 정책(108)을 파싱하였다는 것을 표시할 수 있다.
블록 712에서, 예시적인 정책 핸들러(400)는 MFA 정책(108)의 서명 상태가 하나 이상의 청구되지 않은 하위 정책을 포함하는지를 판단한다. 블록 712에서 예시적인 정책 파서(408)가 MFA 정책(108)의 서명 상태가 청구되지 않은 하위 정책을 포함하지 않는 것으로 판단하는 경우, 블록 714에서 정책 파서(408)는 MFA 정책(108)이 성공적으로 프로비저닝되었다는 것을 정책 관리자(102)에 보고한다. 일부 예에서, 정책 파서(408)는 MFA 정책(108)이 성공적으로 프로비저닝되었다는 것을 주요 정책 핸들러에 보고할 수 있다. 이어서, 도 7의 예시적인 프로세스가 종료된다.
이와 달리, 블록 712에서 정책 파서(408)가 MFA 정책(108)의 서명 상태가 하나 이상의 청구되지 않은 하위 정책을 포함하는 것으로 판단하는 경우, 블록 716에서 예시적인 정책 감독기(410)(도 4)는 클라이언트 환경(100) 내에 포함된 모든 정책 핸들러가 하위 정책을 청구하였는지를 판단한다. 예로서, 정책 감독기(410)는 정책 함의(예로서, 정책 신뢰 체인)를 파싱하여, 클라이언트 환경(100) 내의 모든 정책 핸들러에 대한 서명이 함의 내에 포함되어 있는지를 판단할 수 있다. 예로서, 정책 감독기(410)는 정책 함의 내에 포함된 비공개 키의 리스트를 예시적인 토폴로지 맵(128)(도 1 및 4) 내에 포함된 비공개 키와 비교할 수 있다. 블록 716에서 정책 감독기(410)는 정책 함의가 클라이언트 환경(100) 내의 모든 정책 핸들러를 포함하는 것으로 판단하는 경우, 블록 718에서 정책 감독기(410)는 정책 핸들러가 클라이언트 환경(100)에서 MFA 정책(108)을 프로비저닝하지 못했다는 것을 정책 관리자(102)에 보고한다. 일부 예에서, 정책 감독기(410)는 MFA 정책(108)이 성공적으로 프로비저닝되지 못했다는 것을 주요 정책 핸들러에 보고할 수 있다. 이어서, 도 7의 예시적인 프로세스가 종료된다.
이와 달리, 블록 716에서 정책 감독기(410)는 정책 함의가 모든 정책 핸들러를 포함하지 않는 것으로(예로서, 클라이언트 환경(100)이 MFA 정책(108)을 아직 처리하지 않은 정책 핸들러를 포함하는 것으로) 판단하는 경우, 블록 720에서 정책 감독기(410)는 트램펄린이 다음 정책 핸들러에 액세스해야 하는지를 판단한다. 예로서, 정책 감독기(410)는 다음 정책 핸들러가 현재 처리하고 있는 정책 핸들러보다 "낮은" 계층에 있는지(예로서, 다음 정책 핸들러가 센서 입력에 더 높은 보안 강도를 적용하는지)를 판단할 수 있다. 블록 720에서 정책 감독기(410)는 트램펄린이 다음 정책 핸들러에 액세스해야 하는 것으로 판단하는 경우, 블록 722에서 정책 핸들러는 다음 정책 핸들러에 대한 트램펄린을 구성한다. 예로서, 예시적인 트램펄린 핸들러(412)(도 4)는 예로서 2개의 정책 핸들러 간의 SIGMA 프로토콜과 같은 키 교환 프로토콜을 이용하여 신뢰되는 터널을 생성할 수 있다.
블록 720에서 정책 감독기(410)는 트램펄린이 다음 정책 핸들러에 액세스할 필요가 없는 것으로(예로서, 다음 정책 핸들러가 처리 정책 핸들러와 동일한 계층에 있는 것으로) 판단하는 경우, 또는 트램펄린 핸들러(412)가 블록 722에서 트램펄린을 구성한 후, 블록 724에서 정책 감독기(410)는 MFA 정책(108) 및 정책 함의를 처리를 위해 다음 정책 핸들러로 전송한다. 이어서, 도 7의 예시적인 프로세스가 종료된다.
도 8의 프로그램은 예시적인 클라이언트 환경(100)(도 1)에서 예시적인 MFA 정책(108)(도 1-8)을 시행하는 예시적인 방법을 나타낸다. 도 8의 도시된 예는 3개의 정책 레벨(예로서, 레벨 1 하위 정책, 레벨 2 하위 정책, 레벨 3 하위 정책)의 시행을 포함하지만, 1개, 2개 또는 4개 등과 같은 임의의 적절한 수의 정책 레벨이 대안으로서 사용될 수 있다.
도 8의 예시적인 프로그램은 도 6의 블록 614를 구현하는 데 사용될 수 있다. 도 8의 프로그램은 예시적인 정책 핸들러(400)(도 4)가 예시적인 지문 판독기(116)(도 1)와 같은 센서를 시동하는 블록 802에서 시작된다. 예로서, 예시적인 데이터베이스(114)(도 1)의 피제어 자원 액세스 요청에 응답하여 센서 활동이 요청 및/또는 검출될 수 있다(예로서, 제2 센서(116)로부터 예시적인 센서 입력(134)이 획득될 수 있다). 일부 예에서, 센서 초기화기(414)(도 4)는 예로서 MFA 정책(108) 내에 포함된 상황 하위 정책에 응답하여 센서의 특성을 변경한다. 예로서, 센서 초기화기(414)는 예로서 MFA 정책(108)의 적용을 최적화하기 위해 지문 판독기(116)의 전력, 지연, 처리 전력 등을 조정할 수 있다. 블록 804에서, 정책 핸들러(400)는 센서 입력에 대해 레벨 1 하위 정책을 시행한다. 도 1의 도시된 예에서, 제3 정책 핸들러(112)는 센서 입력(134)에 대해 레벨 1 하위 정책을 시행하려고 시도할 수 있다. 블록 806에서 예시적인 정책 평가기(416)가 레벨 1 하위 정책이 충족되지 않은 것으로(예로서, 지문 판독기가 신뢰되는 지문 판독기가 아닌 것으로) 판단하는 경우, 블록 808에서 예시적인 정책 감독기(410)는 신뢰되는 지문 판독기에 대한 액세스 및/또는 신뢰되는 지문 판독기로부터의 입력에 대한 액세스를 가질 수 있는 다른 정책 핸들러에 의해 트램펄린이 이용될 수 있는지를 판단한다. 예로서, 정책 감독기(410)는 제2 정책 핸들러(111)(도 1)에 대한 트램펄린이 이용 가능한지를 판단할 수 있다. 블록 808에서 정책 감독기(410)는 트램펄린(예로서, 제3 정책 핸들러(112)로부터 제2 정책 핸들러(111)로의 신뢰되는 채널)이 이용 가능한 것으로 판단하는 경우, 블록 810에서 예시적인 트램펄린 핸들러(412)는 센서 입력(134)을 보안 채널을 통해 정책 핸들러로 재지향하는 것을 가능하게 한다. 예로서, 정책 감독기(410)는 센서 입력(134)을 트램펄린 핸들러(412)에 의해 생성된 트램펄린을 통해 제2 정책 핸들러(111)로 전송할 수 있다. 제어가 블록 802로 복귀하고, 예시적인 정책 핸들러가 센서를 시동한다.
이와 달리, 블록 808에서 예시적인 정책 감독기(410)는 다음 정책 핸들러에 대한 트램펄린이 이용 가능하지 않은 것으로 판단하는 경우, 블록 812에서 MFA 정책(108)은 충족되지 않는다. 블록 814에서, (예로서, 거절된) 피제어 자원 액세스 요청 판단이 요청된 피제어 자원을 보호하는 정책 핸들러로 전송된다. 예로서, 제3 정책 핸들러(112)가 센서 입력(134)에 대해 레벨 1 하위 정책을 시행할 수 없는 경우, 제3 정책 핸들러(112)는 판단을 제1 정책 핸들러(110)의 예시적인 자원 핸들러(418)(도 4)로 전송하여, 판단을 시행할 수 있다(예로서, 제1 피제어 자원(114)에 대한 액세스를 거부할 수 있다). 이어서, 도 8의 예시적인 프로세스(800)가 종료된다.
블록 806으로 복귀하여, 블록 806에서 정책 평가기(416)가 센서 입력(134)이 레벨 1 하위 정책을 충족시키는 것으로(예로서, 제2 센서(116)가 신뢰되는 지문 판독기인 것으로) 판단하는 경우, 블록 816에서 정책 핸들러는 센서 입력에 대해 레벨 2 하위 정책을 시행한다. 블록 818에서 정책 평가기(416)가 레벨 2 하위 정책이 충족되지 않는 것으로(예로서, 지문 판독기가 하위 정책에서 정의되는 최소 보안 강도 기준을 충족시키지 못하는 것으로) 판단하는 경우, 제어는 블록 808로 복귀하여, 레벨 2 하위 정책을 시행하기 위해 다른 정책 핸들러에 의해 트램펄린이 이용될 수 있는지를 판단한다. 이와 달리, 블록 818에서 정책 평가기(416)가 센서 입력이 레벨 2 하위 정책을 충족시키는 것으로 판단하는 경우, 블록 820에서 정책 핸들러는 센서 입력에 대해 레벨 3 하위 정책을 시행한다. 블록 822에서 정책 평가기(416)가 레벨 3 하위 정책이 충족되지 않는 것으로(예로서, 정책 A, 정책 B, 정책 C, 정책 D 중 하나 이상이 참 문장을 산출하지 못하는 것으로) 판단하는 경우, 제어는 블록 808로 복귀하여, 레벨 3 하위 정책을 시행하기 위해 다른 정책 핸들러에 의해 트램펄린이 이용될 수 있는지를 판단한다.
블록 822에서 정책 평가기(416)가 센서 입력이 레벨 3 하위 정책을 충족시키는 것으로 판단하는 경우, 블록 824에서 MFA 정책(108)이 충족된다. 블록 814에서, (예로서, 허가된) 피제어 자원 액세스 요청 판단이 요청된 피제어 자원을 보호하는 정책 핸들러로 전송된다. 예로서, 자원 핸들러(418)는 판단을 시행한다(예로서, 제1 피제어 자원(114)에 대한 액세스를 허가한다). 이어서, 도 8의 예시적인 프로세스(800)가 종료된다.
도 8에 개시된 예시적인 방법은 순차적으로 동작하지만, 정책 핸들러는 병렬로 동작할 수 있다. 추가로 또는 대안으로서, MFA 정책은 하나 이상의 정책 레벨을 포함하지 않을 수 있다. 예로서, MFA 정책은 레벨 1 정책, 레벨 2 정책 및/또는 레벨 3 정책을 포함하지 않을 수 있다. 예로서, 레벨 1 정책을 갖지 않는 MFA 정책을 시행할 때, 제어는 블록 802로부터 블록 816으로 진행할 수 있다. MFA 정책이 레벨 2 정책 및/또는 레벨 3 정책을 포함하지 않는 경우에 유사한 프로세스가 이용될 수 있다.
도 9는 도 1의 정책 관리자(102) 및/또는 도 1의 정책 핸들러(110, 111, 112, 118) 및/또는 도 4의 정책 핸들러(400)를 구현하기 위해 도 5-8의 명령어를 실행할 수 있는 예시적인 프로세서 플랫폼(900)의 블록도이다. 프로세서 플랫폼(900)은 예로서 서버, 개인용 컴퓨터, 이동 장치(예로서, 셀폰, 스마트폰, 태블릿, 예로서 iPad(상표)), 개인 휴대 단말기(PDA) 또는 임의의 다른 타입의 컴퓨팅 장치일 수 있다.
도시된 예의 프로세서 플랫폼(900)은 프로세서(912)를 포함한다. 도시된 예의 프로세서는 하드웨어이다. 예로서, 프로세서(912)는 임의의 원하는 패밀리 또는 제조자로부터의 하나 이상의 집적 회로, 논리 회로, 마이크로프로세서 또는 제어기에 의해 구현될 수 있다.
도시된 예의 프로세서(912)는 로컬 메모리(913)(예로서, 캐시)를 포함한다. 도시된 예의 프로세서(912)는 버스(918)를 통해 휘발성 메모리(914) 및 비휘발성 메모리(916)를 포함하는 메인 메모리와 통신한다. 휘발성 메모리(914)는 동기식 동적 랜덤 액세스 메모리(SDRAM), 동적 랜덤 액세스 메모리(DRAM), RAMBUS 동적 랜덤 액세스 메모리(RDRAM) 및/또는 임의의 다른 타입의 랜덤 액세스 메모리 장치에 의해 구현될 수 있다. 비휘발성 메모리(916)는 플래시 메모리 및/또는 임의의 다른 원하는 타입의 메모리 장치에 의해 구현될 수 있다. 메인 메모리(914, 916)에 대한 액세스는 메모리 제어기에 의해 제어된다.
도시된 예의 프로세서 플랫폼(900)은 인터페이스 회로(920)도 포함한다. 인터페이스 회로(920)는 임의 타입의 인터페이스 표준, 예로서 이더넷 인터페이스, 유니버설 직렬 버스(USB) 및/또는 PCI 익스플레스 인터페이스에 의해 구현될 수 있다.
도시된 예에서, 하나 이상의 입력 장치(922)가 인터페이스 회로(920)에 접속된다. 입력 장치(들)(922)는 사용자가 프로세서(912)에 데이터 및 커맨드를 입력하는 것을 허가한다. 입력 장치(들)는 예로서 오디오 센서, 마이크, (정지 또는 비디오) 카메라, 키보드, 버튼, 마우스, 터치스크린, 트랙패드, 트랙볼, 아이소포인트(isopoint) 및/또는 음성 인식 시스템에 의해 구현될 수 있다.
하나 이상의 출력 장치(924)도 도시된 예의 인터페이스 회로(920)에 접속된다. 출력 장치(924)는 예로서 디스플레이 장치(예로서, 발광 다이오드(LED), 유기 발광 다이오드(OLED), 액정 디스플레이, 음극선관 디스플레이(CRT), 터치스크린, 촉각 입력 장치, 프린터 및/또는 스피커)에 의해 구현될 수 있다. 따라서, 도시된 예의 인터페이스 회로(920)는 통상적으로 그래픽 드라이버 카드, 그래픽 드라이버 칩 또는 그래픽 드라이버 프로세서를 포함한다.
도시된 예의 인터페이스 회로(920)는 네트워크(926)(예로서, 이더넷 접속, 디지털 가입자 회선(DSL), 전화선, 동축 케이블, 셀룰러 전화 시스템 등)를 통한 외부 머신(예로서, 임의 종류의 컴퓨팅 장치)과의 데이터의 교환을 가능하게 하기 위한 송신기, 수신기, 송수신기, 모뎀 및/또는 네트워크 인터페이스 카드와 같은 통신 장치도 포함한다.
도시된 예의 프로세서 플랫폼(900)은 소프트웨어 및/또는 데이터를 저장하기 위한 하나 이상의 대용량 저장 장치(928)도 포함한다. 그러한 대용량 저장 장치(928)의 예는 플로피 디스크 드라이브, 하드 디스크 드라이브, 컴팩트 디스크 드라이브, 블루레이 디스크 드라이브, RAID 시스템 및 디지털 다기능 디스크(DVD) 드라이브를 포함한다.
도 5-8의 코딩된 명령어는 대용량 저장 장치(928) 내에, 휘발성 메모리(914) 내에, 비휘발성 메모리(916) 내에 그리고/또는 CD 또는 DVD와 같은 이동식 유형 컴퓨터 판독 가능 저장 매체 상에 저장될 수 있다.
아래의 예는 본 명세서에서 개시되는 추가적인 예시적인 방법, 장치, 시스템 및/또는 제조물을 식별한다. 분산 환경에서 글로벌 정책을 관리하기 위한 예시적인 정책 핸들러는 제1 정책 핸들러에 의해 시행될 수 있는 글로벌 정책의 제1 하위 정책을 식별하기 위한 파서, 제1 하위 정책에 서명하기 위한 입증기, 및 글로벌 정책의 서명 상태에 기초하여 글로벌 정책을 제2 정책 핸들러로 전송할지를 판단하고, 글로벌 정책의 서명 상태가 서명되지 않은 제2 하위 정책을 표시할 때 글로벌 정책을 제2 정책 핸들러로 전송하기 위한 감독기를 포함한다. 다른 개시되는 예에서, 제1 정책 핸들러는 제1 정책 핸들러 및 제2 정책 핸들러를 식별하기 위한 맵을 생성하기 위한 맵퍼를 포함하고, 맵은 (a) 제1 정책 핸들러와 제2 정책 핸들러 사이의 통신 경로 및 (b) 제2 정책 핸들러의 서명을 식별하고, 감독기는 맵을 처리하고, 글로벌 정책의 서명 상태가 맵에서 식별되는 제2 정책 핸들러 서명을 포함하지 않을 때 글로벌 정책을 제2 정책 핸들러로 전송한다. 다른 개시되는 정책 핸들러는 감독기가 맵에서 식별되는 통신 경로가 보안 경로인지를 판단하는 예를 포함한다. 일부 다른 예에서, 제1 정책 핸들러는 통신 경로가 비보안 경로라는 판단에 응답하여 제1 정책 핸들러와 제2 정책 핸들러 사이에 제2 보안 경로를 생성하기 위한 트램펄린 핸들러를 포함한다. 또 다른 예에서, 제1 정책 핸들러는 맵에 포함된 다른 정책 핸들러에 기초하여 글로벌 정책의 적용을 기록하기 위한 감사기를 포함한다. 다른 개시되는 정책 핸들러는 감사기가 글로벌 정책의 제3 하위 정책에 포함된 팩터를 식별하고, 맵이 팩터에 대응하는 센서에 대한 통신 경로를 식별하는지를 판단하고, 맵이 센서에 대한 통신 경로를 식별하지 않을 때 제3 하위 정책을 배제하는 교정된 글로벌 정책을 생성함으로써 글로벌 정책을 처리하고, 감독기가 교정된 글로벌 정책을 보안 경로를 통해 제2 정책 핸들러로 전송하는 예를 포함한다. 일부 개시되는 예에서, 맵퍼는 제2 정책 핸들러의 특성을 식별하기 위한 맵을 생성한다. 다른 개시되는 정책 핸들러는 감독기가 제2 정책 핸들러의 특성이 서명되지 않은 제2 하위 정책의 하나 이상의 기준을 충족시키는지를 판단하고, 제2 정책 핸들러의 특성이 서명되지 않은 제2 하위 정책의 하나 이상의 기준을 충족시킬 때 글로벌 정책을 제2 정책 핸들러로 전송하는 예를 포함한다. 일부 예에서, 제2 정책 핸들러의 예시적인 특성은 제2 정책 핸들러의 기능 타입 또는 제2 정책 핸들러의 보안 강도 중 적어도 하나를 포함하고, 서명되지 않은 제2 정책 핸들러의 하나 이상의 기준은 기능 요구 또는 최소 보안 강도 중 적어도 하나를 포함한다. 일부 예에서, 입증기는 제1 하위 정책에 비공개 키를 첨부함으로써 제1 하위 정책에 서명하고, 비공개 키는 제1 정책 핸들러에 고유하다. 또 다른 예에서, 입증기는 파서가 제1 정책 핸들러에 의해 시행될 수 있는 하위 정책을 식별할 수 없을 때 글로벌 정책에 서명한다. 일부 예에서, 파서는 제1 하위 정책을 글로벌 정책의 서명되지 않은 하위 정책으로서 식별함으로써 글로벌 정책의 제1 하위 정책을 식별한다. 일부 다른 예에서, 파서는 글로벌 정책이 서명되지 않은 하위 정책을 포함하지 않을 때 글로벌 정책이 분산 환경에서 성공적으로 프로비저닝된 것으로 판단한다. 다른 예는 통신 경로가 비보안 경로라는 판단에 응답하여 제1 정책 핸들러로부터 제2 정책 핸들러로의 보안 경로를 생성하기 위한 트램펄린 핸들러를 포함한다. 또 다른 예에서, 감독기는 제1 정책 핸들러와 제2 정책 핸들러 사이의 보안 경로를 통해 글로벌 정책을 제2 정책 핸들러로 전송한다.
분산 환경에서 글로벌 정책을 관리하기 위한 예시적인 방법은 프로세서를 이용하여, 제1 정책 핸들러에 의해 시행될 수 있는 글로벌 정책의 제1 하위 정책을 식별하는 단계, 제1 하위 정책에 서명하는 단계, 프로세서를 이용하여, 글로벌 정책의 서명 상태에 기초하여 글로벌 정책을 제2 정책 핸들러로 전송할지를 판단하는 단계, 및 글로벌 정책의 서명 상태가 서명되지 않은 제2 하위 정책을 표시할 때 글로벌 정책을 제2 정책 핸들러로 전송하는 단계를 포함한다. 일부 예에서, 글로벌 정책을 전송할지를 판단하는 단계는 제1 정책 핸들러 및 제2 정책 핸들러를 식별하는 맵을 생성하는 단계 - 맵은 (a) 제1 정책 핸들러와 제2 정책 핸들러 사이의 통신 경로 및 (b) 제2 정책 핸들러의 서명을 식별함 -, 및 글로벌 정책의 서명 상태가 맵에서 식별되는 제2 정책 핸들러 서명을 포함하지 않을 때 글로벌 정책을 제2 정책 핸들러로 전송하는 단계를 포함한다. 일부 다른 예에서, 방법은 맵에서 식별되는 통신 경로가 보안 경로인지를 판단하는 단계를 포함한다. 일부 예시적인 방법은 통신 경로가 비보안 경로라는 판단에 응답하여 제1 정책 핸들러와 제2 정책 핸들러 사이에 제2 보안 경로를 생성하는 단계를 포함한다. 또 다른 예시적인 방법은 맵에 포함된 추가 정책 핸들러에 기초하여 글로벌 정책을 처리하는 단계를 포함한다. 일부 예에서, 글로벌 정책을 처리하는 단계는 글로벌 정책의 제3 하위 정책에 포함된 팩터를 식별하는 단계, 맵이 팩터에 대응하는 센서에 대한 통신 경로를 식별하는지를 판단하는 단계, 맵이 센서에 대한 통신 경로를 식별하지 않을 때 제3 하위 정책을 배제하는 교정된 글로벌 정책을 생성하는 단계, 및 교정된 글로벌 정책을 보안 경로를 통해 제2 정책 핸들러로 전송하는 단계를 포함한다. 일부 예시적인 방법에서, 맵을 생성하는 단계는 제2 정책 핸들러의 특성을 식별하는 단계를 포함한다. 다른 개시되는 예시적인 방법은 제2 정책 핸들러의 특성이 서명되지 않은 제2 하위 정책의 하나 이상의 기준을 충족시키는지를 판단하는 단계, 및 제2 정책 핸들러의 특성이 서명되지 않은 제2 하위 정책의 하나 이상의 기준을 충족시킬 때 글로벌 정책을 제2 정책 핸들러로 전송하는 단계를 포함한다. 일부 예에서, 제2 정책 핸들러의 예시적인 특성은 제2 정책 핸들러의 기능 타입 또는 제2 정책 핸들러의 보안 강도 중 적어도 하나를 포함하고, 서명되지 않은 제2 정책 핸들러의 하나 이상의 기준은 기능 요구 또는 최소 보안 강도 중 적어도 하나를 포함한다. 또 다른 예에서, 방법은 제1 하위 정책에 서명하는 단계가 제1 하위 정책에 비공개 키를 첨부하는 단계를 포함하는 것을 포함하고, 비공개 키는 제1 정책 핸들러에 고유하다. 다른 예시적인 방법은 제1 하위 정책을 식별하지 못하는 것에 응답하여 글로벌 정책에 서명하는 단계를 포함한다. 또 다른 예시적인 방법은 글로벌 정책의 제1 하위 정책을 식별하는 단계가 제1 하위 정책이 글로벌 정책의 서명되지 않은 하위 정책인 것을 식별하는 단계를 더 포함하는 것을 포함한다. 일부 예에서, 방법은 글로벌 정책이 서명되지 않은 하위 정책을 포함하지 않는지를 판단하는 단계, 및 글로벌 정책이 서명되지 않은 하위 정책을 포함하지 않을 때 글로벌 정책을 분산 환경에서 성공적으로 프로비저닝된 것으로서 로깅하는 단계를 포함한다. 다른 예는 제1 정책 핸들러와 제2 정책 핸들러 사이의 보안 경로를 통해 글로벌 정책을 제2 정책 핸들러로 전송하는 방법을 포함한다. 일부 다른 예에서, 방법은 통신 경로가 비보안 경로라는 판단에 응답하여 제1 정책 핸들러로부터 제2 정책 핸들러로의 보안 경로를 생성하는 단계를 포함한다.
예시적인 개시되는 컴퓨터 판독 가능 저장 매체는, 실행될 때, 제1 정책 핸들러에 의해 시행될 수 있는 글로벌 정책의 제1 하위 정책을 식별하고, 제1 하위 정책에 서명하고, 글로벌 정책의 서명 상태에 기초하여 글로벌 정책을 제2 정책 핸들러로 전송할지를 판단하고, 글로벌 정책의 서명 상태가 서명되지 않은 제2 하위 정책을 표시할 때 글로벌 정책을 제2 정책 핸들러로 전송하는 명령어를 포함한다. 일부 예시적인 명령어는 실행될 때 제1 정책 핸들러 및 제2 정책 핸들러를 식별하기 위한 맵을 생성하고 - 맵은 (a) 제1 정책 핸들러와 제2 정책 핸들러 사이의 통신 경로 및 (b) 제2 정책 핸들러의 서명을 식별함 -, 글로벌 정책의 서명 상태가 맵에서 식별되는 제2 정책 핸들러 서명을 포함하지 않을 때 글로벌 정책을 제2 정책 핸들러로 전송한다. 일부 개시되는 예에서, 명령어는 실행될 때 머신으로 하여금 맵에서 식별되는 통신 경로가 보안 경로인지를 판단하게 한다. 일부 예시적인 개시되는 명령어는 통신 경로가 비보안 경로라는 판단에 응답하여 제1 정책 핸들러와 제2 정책 핸들러 사이에 제2 보안 경로를 생성하는 것을 포함한다. 다른 개시되는 예에서, 명령어는 실행될 때 머신으로 하여금 맵에 포함된 제3 정책 핸들러에 기초하여 글로벌 정책을 처리하게 한다. 일부 개시되는 예시적인 명령어는 글로벌 정책의 제3 하위 정책에 포함된 팩터를 식별하고, 맵이 팩터에 대응하는 센서에 대한 통신 경로를 식별하는지를 판단하고, 맵이 센서에 대한 통신 경로를 식별하지 않을 때 제3 하위 정책을 배제하는 교정된 글로벌 정책을 생성하고, 교정된 글로벌 정책을 보안 경로를 통해 제2 정책 핸들러로 전송한다. 일부 개시되는 예에서, 명령어는 제2 정책 핸들러의 특성을 식별함으로써 맵을 생성하는 것을 포함한다. 다른 개시되는 예시적인 명령어는 실행될 때 머신으로 하여금 제2 정책 핸들러의 특성이 서명되지 않은 제2 하위 정책의 하나 이상의 기준을 충족시키는지를 판단하고, 제2 정책 핸들러의 특성이 서명되지 않은 제2 하위 정책의 하나 이상의 기준을 충족시킬 때 글로벌 정책을 제2 정책 핸들러로 전송하게 한다. 일부 예에서, 제2 정책 핸들러의 예시적인 특성은 제2 정책 핸들러의 기능 타입 또는 제2 정책 핸들러의 보안 강도 중 적어도 하나를 포함하고, 서명되지 않은 제2 정책 핸들러의 하나 이상의 기준은 기능 요구 또는 최소 보안 강도 중 적어도 하나를 포함한다. 일부 예시적인 명령어는 실행될 때 제1 하위 정책에 비공개 키를 첨부하고, 비공개 키는 제1 정책 핸들러에 고유하다. 다른 예시적인 명령어는 제1 하위 정책을 식별하지 못하는 것에 응답하여 글로벌 정책에 서명하는 것을 포함한다. 일부 예에서, 명령어는 실행될 때 머신으로 하여금 제1 하위 정책이 서명된 하위 정책일 때 글로벌 정책이 서명되지 않은 하위 정책을 포함하지 않는지를 판단하고, 글로벌 정책이 서명되지 않은 하위 정책을 포함하지 않을 때 글로벌 정책을 분산 환경에서 성공적으로 프로비저닝된 것으로서 로깅하게 한다. 일부 예시적인 명령어는 통신 경로가 비보안 경로일 때 제1 정책 핸들러로부터 제2 정책 핸들러로의 보안 경로를 생성하는 것을 포함한다.
분산 환경에서 제1 정책 핸들러에서 글로벌 정책을 관리하기 위한 예시적인 개시되는 시스템은 제1 정책 핸들러에 의해 시행될 수 있는 글로벌 정책의 제1 하위 정책을 식별하기 위한 수단, 제1 하위 정책에 서명하기 위한 수단, 글로벌 정책의 서명 상태에 기초하여 글로벌 정책을 제2 정책 핸들러로 전송할지를 판단하기 위한 수단, 및 글로벌 정책의 서명 상태가 서명되지 않은 제2 하위 정책을 표시할 때 글로벌 정책을 제2 정책 핸들러로 전송하기 위한 수단을 포함한다. 일부 예에서, 시스템은 제1 정책 핸들러 및 제2 정책 핸들러를 식별하는 맵을 생성하기 위한 수단 - 맵은 (a) 제1 정책 핸들러와 제2 정책 핸들러 사이의 통신 경로 및 (b) 제2 정책 핸들러의 서명을 식별함 -, 및 글로벌 정책의 서명 상태가 맵에서 식별되는 제2 정책 핸들러 서명을 포함하지 않을 때 글로벌 정책을 제2 정책 핸들러로 전송하기 위한 수단을 포함한다. 다른 예에서, 시스템은 맵에서 식별되는 통신 경로가 보안 경로인지를 판단하기 위한 수단을 포함한다. 일부 예시적인 시스템은 통신 경로가 비보안 경로라는 판단에 응답하여 제1 정책 핸들러와 제2 정책 핸들러 사이에 제2 보안 경로를 생성하기 위한 수단을 포함한다. 다른 예시적인 시스템은 맵에 포함된 추가 정책 핸들러에 기초하여 글로벌 정책을 처리하기 위한 수단을 포함한다. 일부 예시적인 시스템에서, 글로벌 정책을 처리하기 위한 수단은 글로벌 정책의 제3 하위 정책에 포함된 팩터를 식별하기 위한 수단, 맵이 팩터에 대응하는 센서에 대한 통신 경로를 식별하는지를 판단하기 위한 수단, 맵이 센서에 대한 통신 경로를 식별하지 않을 때 제3 하위 정책을 배제하는 교정된 글로벌 정책을 생성하기 위한 수단, 및 교정된 글로벌 정책을 보안 경로를 통해 제2 정책 핸들러로 전송하기 위한 수단을 포함한다. 일부 예시적인 시스템에서, 맵을 생성하기 위한 수단은 제2 정책 핸들러의 특성을 식별하기 위한 수단을 포함한다. 다른 개시되는 예시적인 시스템은 제2 정책 핸들러의 특성이 서명되지 않은 제2 하위 정책의 하나 이상의 기준을 충족시키는지를 판단하기 위한 수단, 및 제2 정책 핸들러의 특성이 서명되지 않은 제2 하위 정책의 하나 이상의 기준을 충족시킬 때 글로벌 정책을 제2 정책 핸들러로 전송하기 위한 수단을 포함한다. 일부 예에서, 제2 정책 핸들러의 예시적인 특성은 제2 정책 핸들러의 기능 타입 또는 제2 정책 핸들러의 보안 강도 중 적어도 하나를 포함하고, 서명되지 않은 제2 정책 핸들러의 하나 이상의 기준은 기능 요구 또는 최소 보안 강도 중 적어도 하나를 포함한다. 또 다른 예시적인 시스템에서, 제1 하위 정책에 서명하기 위한 수단은 제1 하위 정책에 비공개 키를 첨부하기 위한 수단을 포함하고, 비공개 키는 제1 정책 핸들러에 고유하다. 다른 예시적인 시스템은 제1 하위 정책을 식별하지 못하는 것에 응답하여 글로벌 정책에 서명하기 위한 수단을 포함한다. 일부 예시적인 시스템에서, 글로벌 정책의 제1 하위 정책을 식별하기 위한 수단은 제1 하위 정책을 글로벌 정책의 서명되지 않은 하위 정책으로서 식별하기 위한 수단을 포함한다. 다른 예시적인 시스템은 글로벌 정책이 서명되지 않은 하위 정책을 포함하지 않는지를 판단하기 위한 수단, 및 글로벌 정책이 서명되지 않은 하위 정책을 포함하지 않을 때 글로벌 정책을 분산 환경에서 성공적으로 프로비저닝된 것으로서 로깅하기 위한 수단을 포함한다. 또 다른 예에서, 시스템은 통신 경로가 비보안 경로일 때 제1 정책 핸들러로부터 제2 정책 핸들러로의 보안 경로를 생성하기 위한 수단을 포함한다.
위로부터, 예로서 클라이언트 환경 내의 상이한 피제어 자원이 상이한 정책 핸들러에 의해 보호될 수 있을 때에도 피제어 자원 액세스 요청에 대해 MFA 정책이 충족되는 것을 보증하는 방법, 장치 및 제조물이 개시되었다는 것을 알 것이다.
소정의 예시적인 방법, 장치 및 제조물이 본 명세서에서 개시되었지만, 본 특허의 보호 범위는 그에 한정되지 않는다. 이와 달리, 본 특허는 본 특허의 청구항의 범위에 타당하게 속하는 모든 방법, 장치 및 제조물을 포괄한다.

Claims (25)

  1. 분산 컴퓨팅 환경에서 멀티팩터 인증을 프로비저닝하는 제1 정책 핸들러로서,
    상기 분산 컴퓨팅 환경은 상기 제1 정책 핸들러, 제2 정책 핸들러 및 정책 관리자 서버를 포함하고, 상기 제1 정책 핸들러는 제1 인증 팩터 데이터를 수집하는 것이 가능한 자원과 통신하며,
    상기 제1 정책 핸들러는 상기 자원과 통신하는 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    네트워크 통신을 통해 상기 정책 관리자 서버로부터 획득한 글로벌 멀티팩터 인증 정책에 응답하여 파서를 실행하고 - 상기 파서는, 상기 글로벌 멀티팩터 인증 정책 중 상기 제1 정책 핸들러에 의해 시행될 수 있으면서 다른 정책 핸들러에 의해서는 서명되지 않는 제1 하위 정책을 식별하고, 상기 글로벌 멀티팩터 인증 정책은 상기 제1 하위 정책, 제2 하위 정책 및 제3 하위 정책을 포함하며, 상기 파서는 상기 제1 정책 핸들러가 상기 제1 하위 정책을 시행할 것임을 표시하기 위해 상기 제1 하위 정책을 서명함 -,
    상기 제2 하위 정책과 상기 제3 하위 정책 중 적어도 하나가 다른 정책 핸들러에 의해 서명되지 않았음을 판정하도록 감독기를 실행하는 - 상기 제2 하위 정책과 상기 제3 하위 정책 중 상기 적어도 하나가 다른 정책 핸들러에 의해 서명되지 않았을 때, 상기 감독기는 상기 글로벌 멀티팩터 인증 정책의 프로비저닝을 지속하도록 상기 글로벌 멀티팩터 인증 정책을 네트워크 통신을 통해 상기 제2 정책 핸들러로 전송함 -
    제1 정책 핸들러.
  2. 제1항에 있어서,
    상기 제1 정책 핸들러 및 상기 제2 정책 핸들러를 식별하기 위한 맵을 생성하기 위한 맵퍼(mapper)를 더 포함하되,
    상기 맵은 (a) 상기 제1 정책 핸들러와 상기 제2 정책 핸들러 사이의 통신 경로 및 (b) 상기 제2 정책 핸들러의 서명을 식별하고,
    상기 감독기는 상기 맵을 처리하고, 상기 글로벌 멀티팩터 인증 정책의 서명 상태가 상기 맵에서 식별되는 상기 제2 정책 핸들러의 상기 서명을 포함하지 않을 때 상기 글로벌 멀티팩터 인증 정책을 상기 제2 정책 핸들러로 전송하는
    제1 정책 핸들러.
  3. 제2항에 있어서,
    상기 감독기는 상기 맵에서 식별되는 상기 통신 경로가 보안 경로인지 여부를 판단하는
    제1 정책 핸들러.
  4. 제3항에 있어서,
    상기 통신 경로가 비보안 경로(insecure path)라는 판단에 응답하여, 상기 제1 정책 핸들러와 상기 제2 정책 핸들러 사이에 제2 보안 경로를 생성하기 위한 트램펄린 핸들러(trampoline handler)를 더 포함하는
    제1 정책 핸들러.
  5. 제2항에 있어서,
    감사기(auditor)를 더 포함하되, 상기 감사기는
    상기 글로벌 멀티팩터 인증 정책의 상기 제3 하위 정책에 포함된 팩터를 식별하고,
    상기 맵이 상기 팩터에 대응하는 센서에 대한 통신 경로를 식별하는지 여부를 판단하고,
    상기 맵이 상기 센서에 대한 상기 통신 경로를 식별하지 않을 때 상기 제3 하위 정책을 배제하는 교정된 글로벌 멀티팩터 인증 정책을 생성하며,
    상기 감독기는 상기 교정된 글로벌 멀티팩터 인증 정책을 보안 경로를 통해 상기 제2 정책 핸들러로 전송하는
    제1 정책 핸들러.
  6. 제2항에 있어서,
    상기 맵퍼는 상기 제2 정책 핸들러의 특성을 식별하기 위해 상기 맵을 생성하는
    제1 정책 핸들러.
  7. 제6항에 있어서,
    상기 감독기는
    상기 제2 정책 핸들러의 특성이 서명되지 않은 제2 하위 정책의 하나 이상의 기준을 충족시키는지 여부를 판단하고,
    상기 제2 정책 핸들러의 특성이 상기 서명되지 않은 제2 하위 정책의 하나 이상의 기준을 충족시킬 때 상기 글로벌 멀티팩터 인증 정책을 상기 제2 정책 핸들러로 전송하는
    제1 정책 핸들러.
  8. 제7항에 있어서,
    상기 제2 정책 핸들러의 특성은 상기 제2 정책 핸들러의 기능 타입 또는 상기 제2 정책 핸들러의 보안 강도 중 적어도 하나를 포함하고, 상기 서명되지 않은 제2 하위 정책의 하나 이상의 기준은 기능 요구 또는 최소 보안 강도 중 적어도 하나를 포함하는
    제1 정책 핸들러.
  9. 분산 컴퓨팅 환경에서 멀티팩터 인증을 프로비저닝하는 방법으로서,
    상기 분산 컴퓨팅 환경은 제1 정책 핸들러, 제2 정책 핸들러 및 정책 관리자 서버를 포함하고,
    상기 방법은
    네트워크 통신을 통해 상기 정책 관리자 서버로부터 수신한 글로벌 멀티팩터 인증 정책에 응답하여, 상기 제1 정책 핸들러의 적어도 하나의 프로세서를 사용하여 명령어를 실행함으로써, 상기 글로벌 멀티팩터 인증 정책 중 상기 제1 정책 핸들러에 의해 시행될 수 있으면서 다른 정책 핸들러에 의해서는 서명되지 않는 제1 하위 정책을 식별하는 단계 - 상기 글로벌 멀티팩터 인증 정책은 상기 제1 하위 정책, 제2 하위 정책 및 제3 하위 정책을 포함함 - 와,
    상기 제1 정책 핸들러가 상기 제1 하위 정책을 시행할 것임을 표시하기 위해 상기 적어도 하나의 프로세서를 사용하여 상기 제1 하위 정책을 전자 서명하는 단계와,
    상기 적어도 하나의 프로세서를 사용하여 명령어를 실행함으로써, 상기 제2 하위 정책과 상기 제3 하위 정책 중 적어도 하나가 다른 정책 핸들러에 의해 서명되지 않았음을 판단하는 단계와,
    상기 제2 하위 정책과 상기 제3 하위 정책 중 적어도 하나가 다른 정책 핸들러에 의해 서명되지 않았을 때, 상기 적어도 하나의 프로세서를 사용하여 명령어를 실행함으로써, 상기 글로벌 멀티팩터 인증 정책의 프로비저닝을 지속하도록 상기 글로벌 멀티팩터 인증 정책을 상기 제2 정책 핸들러로 전송하는 단계를 포함하는
    멀티팩터 인증을 프로비저닝하는 방법.
  10. 제9항에 있어서,
    상기 판단하는 단계는 상기 제1 정책 핸들러 및 상기 제2 정책 핸들러를 식별하기 위한 맵을 생성하는 단계를 더 포함하고 - 상기 맵은 (a) 상기 제1 정책 핸들러와 상기 제2 정책 핸들러 사이의 통신 경로 및 (b) 상기 제2 정책 핸들러의 서명을 식별함 -,
    상기 전송하는 단계는 상기 글로벌 멀티팩터 인증 정책의 서명 상태가 상기 맵에서 식별되는 상기 제2 정책 핸들러의 상기 서명을 포함하지 않을 때 상기 글로벌 멀티팩터 인증 정책을 상기 제2 정책 핸들러로 전송하는 단계를 더 포함하는
    멀티팩터 인증을 프로비저닝하는 방법.
  11. 제10항에 있어서,
    상기 맵에서 식별되는 상기 통신 경로가 보안 경로인지 여부를 판단하는 단계를 더 포함하는
    멀티팩터 인증을 프로비저닝하는 방법.
  12. 제11항에 있어서,
    상기 통신 경로가 비보안 경로라는 판단에 응답하여, 상기 제1 정책 핸들러와 상기 제2 정책 핸들러 사이에 제2 보안 경로를 생성하는 단계를 더 포함하는
    멀티팩터 인증을 프로비저닝하는 방법.
  13. 제10항에 있어서,
    상기 맵에 포함된 추가 정책 핸들러에 기초하여 상기 글로벌 멀티팩터 인증 정책을 처리하는 단계를 더 포함하는
    멀티팩터 인증을 프로비저닝하는 방법.
  14. 제13항에 있어서,
    상기 글로벌 멀티팩터 인증 정책을 처리하는 단계는
    상기 글로벌 멀티팩터 인증 정책의 상기 제3 하위 정책에 포함된 팩터를 식별하는 단계와,
    상기 맵이 상기 팩터에 대응하는 센서에 대한 통신 경로를 식별하는지 여부를 판단하는 단계와,
    상기 맵이 상기 센서에 대한 상기 통신 경로를 식별하지 않을 때 상기 제3 하위 정책을 배제하는 교정된 글로벌 멀티팩터 인증 정책을 생성하는 단계와,
    상기 교정된 글로벌 멀티팩터 인증 정책을 보안 경로를 통해 상기 제2 정책 핸들러로 전송하는 단계를 더 포함하는
    멀티팩터 인증을 프로비저닝하는 방법.
  15. 제9항에 있어서,
    상기 제1 하위 정책을 전자 서명하는 단계는 상기 제1 하위 정책에 비공개 키를 첨부하는 단계를 포함하고, 상기 비공개 키는 상기 제1 정책 핸들러에 고유한
    멀티팩터 인증을 프로비저닝하는 방법.
  16. 제9항에 있어서,
    상기 제1 정책 핸들러와 상기 제2 정책 핸들러 사이의 보안 경로를 통해 상기 글로벌 멀티팩터 인증 정책을 상기 제2 정책 핸들러로 전송하는 단계를 더 포함하는
    멀티팩터 인증을 프로비저닝하는 방법.
  17. 명령어를 저장하는 머신 액세스 가능 저장 장치 또는 저장 디스크로서,
    상기 명령어는 실행될 때 제1 정책 핸들러의 적어도 하나의 프로세서로 하여금 적어도,
    네트워크 통신을 통해 정책 관리자 서버로부터 수신한 글로벌 멀티팩터 인증 정책에 응답하여, 상기 글로벌 멀티팩터 인증 정책 중 상기 제1 정책 핸들러에 의해 시행될 수 있으면서 다른 정책 핸들러에 의해서는 서명되지 않는 제1 하위 정책을 식별하고 - 상기 글로벌 멀티팩터 인증 정책은 상기 제1 하위 정책, 제2 하위 정책 및 제3 하위 정책을 포함함 -,
    상기 제1 정책 핸들러가 상기 제1 하위 정책을 시행할 것임을 표시하기 위해 상기 제1 하위 정책을 서명하고,
    상기 제2 하위 정책과 상기 제3 하위 정책 중 적어도 하나가 다른 정책 핸들러에 의해 서명되지 않았음을 판단하고,
    상기 제2 하위 정책과 상기 제3 하위 정책 중 적어도 하나가 다른 정책 핸들러에 의해 서명되지 않았을 때, 상기 글로벌 멀티팩터 인증 정책의 프로비저닝을 지속하도록 상기 글로벌 멀티팩터 인증 정책을 제2 정책 핸들러로 전송하게 하는
    머신 액세스 가능 저장 장치 또는 저장 디스크.
  18. 제17항에 있어서,
    실행될 때 상기 적어도 하나의 프로세서로 하여금,
    상기 제1 정책 핸들러 및 상기 제2 정책 핸들러를 식별하기 위한 맵을 생성 - 상기 맵은 (a) 상기 제1 정책 핸들러와 상기 제2 정책 핸들러 사이의 통신 경로 및 (b) 상기 제2 정책 핸들러의 서명을 식별함 - 하고,
    상기 글로벌 멀티팩터 인증 정책의 서명 상태가 상기 맵에서 식별되는 상기 제2 정책 핸들러의 상기 서명을 포함하지 않을 때 상기 글로벌 멀티팩터 인증 정책을 상기 제2 정책 핸들러로 전송하게 하는 명령어를 더 포함하는
    머신 액세스 가능 저장 장치 또는 저장 디스크.
  19. 제18항에 있어서,
    실행될 때 상기 적어도 하나의 프로세서로 하여금, 상기 맵에서 식별되는 상기 통신 경로가 보안 경로인지 여부를 판단하게 하는 명령어를 더 포함하는
    머신 액세스 가능 저장 장치 또는 저장 디스크.
  20. 제19항에 있어서,
    실행될 때 상기 적어도 하나의 프로세서로 하여금, 상기 통신 경로가 비보안 경로라는 판단에 응답하여, 상기 제1 정책 핸들러와 상기 제2 정책 핸들러 사이에 제2 보안 경로를 생성하게 하는 명령어를 더 포함하는
    머신 액세스 가능 저장 장치 또는 저장 디스크.
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
KR1020167023302A 2014-03-28 2015-02-20 하나 이상의 정책 핸들러를 이용하여 멀티팩터 인증 정책 시행을 가능하게 하기 위한 시스템 및 방법 KR101932825B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/229,200 US10069868B2 (en) 2014-03-28 2014-03-28 Systems and methods to facilitate multi-factor authentication policy enforcement using one or more policy handlers
US14/229,200 2014-03-28
PCT/US2015/016804 WO2015148023A1 (en) 2014-03-28 2015-02-20 Systems and methods to facilitate multi-factor authentication policy enforcement using one or more policy handlers

Publications (2)

Publication Number Publication Date
KR20160113247A KR20160113247A (ko) 2016-09-28
KR101932825B1 true KR101932825B1 (ko) 2018-12-26

Family

ID=54192038

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167023302A KR101932825B1 (ko) 2014-03-28 2015-02-20 하나 이상의 정책 핸들러를 이용하여 멀티팩터 인증 정책 시행을 가능하게 하기 위한 시스템 및 방법

Country Status (5)

Country Link
US (1) US10069868B2 (ko)
EP (1) EP3123661B1 (ko)
KR (1) KR101932825B1 (ko)
CN (1) CN106063189B (ko)
WO (1) WO2015148023A1 (ko)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10270748B2 (en) 2013-03-22 2019-04-23 Nok Nok Labs, Inc. Advanced authentication techniques and applications
US9350735B1 (en) * 2013-12-31 2016-05-24 Emc Corporation Context-based dynamic information rights management
US8838071B1 (en) 2014-04-30 2014-09-16 Oto Technologies Llc Secure communications smartphone system
RU2670029C2 (ru) * 2014-06-03 2018-10-17 Общество С Ограниченной Ответственностью "Яндекс" Система и способ автоматической модерации сообщений
US9590984B2 (en) 2014-06-04 2017-03-07 Grandios Technologies, Llc Smartphone fingerprint pass-through system
US20150358333A1 (en) * 2014-06-04 2015-12-10 Grandios Technologies, Llc Geo-location and biometric presence security
US10102019B2 (en) * 2014-06-09 2018-10-16 Verizon Patent And Licensing Inc. Analyzing network traffic for layer-specific corrective actions in a cloud computing environment
US10205593B2 (en) * 2014-07-17 2019-02-12 Venafi, Inc. Assisted improvement of security reliance scores
US9461983B2 (en) * 2014-08-12 2016-10-04 Danal Inc. Multi-dimensional framework for defining criteria that indicate when authentication should be revoked
US9762557B2 (en) * 2014-10-28 2017-09-12 Microsoft Technology Licensing, Llc Policy settings configuration with signals
KR20160101497A (ko) * 2015-02-17 2016-08-25 삼성전자주식회사 웨어러블 디바이스 및 웨어러블 디바이스의 동작 방법.
US9749310B2 (en) * 2015-03-27 2017-08-29 Intel Corporation Technologies for authentication and single-sign-on using device security assertions
US11350254B1 (en) 2015-05-05 2022-05-31 F5, Inc. Methods for enforcing compliance policies and devices thereof
US11757946B1 (en) 2015-12-22 2023-09-12 F5, Inc. Methods for analyzing network traffic and enforcing network policies and devices thereof
US20170187752A1 (en) * 2015-12-24 2017-06-29 Steffen SCHULZ Remote attestation and enforcement of hardware security policy
US11178150B1 (en) 2016-01-20 2021-11-16 F5 Networks, Inc. Methods for enforcing access control list based on managed application and devices thereof
FR3051091B1 (fr) * 2016-03-25 2021-10-01 Florian Pradines Procede d'authentification pour autoriser l'acces a un site web ou l'acces a des donnees chiffrees
US10068397B2 (en) * 2016-04-06 2018-09-04 Guardtime IP Holdings, Ltd. System and method for access control using context-based proof
CN106230845A (zh) * 2016-08-04 2016-12-14 杭州帕拉迪网络科技有限公司 一种可灵活配置的多因素用户认证方法
US10594657B1 (en) * 2016-11-02 2020-03-17 F5 Networks, Inc. Methods for parameterized sub-policy evaluation for fine grain access control during a session and devices thereof
CN106778303B (zh) * 2016-12-07 2020-03-17 腾讯科技(深圳)有限公司 授权策略优化方法及授权策略优化装置
US10382489B2 (en) 2016-12-29 2019-08-13 Mcafee, Llc Technologies for privacy-preserving security policy evaluation
US11188835B2 (en) * 2016-12-30 2021-11-30 Intel Corporation Object identification for improved ux using IoT network
US11343237B1 (en) 2017-05-12 2022-05-24 F5, Inc. Methods for managing a federated identity environment using security and access control data and devices thereof
US11122042B1 (en) 2017-05-12 2021-09-14 F5 Networks, Inc. Methods for dynamically managing user access control and devices thereof
US10812976B2 (en) 2017-10-03 2020-10-20 Google Llc Multi-factor authentication and access control in a vehicular environment
US20190156003A1 (en) * 2017-11-20 2019-05-23 Motorola Mobility Llc Methods and Systems for Launching Additional Authenticators in an Electronic Device
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
US11526745B2 (en) 2018-02-08 2022-12-13 Intel Corporation Methods and apparatus for federated training of a neural network using trusted edge devices
US11556730B2 (en) 2018-03-30 2023-01-17 Intel Corporation Methods and apparatus for distributed use of a machine learning model
CN112005237B (zh) 2018-04-30 2024-04-30 谷歌有限责任公司 安全区中的处理器与处理加速器之间的安全协作
CN112005230B (zh) 2018-04-30 2024-05-03 谷歌有限责任公司 通过统一的安全区接口管理安全区创建
WO2019212580A1 (en) * 2018-04-30 2019-11-07 Google Llc Enclave interactions
US11144620B2 (en) * 2018-06-26 2021-10-12 Counseling and Development, Inc. Systems and methods for establishing connections in a network following secure verification of interested parties
US10909225B2 (en) * 2018-09-17 2021-02-02 Motorola Mobility Llc Electronic devices and corresponding methods for precluding entry of authentication codes in multi-person environments
CN109299131B (zh) 2018-11-14 2020-05-29 百度在线网络技术(北京)有限公司 一种支持可信计算的spark查询方法及系统
US20200280550A1 (en) * 2019-02-28 2020-09-03 Nok Nok Labs, Inc. System and method for endorsing a new authenticator
US11792024B2 (en) 2019-03-29 2023-10-17 Nok Nok Labs, Inc. System and method for efficient challenge-response authentication
US11290453B2 (en) 2019-07-12 2022-03-29 Bank Of America Corporation Split-tiered point-to-point inline authentication architecture
CN110401591A (zh) * 2019-07-22 2019-11-01 北京计算机技术及应用研究所 一种基于透明代理的邮件全局审查过滤系统及方法
KR102259764B1 (ko) * 2019-09-06 2021-06-02 주식회사 엘핀 멀티팩터 인증 수행 장치 및 그 동작 방법
US10984086B1 (en) * 2019-10-18 2021-04-20 Motorola Mobility Llc Methods and systems for fingerprint sensor triggered voice interaction in an electronic device
CN111767149B (zh) * 2020-06-29 2024-03-05 百度在线网络技术(北京)有限公司 调度方法、装置、设备及存储设备
CN112118102A (zh) * 2020-10-21 2020-12-22 国网天津市电力公司 一种电力专用的零信任网络系统
US20220358235A1 (en) * 2021-05-05 2022-11-10 EMC IP Holding Company LLC Access Control of Protected Data Using Storage System-Based Multi-Factor Authentication
KR20230087834A (ko) 2021-12-10 2023-06-19 한국체육대학교 산학협력단 마찰력 정량화 시스템
US20230306099A1 (en) * 2022-03-28 2023-09-28 Schneider Electric Systems Usa, Inc. Multi-factor authentication of industrial assets

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050283443A1 (en) * 2004-06-16 2005-12-22 Hardt Dick C Auditable privacy policies in a distributed hierarchical identity management system
US20070143827A1 (en) * 2005-12-21 2007-06-21 Fiberlink Methods and systems for intelligently controlling access to computing resources
WO2012173626A1 (en) * 2011-06-16 2012-12-20 Hewlett-Packard Development Company, L.P. System and method for policy generation

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE492088T1 (de) * 1995-06-05 2011-01-15 Cqrcert Llc Verfahren und einrichtung zur digitalen unterschrift in mehreren schritten
US5970227A (en) 1996-04-30 1999-10-19 International Business Machines Corp. Wireless proximity detector security feature
US7673323B1 (en) 1998-10-28 2010-03-02 Bea Systems, Inc. System and method for maintaining security in a distributed computer network
US7194764B2 (en) 2000-07-10 2007-03-20 Oracle International Corporation User authentication
US6920558B2 (en) 2001-03-20 2005-07-19 Networks Associates Technology, Inc. Method and apparatus for securely and dynamically modifying security policy configurations in a distributed system
US6957261B2 (en) 2001-07-17 2005-10-18 Intel Corporation Resource policy management using a centralized policy data structure
US7591020B2 (en) 2002-01-18 2009-09-15 Palm, Inc. Location based security modification system and method
US20050033811A1 (en) * 2003-08-07 2005-02-10 International Business Machines Corporation Collaborative email
US9191215B2 (en) 2003-12-30 2015-11-17 Entrust, Inc. Method and apparatus for providing authentication using policy-controlled authentication articles and techniques
US20060021003A1 (en) 2004-06-23 2006-01-26 Janus Software, Inc Biometric authentication system
US7739744B2 (en) 2006-03-31 2010-06-15 Novell, Inc. Methods and systems for multifactor authentication
US8671444B2 (en) 2006-10-06 2014-03-11 Fmr Llc Single-party, secure multi-channel authentication for access to a resource
US20080148387A1 (en) 2006-10-18 2008-06-19 Madina Shab H Trusted platform module management system and method
US7991989B2 (en) 2007-12-20 2011-08-02 Dell Product L.P. System and method for OS boot image provisioning based on user identity to enable mobile users
US20090187962A1 (en) 2008-01-17 2009-07-23 International Business Machines Corporation Methods, devices, and computer program products for policy-driven adaptive multi-factor authentication
US7979899B2 (en) * 2008-06-02 2011-07-12 Microsoft Corporation Trusted device-specific authentication
US9317708B2 (en) 2008-08-14 2016-04-19 Teleputers, Llc Hardware trust anchors in SP-enabled processors
US8566571B2 (en) 2008-12-12 2013-10-22 Novell, Inc. Pre-boot securing of operating system (OS) for endpoint evaluation
US8650290B2 (en) 2008-12-19 2014-02-11 Openpeak Inc. Portable computing device and method of operation of same
US8195817B2 (en) 2009-02-11 2012-06-05 Sprint Communications Company L.P. Authentication of the geographic location of wireless communication devices
US9424408B2 (en) 2009-12-21 2016-08-23 Qualcomm Incorporated Utilizing location information to minimize user interaction required for authentication on a device
US8621656B2 (en) 2010-07-06 2013-12-31 Nokia Corporation Method and apparatus for selecting a security policy
US9130937B1 (en) * 2011-03-07 2015-09-08 Raytheon Company Validating network communications
US8843108B1 (en) 2011-08-17 2014-09-23 Intuit Inc. Location-based information security
CN202872832U (zh) * 2012-08-13 2013-04-10 鹤山世达光电科技有限公司 身份认证装置
US20140075493A1 (en) 2012-09-12 2014-03-13 Avaya, Inc. System and method for location-based protection of mobile data
US9038060B2 (en) 2012-10-02 2015-05-19 Nextbit Systems Inc. Automatically installing operating system specific to a detected network
US8886217B2 (en) 2012-12-31 2014-11-11 Apple Inc. Location-sensitive security levels and setting profiles based on detected location
JP6307593B2 (ja) * 2013-04-26 2018-04-04 インターデイジタル パテント ホールディングス インコーポレイテッド 必要とされる認証保証レベルを達成するための多要素認証
CN103297237B (zh) * 2013-05-14 2015-10-28 成都天钥科技有限公司 身份注册和认证方法、系统、个人认证设备和认证服务器
US9515938B2 (en) * 2013-10-24 2016-12-06 Microsoft Technology Licensing, Llc Service policies for communication sessions
US9740882B2 (en) 2014-02-28 2017-08-22 Intel Corporation Sensor privacy mode

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050283443A1 (en) * 2004-06-16 2005-12-22 Hardt Dick C Auditable privacy policies in a distributed hierarchical identity management system
US20070143827A1 (en) * 2005-12-21 2007-06-21 Fiberlink Methods and systems for intelligently controlling access to computing resources
WO2012173626A1 (en) * 2011-06-16 2012-12-20 Hewlett-Packard Development Company, L.P. System and method for policy generation

Also Published As

Publication number Publication date
CN106063189A (zh) 2016-10-26
EP3123661A4 (en) 2017-11-08
KR20160113247A (ko) 2016-09-28
US20150281279A1 (en) 2015-10-01
EP3123661A1 (en) 2017-02-01
EP3123661B1 (en) 2018-12-05
CN106063189B (zh) 2019-07-12
US10069868B2 (en) 2018-09-04
WO2015148023A1 (en) 2015-10-01

Similar Documents

Publication Publication Date Title
KR101932825B1 (ko) 하나 이상의 정책 핸들러를 이용하여 멀티팩터 인증 정책 시행을 가능하게 하기 위한 시스템 및 방법
US11100232B1 (en) Systems and methods to automate networked device security response priority by user role detection
US10614216B2 (en) Paravirtualized security threat protection of a computer-driven system with networked devices
EP3228061B1 (en) Security context management in multi-tenant environments
US10193893B2 (en) System and method for access control using network verification
US11700264B2 (en) Systems and methods for role-based computer security configurations
US20210250379A1 (en) Network access by applications in an enterprise managed device system
KR20170096116A (ko) 멀티-테넌트 컴퓨팅 시스템의 보안 및 허가 아키텍처
US20130111211A1 (en) External Reference Monitor
US11727101B2 (en) Methods and systems for verifying applications
US9614851B1 (en) Security management application providing proxy for administrative privileges
EP3884405B1 (en) Secure count in cloud computing networks
CN111247521B (zh) 将多用户设备远程锁定为用户集合
US9853975B2 (en) Restricting access to content based on measurements of user terminal operational performance
US20200128018A1 (en) Systems and methods for managing device privileges
US20210064756A1 (en) Methods and systems for verifying applications
US20240064148A1 (en) System and method for managing privileged account access
US20240119133A1 (en) Authorization between integrated cloud products using association

Legal Events

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