KR100188503B1 - 원격 사용자와 응용 서버간의 통신 관리 방법, 원격 사용자의 주체 인증 방법, 분산 컴퓨터 환경을 제공하는 네트워크 및 프로그램 저장 장치 - Google Patents

원격 사용자와 응용 서버간의 통신 관리 방법, 원격 사용자의 주체 인증 방법, 분산 컴퓨터 환경을 제공하는 네트워크 및 프로그램 저장 장치 Download PDF

Info

Publication number
KR100188503B1
KR100188503B1 KR1019960004059A KR19960004059A KR100188503B1 KR 100188503 B1 KR100188503 B1 KR 100188503B1 KR 1019960004059 A KR1019960004059 A KR 1019960004059A KR 19960004059 A KR19960004059 A KR 19960004059A KR 100188503 B1 KR100188503 B1 KR 100188503B1
Authority
KR
South Korea
Prior art keywords
remote user
token
application server
user
processing system
Prior art date
Application number
KR1019960004059A
Other languages
English (en)
Other versions
KR960035299A (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 KR960035299A publication Critical patent/KR960035299A/ko
Application granted granted Critical
Publication of KR100188503B1 publication Critical patent/KR100188503B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6236Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database between heterogeneous systems
    • 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/321Cryptographic 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 a third party or a trusted authority
    • H04L9/3213Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

분산 컴퓨터 환경에서, 초기에 보안 메카니즘(security mechanism)에 의해 원격 사용자가 요구된 사용자라고 판단될 수 있으면, 토큰(token)은 원격 사용자에게 제공된다. 그후, 원격 사용자 및 응용 서버간의 접속에 따라, 응용 서버는 접속 요구와 연관된 토큰이 보안 메카니즘에 의해 제공되었는지를 먼저 검증하도록 요구된다. 토큰이 접속 요구와 연관되지 않거나 혹은 보안 메카니즘에 의해 접속 요구와 연관된 소정의 토큰이 제공되지 않으면, 접속은 거절된다.

Description

원격 사용자와 응용 서버간의 통신 관리 방법, 원격 사용자의 주체 인증 방법, 분산 컴퓨터 환경을 제공하는 네트워크 및 프로그램 저장 장치.
제1도는 본 발명 구현되는 컴퓨터 네트워크를 도시한 도면.
제2도는 제1도의 컴퓨터 네트워크에서 사용되고, 본 발명을 구현하는데 사용되는 시스템 장치, 키보드, 마우스 및 디스플레이를 포함하는 컴퓨터를 도시한 도면.
제3도는 제2도에 도시된 컴퓨터를 구조적으로 도시한 블록도.
제4도는 원격 사용자와 본 발명에 따른 응용 서버간의 통신을 관리하는 방안을 개략적으로 도시한 도면.
제5도는 제4도의 방안에서 원격 사용자와 응용 서버간에 발생되는 접속 프로토콜을 도시한 도면.
* 도면의 주요부분에 대한 부호의 설명
10 : 네트워크 12 : 처리 장치
14 : 운영체제 15 : 프로세서
16 : 파일 시스템 17 : 응용 소프트웨어
20 : 컴퓨터 시스템 21 : 시스템 장치
31 : 시스템 버스 34 : RAM
35 : 메모리 관리칩
본 발명은 컴퓨터 네트워크에 관한 것으로, 특히 분산 환경(distributed environment)에서 응용 서버(application servers)가 원격 사용자(remote user)를 인증할 수 있도록 하는 방법에 관한 것이다.
다수의 컴퓨터를 LAN(local area network)에 상호접속하여, 이들 컴퓨터의 정보를 교환하고 자원을 공유하는 기법은 잘 알려져 있다. LAN은 사용자가 다수의 컴퓨터상의 분산된 자원을 액세스(access)하고 응용(applications)을 처리하는 분산 컴퓨터 환경(distributed computing environment)을 제공한다.
분산 환경에서 응용 서버(application server)는 특정 접속 요구의 소스를 명확하게 판정하는 것이 중요하다. 알려진 구조에서, 원격 사용자는 자신의 로그인 이름(login name)을 환경 변수로서 설정(set)하고, 그러면 사용자가 서버와 접속하길 원하는 경우 이 변수는 응용 서버로 제공된다. 이러한 분산 환경에서, 서버는 원격 사용자의 주체(identity)를 확인(verify)하는 방안을 갖고 있지 못하고 있다. 즉, 사용자가 요구한 사용자인지를 결정하는 방안을 갖고 있지 못하고 있다. 실제로, 원격 사용자는 환경 변수를 응용 서버가 허용하는 임의의 스트링(string)으로 설정할 수 있다. 바람직하지 않을 수도 있는 이러한 알려진 기법은 (바인드 시간(bind time)일 때) 고객의 로그인 이름 및 패스워드(login name and password)를 서버에 제공하므로써 방지될 수 있고, 이로 인해 서버는 로컬 인증(local authentication)을 몇가지 유형으로 수행하게 된다. 그러나, 이러한 방안은 응용 서버가 사용자 패스워드를 오용(misuse)하지 않아야 하는 문제점이 있다. 대부분의 경우에서는 이러한 제한을 강제적으로 가질 수는 없다.
분산 환경에서는 응용 서버가 원격 사용자를 식별하는 신뢰성있는 방안이 제공되도록 요구된다.
따라서, 본 발명의 목적은 분산 컴퓨터 네트워크 환경에서 응용 서버가 원격 사용자의 주체를 결정할 수 있는 보안 프로토콜(security protocol)을 제공하는 데 있다.
본 발명의 다른 목적은 분산 환경에서 응용 서버가 특정 접속요구가 제공되었는지의 여부를 명확하게 판정하도록 하는 데 있다.
본 발명의 또다른 목적은 인증되지 않은 원격 사용자로부터 접속 요구가 응용 서버에 의해 수신되거나, 응용 서버와의 접속이 수행될 때 이를 식별하는 보안 메카니즘을 제공하는 데 있다.
본 발명의 또다른 목적은 현존 로컬 운영체제의 인증 장치(authentication facility)를 사용하여 원격 사용자를 초기에 인증하는 보안 메카니즘을 제공하는 데 있다.
본 발명의 또다른 목적은 분산 컴퓨터 환경에서 하나 이상의 원격 사용자와, 로컬 처리 시스템(local processing system)의 응용 서버간의 통신을 관리하는 방법을 제공하는 데 있다.
본 발명의 또다른 목적은 분산 환경에서 보안 정보의 데이터베이스가 구비된 서버가 제각기 요구되지 않고서도 응용 서버가 원격 사용자를 인증할 수 있도록 하는데 있다.
본 발명의 또다른 목적은 네트워크를 구성하는 여러 기계장치중 호환에 영향을 끼치지 않으면서 상이한 컴퓨터 플랫폼(hetrogenous computer platforms)을 가로질러 본 발명의 보안 기법을 구현하는 데 있다.
본 발명의 목적 및 다른 목적은 원격 사용자와 로컬 처리 시스템의 응용 서버간의 통신을 관리하는 방안을 제공한다. 일반적으로, 이러한 방안은 하나 이상의 원격 사용자를 인증하므로써 개시한다. 이러한 인증은 입원격 사용자가 자신의 로그인 이름 및 패스워드를 로컬처리 시스템상에서 실행하는 보안 메카니즘에게 제공하므로써 수행된다. 보안 메카니즘은 로컬 운영체제의 인증 장치를 사용하여 원격 사용자를 인증하고, 이어서 토큰(token)을 원격 사용자에게 반환하여 인증을 완료하는 것이 바람직하다. 전형적으로, 토큰은 토큰을 수신하는 원격 사용자가 특정 통신 세션(particular communication session) 또는 특정 통신을 위해 인증되었는지의 여부를 나타내는 랜덤한 스트링(random string)이다. 한편, 분산 환경에서 몇몇 원격 사용자는 응용 서버와 통신하길 원한다고 가정한다. 응용 서버에 의해 원격 사용자로부터 접속 호출이 수신되면, 보안 메카니즘에 의해 상기 호출과 연관된 토큰이 제공되었는지의 여부가 판정된다. 이는 응용 서버가 수신된 토큰을 토큰의 개시를 검증하는 메카니즘에게 제공하므로써 달성된다. 접속 호출과 연관된 토큰이 보안 메카니즘에 의해 제공되었으면, 원격 사용자는 응용 서버와 접속된다. 그렇지 않으면 접속은 거절된다. 접속이 성공적으로 수행되면, 토큰은 인증된 사용자로부터 응용 서버로 제공되는 메시지와 명확하게 연관된다.
따라서, 본 발명에 따르면, 보안 메카니즘에 의해 초기에 원격 사용자가 요구되는 사용자인 것으로 판정되면, 토큰은 원격 사용자에게 제공된다. 한편, 원격 사용자와 응용 서버간의 접속에서는, 보안 메카니즘에 의해 접속 요구와 연관된 토큰이 제공되는지의 여부를 먼저 검증하는 응용 서버가 요구된다. 토큰이 접속 요구와 연관되지 않거나 혹은 보안 메카니즘에 의해 접속 요구와 연관된 임의의 토큰이 제공되지 않았으면, 접속은 거절된다.
전술한 설명은 본 발명의 적절한 목적을 개략적으로 기술한 것이다. 이들 목적은 본 발명의 더욱 명확한 특징 및 응용의 일부중 단지 예시적인 것이다. 이하 기술된 바와 같이, 본 발명은 다른 방식으로 적용하거나 혹은 변경하므로써 다른 많은 장점을 가질 수 있다. 따라서, 본 발명의 다른 목적 및 더욱 명확한 이해는 다음의 바람직한 [실시예]의 상세한 설명을 참조하면 달성될 수 있다.
본 발명 및 이에 관한 장점은 다음 상세한 설명을 첨부된 도면과 함께 참조하면 더욱 명확하게 이해될 것이다.
전술한 바와 같이, 본 발명은 사용자가 다수의 상이한 컴퓨터상의 분산된 자원을 액세스하고 응용을 처리하는 분산 환경이 제공되는 컴퓨터 네트워크에서, 사용자와 서버 프로세스간의 통신을 관리하는 방안을 제공한다.
분산 환경은 제1도에 도시되어 있으며, 통신 링크를 통해 접속되는 두 개 이상의 노드(a, b, c) 또는 네트워크(10)를 포함한다. 각각의 노드는 처리 장치(12), 운영체제(14), 하나 이상의 프로세스(15), 디스크 파일 시스템(16) 및 응용 소프트웨어(17)가 구비된 컴퓨터 시스템을 포함한다. 네트워크(10)는 LAN 또는 WAN(wide area network)일 수 있고, WAN은 다른 노드 또는 IBM의 SNA(Systems Network Architecture)에 따른 시스템 네트워크에 접속되는 스위칭 또는 임대 전신 처리장치(a switched or leased teleprocessing(TP))를 포함한다. LAN의 개략적인 설명은 Larry E. Jordan 및 Bruce Churchill에 의해 기술되고, Robert J. Brady (a Prentice-Hall Company)(1983)에 의해 간행된 Communications and Networking for the IBM PC이란 명칭의 간행물에 개시되어 있다.
전형적으로 본 발명은 다중-사용자 시스템 환경하에서 구현되지만, 각각의 컴퓨터 시스템은 단일 사용자 시스템 또는 다중-사용자 시스템일 수 있다. 예를 들어, 각각의 처리 시스템은 AIX(Advanced Interactive Executive) 운영체제를 수행하는 RISC System/600(축소된 인스트럭션 세트 또는 소위 RISC를 기초한 워크스테이션)일 수 있다. AIX 운영체제는 응용 인터페이스 레벨에서 버전 5.2의 ATT의 UNIX운영체제와 호환가능하다. 각종 모델의 RISC를 기초한 퍼스널 컴퓨터는 IBM사의 다수의 간행물, 예를 들어 RISC System/6000, 7073 and 7016 POWERstation and POWERserver Hardware Technical Referencd, Order No. SA23-2644-00에 개시되어 있다. AIX 운영체제는 IBM Corporation, First Edition (November, 1985)에 의해 간행된 AIX Operating System Technical Reference이란 명칭의 간행물 및 기타 간행물에 개시되어 있다. UNIX 운영체제 설계의 상세한 설명은 Maurice J, Bach에 의해 기술되고, Prentice-Hall(1986)에 의해 간행된 Design of the Unix Operating System이란 명칭의 간행물에 개시되어 있다. 또한, 본 발명은 OS/400운영체제를 수행하는 IBM AS/400와 같이 다른 사용자 기계장치상에서도 구현될 수 있다.
한정하고자 의도된 것이 아닌 특정 구현에서, 제1도의 네트워크는 객체-지향 프로그래밍 시스템인 IBM의 분산 시스템 객체 모델(Distrubuted System Object Model: DSOMTM)에 따라 상호접속되는 다수의 IBM 다중-사용자 AS/400 워크스테이션을 포함한다. 이러한 알려진 객체 지향 프로그래밍 시스템으로 인해, 소위 객체가 급속하게 개발 및 구현되고 주문에 따라 생산된다. 각각의 새로운 객체는 데이터상에서 수행하는 소정의 데이터 속성 및 프로세스를 갖는다. 데이터는 객체에 의해 캡슐화(encapsulated)되는 것으로 일컬어지며, 객체 방안에 의해서만 변경될 수 있으며, 이러한 객체 방안은 메시지를 객체 방안을 식별하고 소정의 요구된 인자(arguments)를 제공하는 객체에 전송하므로써 수행(invoke)된다. 이 방안은 다른 객체로부터 메시지를 수신하므로써 수행된다. 상기 시스템은 객체 사이에 메시지를 제공하는 메시지 루터(message router)를 갖는다.
DSOM 구조의 상세한 설명은 IBM Corporation, First Edition(1994)에 의해 간행되고, SOMobjectsTMDeveloper Toolket에 대한 User's Guide 및 Reference Manual의 간행물에 개시되어 있으며, 본 명세서에 참조로 인용된다. 전술한 간행물은 DSOM User's Guide의 No. SC23-2680 및 DSOM Reference Manual의 No. SC23-2681-01과 같이 IBM 사로부터 입수 가능하다. 물론, 제1도의 네트워크를 구현하는 데에는 다른 시스템 구조도 마찬가지로 사용가능하다.
제2도는 제1도의 컴퓨터 시스템중 하나를 예시한 것이다. 컴퓨터 시스템(20)은 시스템 장치(21), 키보드(22), 마우스(23) 및 디스플레이(24)를 포함한다. 디스플레이 장치의 스크린(26)은 그래픽 사용자 인터페이스(graphical user interface: GUI)를 제공하는데 사용된다. 운영체제에 의해 지원되는 그래픽 사용자 인터페이스는 사용자가 입력포인트 및 슈트(shoot) 방식을 사용할 수 있도록 한다. 즉 마우스 포인터(mouse pointer)(25)를 스크린(26)상의 특정 장소의 데이터 객체를 나타내는 아이콘(icon)에 이동시키고 이어서 마우스 버튼을 입력하므로써, 사용자 커맨드 또는 선택 명령어가 수행될 수 있도록 한다.
제3도는 제2도에 도시된 퍼스널 컴퓨터의 구성을 도시한 블록도이다. 시스템 장치(21)는 여러 구성 요소를 접속시키고 여러 구성 요소간의 통신을 수행하게 하는 하나의 시스템 버스 또는 다수의 시스템 버스(31)를 포함한다. 마이크로프로세서(32)는 시스템 버스(31)에 접속되고, ROM(read only memory)(33)에 의해 지원되며, RAM(random access memory)(34)도 또한 시스템 버스(31)에 접속된다. 여러 컴퓨터중 IBM PS/2 시리즈의 마이크로프로세서는 386 또는 486 마이크로프로세서를 포함하는 인텔(Intel) 계열의 마이크로프로세서중 하나이다. 한정하고자 의도된 것은 아니지만, 예를 들어 68000, 68020 또는 68030 마이크로프로세서와 같은 모토롤라(Motorola) 계열의 마이크로프로세서와, IBM 사에 의해 제조된 PowerPCTM마이크로프로세서와 같은 여러 RISC 마이크로프로세서와, 휴렛 패커드(Hewlett Packard), 선(Sun), 인텔, 모토롤라 및 기타 다른 제조회사에 의해 제조된 기타 마이크로프로세서를 포함하는 다른 마이크로프로세서도 특정 컴퓨터에 사용될 수도 있다.
ROM(33)은 다른 코드중 대화(interaction) 및 디스크 드라이브와, 키보드와 같은 기본 하드웨어 동작을 제어하는 BIOS(Basic InputiOutput system)를 포함한다. RAM(34)은 운영체제 및 응용프로그램이 로드(load)되는 주 메모리이다. 메모리 관리칩(35)은 시스템 버스(31)에 접속되며, 직접 메모리 액세스 동작을 제어하고, RAM(34)과 하드 디스크 드라이브(36) 및 플로피 디스크 드라이브(37)간의 데이터 전송을 제어한다. 또한, 시스템 버스(31)에 접속되는 CD ROM(42)은 다량의 데이터 즉, 멀티미디어 프로그램(multimedia program) 또는 대용량의 데이터베이스를 저장하는데 사용된다.
또한, 각종 I/O 제어기 예를 들어 키보드 제어기(38), 마우스 제어기(39), 비디오 제어기(40) 및 오디오 제어기(41)도 시스템 버스(31)에 접속된다. 키보드 제어기(38)는 키보드(22)를 위한 하드웨어 인터페이스를 제공하고, 마우스 제어기(39)는 마우스(23)를 위한 하드웨어 인터페이스를 제공하고, 비디오 제어기(40)는 디스플레이(24)를 위한 하드웨어 인터페이스를 제공하고, 오디오 제어기(41)는 스피커(25a, 25b)를 위한 하드웨어 인터페이스를 제공한다. 토큰링 어댑터(Token Ring Adapter)와 같은 I/O 제어기는 LAN(56)을 통해 다른 유사하게 구성된 데이터 처리시스템과 통신을 제어한다.
DSOM 구조에서, daemon SOMDD로 일컬어지는 관리자 프로세스는 응용 서버가 수행하는 네트워크내의 모든 노드상에서 실행한다. SOMDD 프로세스의 주 임무는 (필요한 경우) 응용 서버를 개시하고, 서버의 바인딩 처리(server binding handles)를 관리하는 것이다. 바인딩 처리는 서버 프로세스가 수행되는 네트워크 어드레스 및 포트 번호와 같이 서버 프로세스의 위치를 지정한다. 응용 서버와 통신하기 위해, (동일한 기계 장치상에서 수행되거나 혹은 수행되지 않을 수 있는) 고객 프로세스(client process)는 응용 서버가 등록(register)되는 포트를 식별하도록 요구된다. 이를 달성하기 위해, 고객은 Get_binding() 요구 메시지를 SOMDD 프로세스에게 제공하며, SOMDD 프로세스는 (필요한 경우에) 응용 서버를 등록하고 (바인딩 처리 유형의)바인딩 정보를 사용자에게 제공한다. SOMDD 프로세스에 의해 바인딩 정보가 고객으로 반환된 후, 사용자와 응용 프로세스간의 후속 접속은 사용자가 Connect() 호출을 응용 서버에 제공하므로써 달성될 수 있다.
본 발명은 전술한 설명을 참조하여 상세히 기술될 것이다. 응용 서버는 감응성에 민감한 자원이므로, 접속 대상 고객에게 위임되는 것이 바람직하다. 네트워크가 물리적으로 안전한 것으로 간주되면 (따라서 암호화가 불필요함), 종래 기술에서는 적절한 보안이 제공되지 않는다. 따라서, 본 발명에 따른 SOMDD 프로세스 (또는 일부 동일한 관리자 프로세스)는 향상된 보안 프로토콜 루틴(security protocol routine)을 구비하여, 응용 서버가 원격 사용자를 인증할 수 있도록 한다. 보안 프로토콜은 자신이 관리자 프로세스의 일부가 아닌 독립 코드(a piece of standalone code) (즉, 인스트럭션 세트)일 수 있다. 그러나, (관리자 프로세스가 구비되거나 혹은 구비되지 않은) 본 발명의 전형적인 보안 프로토콜은 응용 서버와 동일한 로컬 처리 시스템상에서 지원되지만, 독립 프로세스로서는 실행하지 않을 것이다.
DSOM 구조에서, 본 발명의 프로토콜의 동작은 제4도에 도시되어 있다. 이러한 예는 단지 예시적인 것으로, 본 발명은 특정 플랫폼(platform)으로 한정하지는 않는다. 단계(70)에서 Get binding() 호출이 개시하고, 스트링이 초기화되며, 본 명세서에서 이 스트링은 편의상 객체Uname, Upass로 칭한다. 통상적으로, 고객의 이름 및 패스워드는 시스템에 보안 방안에 의해 저장되며, 따라서 (범용 보안 서비스 응용 프로그래밍 인터페이스(General Security Service Application Programming Interface: GSS API)와 같은) 보안 방안은 필요한 정보를 추출하는 것으로 일컬어진다. 단계(72)에서, GSS API는 본 명세서에서 {Uname, Upass}로 일컬어지는 초기화된 데이터 스트링을 사용자에게 복귀하며, 여기서 데이터 스트링은 객체 형태 또는 데이터 구조 형태일 수 있다. 이러한 데이터 스트링은 로그인 이름 {Uname} 및 패스워드 {Upass}를 스크램블된 형태(scrambled form)로 포함한다. 범용 단일 식별자(universal unique identifier: UUID)는 본 명세서에서 {Uname, Upass, UUID}로 일컬어지는 이름 및 패스워드 스트링에서 생성된 다음 이 스트링에 가산되며, 따라서 이 스트링은 객체 또는 다른 적절한 데이터 구조일 수 있다. 범용 단일 식별자(UUID)는 UUID 발생기 루틴에 의해 생성된다. 통상적으로, UUID는 긴 랜덤 번호(long random number)이다. UUID가 구비되면, 전송된 스트링은 단일 스트링을 갖는다. 단계(74)에서, 스트링 {Uname, Upass, UUID}은 SOMDD 프로세스에 대한 Get_binding() 요구 메시지상에 오버레이(overlay)된다.
전술한 바와 같이, SOMDD 프로세스는 응용 서버가 존재하는 네트워크의 각 노드상에 존재한다. 제4도에 도시된 바와 같이, 본 발명에 따른 SOMDD 프로세스는 신규한 보안 루틴을 포함하는 향상된 프로세스이다. 전술한 바와 같이, 본 발명의 기법은 SOMDD 프로세스내에 합체되지 않고 독립 모듈내에서 또한 구현될 수 있다. 따라서, 제4도는 구현방안중 하나를 도시한 것이다.
SOMDD 프로세스는 입력 메시지내에 {Uname, Upass, UUID}의 데이터 스트링이 존재하는지의 여부를 검출한다. {Uname, Upass, UUID}의 데이터 스트링이 존재하면, SOMDD 프로세스는 Uname 및 Upass의 정보를 추출하고, 단계(76)에서 Authn() 메시지를 사용하여 운영체제의 특정한 인증 API를 호출한다. 바람직한 구현에서, 로컬 등록부가 제공되지 않으면, 원격 프로시듀어 호출은 원격으로 인증하는데 사용될 수도 있지만, 본 발명의 프로토콜은 자체의 로컬 처리 시스템의 운영체제에 의해 지원되는 DSOM 사용자 등록부(User Registry) (또는 일부 동일한 사용자 식별 구조)를 사용한다. 단계(78)에서, 등록부(API)는 로그인 이름 및 유효 패스워드가 사용자 등록부에 정의되어 있는지의 여부에 따라 참 또는 거짓으로 복귀한다. 등록부(API)가 거짓으로 복귀되면, SOMDD 프로세스는 인증 실패 메시지를 사용자에게 반환한다. 단계(78)에서, 등록부(API)가 참으로 복귀되면, SOMDD 프로세스는 통상적으로 랜덤하지만 (또한 결정적일 수 있는) 스트링 Ks을 발생한다.
특히, 이러한 바람직한 랜덤스트링은 토큰(token)으로 일컬어지며, (알 수 있는 바와 같이 토큰이 인증되면) 토큰을 발생하는 원격 사용자가 이에 요구되는 사용자인지를 증명(confirm)하는 기능을 수행한다. 토큰이란 용어는 모든 것을 한정하는 것으로 의미하지 않는다. 단계(80)에서, SOMDD 프로세스는 (응용 서버에 대한 바인딩 정보와 함께) 토큰을 다시 원격 사용자에게 제공하며, 따라서 원격 사용자는 세션(session) 또는 특정 통신에 대해 인증된 것으로 일컬어진다. 스트링{Ks}은 각각의 세션 또는 통신에 대해 유일한 8-바이트 스트링일 수 있다. 사용자에 의해 호출된 각각의 프로그램은 특정 토큰을 수신할 수 있다. 또한, SOMDD 프로세스는 랜덤 스트링 {Ks} 및 UUID의 복사(copy)를 둘다 로컬적으로 저장한다.
고객 DSOM 실행 시간은 응용 서버에 대한 Connect() 호출을 생성하는 것으로 가정한다. 단계(80)에서, 고객이 SOMDD 프로세스로부터 토큰 {Ks}을 수신하면, (초기에 SOMDD 프로세스에 전송된 것과 동일한 Uname와 함께) {Uname, Upass, Ks} 데이터 스트링을 초기화하고, 단계(82)에서 사용자는 SOMD_CONNECT 요구신호상에 오버레이된 이 스트링을 응용 서버에 전송한다. 응용 서버 DSOM 실행 시간 코드는 {Uname, Upass, Ks} 스트링을 검출하고, 단계(84)에서 SOMDD 프로세스를 호출하여 SOMDD가 실제로 세션 UUID의 토큰 Ks을 제공하였는지의 여부를 검출한다. 특히, SOMDD 프로세스는 내부 기억장치내의 동일한 {UUID, Ks} 스트링을 탐색하므로써 요구를 확인한다. 단계(86)에서 이러한 조회(inquiry)에 대한 응답은 응용 서버로 복귀된다. 정합이 발견되면, SOMDD 프로세스는 응용 서버에 참을 반환하고, 그렇지 않으면 거짓값을 반환한다. SOMDD 프로세스가 참값을 반환하면, 응용 서버는 접속을 허용한다. SOMDD 프로세스가 거짓값을 반환하면, 인증 실패 메시지는 다시 사용자에게 제공되고, 접속이 거절된다.
DSOM 실행 시간 접속 요구에 따라 구현된 특정 메시지 프로토콜은 제5도에 도시되어 있다. 전술한 바와 같이, 고객이 응용 서버에 접속하길 원하는 경우, SOMD_CONNECT 요구와 함께 {Uname, Upass, Ks} 스트링을 전송한다. 응용 서버는 Verify_authn() 메시지를 SOMDD 프로세스에 제공하고, 이에 따라 SOMDD 프로세스는 전술한 바와 같이 고객이 이전에 인증되었는지의 여부를 검증한다. 그러면, 참 또는 거짓 신호가 서버로 반환된다. 고객이 이전에 인증되었으면 (즉, {UUID, Ks}가 SOMDD 기억장치에 위치되면), recvConnect() 메시지 SOMD_ACKMASK는 고객에게 전송되고, 접속이 허용된다(단계(88)를 참조). 고객이 이전에 인증되지 않았으면 (즉, {UUID, Ks}가 SOMDD 기억장치내에 위치되지 않으면), recvConnect() 메시지 SOMD_NACK:SOMD_AUTHFALL은 고객에게 전송되고, 접속이 거절된다.
접속이 성공적으로 수행되면, 고객측의 DSOM 실행 시간은 토큰 {Ks}을 갖는 각각의 메시지를 응용 서버에 연관시키고, 서버측의 DSOM 실행 시간은 Connect() 호출동안에 캐쉬된 정보를 갖는 토큰을 확인한다.
본 발명에 따르면, 각각의 인증된 방식으로 서버와 통신하고자 하는 각각의 고객은 (또는 서버가 인증된 호출만을 허용하는 경우) 먼저 자신의 로그인 이름 및 패스워드를 응용 서버 관리자에게 제공한다. 이름 및 패스워드는 네트워크상에 제공되기 전에 스크램블링된다. 바람직하게, 관리자 프로세스는 사용자 등록부에 대한 로컬 운영체제의 특정 API를 호출하므로써 원격 사용자를 인증한다. 관리자 프로세스가 고객을 인증할 수 있으면, 세션 토큰을 반환한다. 응용 서버에 접속하길 원하는 고객은 인증될 수 있는 주체를 가진 서버에게 토큰을 제공한다. 그러면, 응용 서버는 관리자 프로세스를 호출하여, 관리자 프로세스가 실제로 수신된 토큰을 제공했는지의 여부를 검증한다. 관리자 프로세스가 (데이타베이스내의 토큰을 위치시켜) 토큰을 제공하였음을 검증하면, 응용 서버는 고객이 이전에 인증되었음을 확인하고, 요구된 사용자가 된다. 그렇지 않은 경우, 응용 서버는 접속을 거절한다.
본 발명은 본 기술을 통해 다수의 장점을 제공한다. 먼저, 본 기법에 의해 분산 환경의 응용 서버가 명백하게 결정되도록 하고, 따라서 특정 접속 요구가 전송된다. 이로 인해, 보안 정보의 데이터베이스를 갖는 전용 서버가 요구되지 않으며, 바람직하게 원격 사용자는 로컬 처리 시스템내에서 현존 운영체제의 특정 로컬 인증 API을 사용하므로써 초기에 인증된다. 원격 사용자와 응용 서버간의 통신은 원격 사용자가 요구된 사용자임을 인증하는 서버를 제공하는 소위 토큰에 의해 제어된다. 이러한 통신은 더욱 보안에 필요한 암호와 기법을 사용하므로써 수행될 수 있다. 본 발명은 호환성에 영향을 주지 않으면서 상이한 컴퓨터 플랫폼을 가로질러 동작한다.
또한, 본 발명은 로컬 인증에 용이한 다중-사용자 운영체제를 지원하는 로컬 처리 시스템 환경에서 기술되었지만, 상기 설명을 한정하고자 의도된 것은 아니다. 전술한 바와 같이, 로컬 사용자 등록부가 로컬 처리 시스템상에 존재하지 않으면, 보안 프로토콜의 인증 단계는 원격 인증에 용이한 프로시듀어 호출을 사용하여 구현될 수 있다. 또한, 프로토콜은 다중-사용자 기계장치와 상반되는 단일-사용자 기계장치가 구비된 네트워크에서 구현될 수도 있다. 또한, 일부 환경에서는 일반적으로 시스템과 완전히 독립적으로 수행하는 프로토콜이 더욱 바람직할 수 있겠지만, 자체의 응용 서버에서 프로토콜의 일부 기능을 구현하는 것이 바람직할 수도 있다.
본 발명의 바람직한 구현중 하나는 퍼스널 컴퓨터 또는 워크스테이션의 RAM에 존재하는 코드 모듈의 인스트럭션 세트에 관한 것이다. 이러한 인스트럭션 세트는 로컬 처리 시스템상에 지원되어 서버가 개시되고 바인딩 정보가 사용자에게 제공되도록 하는 관리자 프로세스(하나의 예시적인 실시예로, SOMDD 프로세스)의 일부일 수 있다. 컴퓨터 시스템에 의해 요구될 때까지, 인스트럭션 세트는 다른 컴퓨터 메모리 예를 들어 하드 디스크 드라이브 또는 (궁극적으로 CD ROM에 사용하기 위한) 광디스크 또는 (궁극적으로 플로피 디스크 드라이브에 사용하기 위한) 플로피 디스크와 같이 착탈가능한 메모리(removable memory)에 저장될 수 있다. 또한, 전술한 각종 방안은 소프트웨어에 의해 선택적으로 활성화되거나 혹은 재구성된 범용 컴퓨터에서 용이하게 구현되지만, 본 기술 분야에 통상의 지식을 가진 자라면 이들 방안은 하드웨어, 펌웨어(firmware) 또는 요구된 방안 단계를 수행하도록 구성된 더욱 특정한 장치에서도 또한 수행될 수 있음을 이해할 것이다.
본 발명은 특정한 운영체제 및 네트워크 환경에서 바람직한 [실시예]로 기술되었지만, 본 기술 분야에 통상의 지식을 가진 자라면, 본 발명은 첨부된 특허 청구범위의 정신 및 영역을 벗어나지 않고서도 다른 상이한 운영체제 및 네트워크 구조에서 여러 가지로 변경될 수 있음을 이해할 것이다. 그러나, 본 발명은 DSOM 구조로 한정하고자 의도된 것은 아니며, 특히 본 발명은 응용 서버가 원격 사용자를 인증하거나 혹은 인증하길 원하는 소정의 네트워크 환경을 광범위하게 포함되도록 의도된 것이다. 본 명세서에 사용된 바와 같이, 원격이란 용어는 대부분은 이 경우이지만 사용자가 물리적으로 명백한 기계장치상에 위치되는 것으로 의도된 것은 아니다. 또한, 원격 사용자는 응용 서버와 동일한 로컬 처리 시스템상에 수행하는 사용자 프로세스일 수 있다.
따라서 전술한 바와 같이 특허증에 의해 보호받고자 하는 신규한 권리는 다음 특허 청구범위에 개시되어 있다.

Claims (20)

  1. 분산 컴퓨터 환경(distributed computing environment)에서 원격 사용자(remote users)와, 로컬 처리 시스템(a local processing system)내에서 지원되는 응용 서버(an application server)간의 통신을 관리하는 방법에 있어서, (a) 상기 로컬 처리 시스템에서 인증(authenticate)될 수 있는 주체(identity)를 가진 각각의 원격 사용자에게 토큰(a token)을 제공(issue)하는 단계와, 원격 사용자로부터의 호출(a call)에 응답하여, 상기 로컬 처리 시스템에 의해 상기 호출과 연관된 토큰이 상기 원격 사용자에게 제공되었는지의 여부를 판정하는 단계와, 상기 로컬 처리 시스템에 의해 상기 토큰이 상기 원격 사용자에게 제공된 경우, 상기 원격 사용자를 상기 응용 서버와 접속하는 단계를 포함하는 원격 사용자와 응용 서버간의 통신 관리 방법.
  2. 제1항에 있어서 사용자 이름 및 패스워드(a user name and password)가 상기 로컬 처리 시스템의 사용자 등록부(a user registry)에 제공되는지의 여부를 판정하므로써, 상기 원격 사용자의 주체가 인증되는 원격 사용자와 응용 서버간의 통신 관리 방법.
  3. 제2항에 있어서 상기 사용자 이름 및 패스워드는 상기 로컬 처리 시스템에 바인딩 처리 요구 메시지의 일부(a part of a binding handle request message)를 구성하는 데이터 스트링(a data string)으로 제공되는 원격 사용자와 응용 서버간의 통신 관리 방법.
  4. 제3항에 있어서 상기 데이터 스트링은 범용 단일 식별자(a universal unique identifier: UUID)를 또한 포함하는 원격 사용자와 응용 서버간의 통신 관리 방법.
  5. 제4항에 있어서, 상기 토큰 및 상기 UUID는 상기 로컬 처리 시스템에 저장되어, 상기 로컬 처리 시스템에 의해 상기 호출과 연관된 상기 토큰이 상기 원격 사용자에게 제공되었는지의 여부를 판정할 수 있게 하는 원격 사용자와 응용 서버간의 통신 관리 방법.
  6. 제1항에 있어서, 상기 로컬 처리 시스템에 의해 상기 토큰이 상기 원격 사용자에게 제공되지 않았으면, 상기 원격 사용자는 상기 응용 서버와의 접속이 거절되는 원격 사용자와 응용 서버간의 통신 관리 방법.
  7. 제1항에 있어서, 상기 토큰은 특정 컴퓨터 세션(a particular computing session)과 연관된 랜덤 스트링(a random string)인 원격 사용자와 응용 서버간의 통신 관리 방법.
  8. 보안 메카니즘(a security mechanism)을 사용하여, 분산 컴퓨터 환경에서 원격 사용자와 응용 서버간의 통신을 관리하는 방법으로서, 상기 보안 메카니즘과 상기 응용 서버는 로컬 처리 시스템에서 지원되는, 상기 방법에 있어서, (a) 로컬 인증 장치(a local authentication facility)를 사용하는 상기 보안 메카니즘에 의해 상기 원격 사용자의 주체가 인증되면, 하나 이상의 토큰을 원격 사용자에게 제공하는 단계와, (b) 원격 사용자로부터의 호출에 응답하여, 상기 보안 메카니즘에 의해 상기 호출과 연관된 토큰이 상기 원격 사용자에게 제공되는지의 여부를 판정하는 단계와, (c) 상기 보안 메카니즘에 의해 상기 토큰이 상기 원격 사용자에게 제공되면, 상기 원격 사용자를 상기 응용 서버와 접속하는 단계와, (d) 상기 보안 메카니즘에 의해 상기 토큰이 상기 원격 사용자에게 제공되지 않았으면, 상기 응용 서버와의 접속을 거절하는 단계를 포함하는 원격 사용자와 응용 서버간의 통신 관리 방법.
  9. 제8항에 있어서, 사용자 이름 및 패스워드가 상기 로컬 인증 장치와 연관된 사용자 등록부에게 제공되는지의 여부를 판정하므로써, 상기 원격 사용자의 주체가 인증되는 원격 사용자와 응용 서버간의 통신 관리 방법.
  10. 제9항에 있어서, 상기 사용자 이름 및 패스워드가 상기 보안 메카니즘에 바인딩 처리 요구 메시지의 일부를 구성하는 데이터 스트링으로 제공되는 원격 사용자와 응용 서버간의 통신 관리 방법.
  11. 제10항에 있어서, 상기 데이터 스트링은 범용 단일 식별자(UUID)를 또한 포함하는 원격 사용자와 응용 서버간의 통신 관리 방법.
  12. 제11항에 있어서, 상기 토큰 및 상기 UUID는 상기 보안 메카니즘과 연관된 저장 장치(a storage)에 저장되는 원격 사용자와 응용 서버간의 통신 관리 방법.
  13. 제8항에 있어서, 상기 원격 사용자에게 제공되는 각각의 토큰은 랜덤 스트링(a random string)인 원격 사용자와 응용 서버간의 통신 관리 방법.
  14. 제8항에 있어서, 상기 보안 메카니즘에 의해 상기 호출과 연관된 토큰이 상기 원격 사용자에게 제공되었는지의 여부를 판정하는 단계는; 상기 원격 사용자로부터의 상기 토큰을 상기 응용 서버로 제공하는 단계와; 상기 응용 서버가 상기 토큰을 상기 보안 메카니즘에게 제공케 하는 단계와; 상기 보안 메카니즘과 연관된 데이터베이스(a database)를 탐색하여, 상기 토큰이 상기 보안 메카니즘에 의해 개시(originate)되는지의 여부를 판정하는 단계를 포함하는 원격 사용자와 응용 서버간의 통신 관리 방법.
  15. 분산 네트워크 환경에서, 로컬 처리 시스템내에서 지원되는 응용 서버가 원격 사용자의 주체를 확인(verify)할 수 있게 하는 방법에 있어서, (a) 원격 사용자가 상기 로컬 처리 시스템내에서 지원되는 보안 메카니즘에 상기 원격 사용자를 독특하게 식별하는 적어도 일부의 정보가 포함된 데이터 스트링을 전송케 하는 단계와; (b) 로컬 인증 장치를 사용하는 상기 보안 메카니즘에 의해 원격 사용자의 주체가 인증될 수 있는 경우, 상기 보안 메카니즘이 토큰을 상기 원격 사용자에게 제공케 하는 단계와; (c) 상기 토큰을 사용하여, 상기 응용 서버에 대한 상기 원격 사용자의 차후 접속을 제어하는 단계를 포함하는 원격 사용자의 주체 인증 방법.
  16. 제15항에 있어서, 상기 데이터 스트링은 사용자 이름, 사용자 패스워드 및 랜덤 비트 스트링(a random bit string)을 포함하는 원격 사용자의 주체 인증 방법.
  17. 제16항에 있어서, 상기 데이터 스트링은 객체(an object)인 원격 사용자의 주체 인증 방법.
  18. 사용자가 분산된 자원(distributed resources) 및 프로세스응용(process applications)을 액세스(access)할 수 있는 분산 컴퓨터 환경을 제공하고, 응용 서버를 지원하는 로컬 처리 시스템을 구비하는 네트워크에 있어서, 로컬 인증 장치를 사용하여, 인증될 수 있는 주체를 가진 각각의 원격 사용자에게 토큰을 제공하는 수단과 상기 응용 서버에 의한 상기 토큰 수신에 응답하여, 상기 원격 사용자와 상기 응용 서버의 차후 접속을 제어하는 수단을 포함하는 분산 컴퓨터 환경을 제공하는 네트워크.
  19. 사용자가 분산된 자원 및 프로세스 응용을 액세스할 수 있는 분산 컴퓨터 환경을 제공하는 컴퓨터 네트워크에 있어서 응용 서버를 갖는 로컬 컴퓨터 시스템(a local computer system)과 고객 프로세스(a client process)와, 응용 서버가 상기 고객 프로세스를 인증할 수 있도록 하는 보안 프로토콜 수단(a security protocol means)을 포함하되, 상기 보안 프로토콜 수단은, 상기 로컬 컴퓨터 시스템상에서 지원되고, 로컬 인증 장치를 사용하여 상기 고객 프로세스의 주체가 인증될 수 있는 경우에 상기 고객 프로세스에게 토큰을 제공하는 수단과, 상기 응용 서버에 의한 상기 토큰의 수신에 응답하여, 상기 고객 프로세스와 상기 응용 서버의 접속을 제어하는 수단을 포함하는 컴퓨터 네트워크.
  20. 프로세서(a processor)에 의해 판독가능하고, 상기 프로세서에 의해 실행가능한 인스트럭션의 프로그램(a program of instructions)을 실제적으로 구현하여, 응용 서버 및 하나 이상의 고객 프로세스가 구비된 분산 컴퓨터 환경에서 통신을 관리하는 방법을 수행하는 프로그램 저장 장치(a program storage device)에 있어서, 상기 방법이 (a) 인증 장치를 사용하여 상기 고객 프로세스의 주체가 인증될 수 있는 경우, 고객 프로세스에게 토큰을 제공하는 단계와; (b) 고객 프로세스로부터의 호출 요구(a call request)에 응답하여, 상기 호출 요구와 연관된 토큰이 개시되는지의 여부를 판정하는 단계와; (c) 상기 인증 장치에 의한 인증으로부터 상기 토큰이 개시되면, 상기 고객 프로세스와 상기 응용 서버가 접속될 수 있게 하는 단계를 포함하는 프로그램 저장 장치.
KR1019960004059A 1995-03-06 1996-02-21 원격 사용자와 응용 서버간의 통신 관리 방법, 원격 사용자의 주체 인증 방법, 분산 컴퓨터 환경을 제공하는 네트워크 및 프로그램 저장 장치 KR100188503B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/398,832 US5706349A (en) 1995-03-06 1995-03-06 Authenticating remote users in a distributed environment
US8/398,832 1995-03-06
US08/398,832 1995-03-06

Publications (2)

Publication Number Publication Date
KR960035299A KR960035299A (ko) 1996-10-24
KR100188503B1 true KR100188503B1 (ko) 1999-06-01

Family

ID=23576962

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960004059A KR100188503B1 (ko) 1995-03-06 1996-02-21 원격 사용자와 응용 서버간의 통신 관리 방법, 원격 사용자의 주체 인증 방법, 분산 컴퓨터 환경을 제공하는 네트워크 및 프로그램 저장 장치

Country Status (3)

Country Link
US (1) US5706349A (ko)
JP (1) JP3485219B2 (ko)
KR (1) KR100188503B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100441077B1 (ko) * 2000-06-08 2004-07-19 인터내셔널 비지네스 머신즈 코포레이션 독립된 장치들이 단일 토큰 인터페이스로서 함께 동작할수 있도록 해주는 방법 및 그래픽 사용자 인터페이스

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9507885D0 (en) * 1995-04-18 1995-05-31 Hewlett Packard Co Methods and apparatus for authenticating an originator of a message
US7266686B1 (en) * 1996-05-09 2007-09-04 Two-Way Media Llc Multicasting method and apparatus
US5857191A (en) * 1996-07-08 1999-01-05 Gradient Technologies, Inc. Web application server with secure common gateway interface
US6272538B1 (en) * 1996-07-30 2001-08-07 Micron Technology, Inc. Method and system for establishing a security perimeter in computer networks
US6219793B1 (en) * 1996-09-11 2001-04-17 Hush, Inc. Method of using fingerprints to authenticate wireless communications
US6041357A (en) * 1997-02-06 2000-03-21 Electric Classified, Inc. Common session token system and protocol
US5832521A (en) * 1997-02-28 1998-11-03 Oracle Corporation Method and apparatus for performing consistent reads in multiple-server environments
US6247129B1 (en) 1997-03-12 2001-06-12 Visa International Service Association Secure electronic commerce employing integrated circuit cards
US6275941B1 (en) * 1997-03-28 2001-08-14 Hiatchi, Ltd. Security management method for network system
US6167523A (en) * 1997-05-05 2000-12-26 Intel Corporation Method and apparatus for forms data validation and processing control
WO1998051029A1 (en) * 1997-05-07 1998-11-12 Southwestern Bell Telephone Company Apparatus and method for customized secondary access authentication
JP2001525961A (ja) 1997-05-13 2001-12-11 パスロジックス,インコーポレイテッド 一般ユーザの自己証明および認証システム
US7290288B2 (en) 1997-06-11 2007-10-30 Prism Technologies, L.L.C. Method and system for controlling access, by an authentication server, to protected computer resources provided via an internet protocol network
US6192419B1 (en) 1997-06-18 2001-02-20 International Business Machines Corporation Collaborative framework for disparate application programs
US5941945A (en) * 1997-06-18 1999-08-24 International Business Machines Corporation Interest-based collaborative framework
US6378001B1 (en) 1997-06-18 2002-04-23 International Business Machines Corp. Collaborative framework with shared objects
US5948064A (en) * 1997-07-07 1999-09-07 International Business Machines Corporation Discovery of authentication server domains in a computer network
US6021496A (en) * 1997-07-07 2000-02-01 International Business Machines Corporation User authentication from non-native server domains in a computer network
US6418466B1 (en) * 1997-07-10 2002-07-09 International Business Machines Corporation Management of authentication discovery policy in a computer network
US6003014A (en) * 1997-08-22 1999-12-14 Visa International Service Association Method and apparatus for acquiring access using a smart card
US6266666B1 (en) 1997-09-08 2001-07-24 Sybase, Inc. Component transaction server for developing and deploying transaction- intensive business applications
US6539101B1 (en) * 1998-04-07 2003-03-25 Gerald R. Black Method for identity verification
US6253325B1 (en) * 1998-04-15 2001-06-26 Hewlett-Packard Company Apparatus and method for securing documents posted from a web resource
DE19824787C2 (de) * 1998-06-03 2000-05-04 Paul Pere Verfahren zum abgesicherten Zugriff auf Daten in einem Netzwerk
US6510236B1 (en) 1998-12-11 2003-01-21 International Business Machines Corporation Authentication framework for managing authentication requests from multiple authentication devices
US20020056043A1 (en) * 1999-01-18 2002-05-09 Sensar, Inc. Method and apparatus for securely transmitting and authenticating biometric data over a network
US6332193B1 (en) * 1999-01-18 2001-12-18 Sensar, Inc. Method and apparatus for securely transmitting and authenticating biometric data over a network
US7961917B2 (en) * 1999-02-10 2011-06-14 Pen-One, Inc. Method for identity verification
AU4040500A (en) * 1999-04-02 2000-10-23 Powerware Corporation Apparatus, methods and computer program products for secure distributed data processing using user-specific service access managers and propagated security identifications
US6374292B1 (en) * 1999-07-20 2002-04-16 Sun Microsystems, Inc. Access control system for an ISP hosted shared email server
US7058683B1 (en) 1999-07-20 2006-06-06 Sun Microsystems, Inc. Methods and apparatus for providing a virtual host in electronic messaging servers
US6865594B1 (en) 1999-07-20 2005-03-08 Sun Microsystems, Inc. Methods and apparatus for automatically generating a routing table in a messaging server
US6725381B1 (en) * 1999-08-31 2004-04-20 Tumbleweed Communications Corp. Solicited authentication of a specific user
US6925565B2 (en) * 2001-05-25 2005-08-02 Pen-One, Inc Pen-based transponder identity verification system
US7047419B2 (en) * 1999-09-17 2006-05-16 Pen-One Inc. Data security system
US6834351B1 (en) 1999-10-29 2004-12-21 Gateway, Inc. Secure information handling system
US7609862B2 (en) * 2000-01-24 2009-10-27 Pen-One Inc. Method for identity verification
US6728716B1 (en) * 2000-05-16 2004-04-27 International Business Machines Corporation Client-server filter computing system supporting relational database records and linked external files operable for distributed file system
JP4287990B2 (ja) * 2000-07-07 2009-07-01 インターナショナル・ビジネス・マシーンズ・コーポレーション ネットワークシステム、端末管理システム、端末管理方法、データ処理方法、記録媒体およびインターネットサービス提供方法
US7020773B1 (en) * 2000-07-17 2006-03-28 Citrix Systems, Inc. Strong mutual authentication of devices
US6986040B1 (en) * 2000-11-03 2006-01-10 Citrix Systems, Inc. System and method of exploiting the security of a secure communication channel to secure a non-secure communication channel
US20020059531A1 (en) * 2000-11-16 2002-05-16 Lai On Warren Kwan Integrated tracking of multi-authentication among web services
US20020169967A1 (en) * 2001-05-14 2002-11-14 Sangeeta Varma Method and apparatus for multiple token access to thin client architecture session
US20020197979A1 (en) * 2001-05-22 2002-12-26 Vanderveen Michaela Catalina Authentication system for mobile entities
US7609863B2 (en) * 2001-05-25 2009-10-27 Pen-One Inc. Identify authentication device
US7089561B2 (en) * 2001-06-01 2006-08-08 Microsoft Corporation Methods and systems for creating and communicating with computer processes
US7421411B2 (en) * 2001-07-06 2008-09-02 Nokia Corporation Digital rights management in a mobile communications environment
US6961851B2 (en) * 2001-07-23 2005-11-01 Avaya Technology Corp. Method and apparatus for providing communications security using a remote server
KR20010107886A (ko) * 2001-11-12 2001-12-07 이성섭 침입탐지 시스템 상의 무결성 검증 프로세스의 개선 및탐지된 파일의 복구·갱신 방법과 프로그램
US7120797B2 (en) * 2002-04-24 2006-10-10 Microsoft Corporation Methods for authenticating potential members invited to join a group
US20030204724A1 (en) * 2002-04-30 2003-10-30 Microsoft Corporation Methods for remotely changing a communications password
US7685287B2 (en) * 2002-05-30 2010-03-23 Microsoft Corporation Method and system for layering an infinite request/reply data stream on finite, unidirectional, time-limited transports
US20040139354A1 (en) * 2003-01-09 2004-07-15 Sbc Properties, L.P. System for user authentication
US7836493B2 (en) * 2003-04-24 2010-11-16 Attachmate Corporation Proxy server security token authorization
US8214884B2 (en) 2003-06-27 2012-07-03 Attachmate Corporation Computer-based dynamic secure non-cached delivery of security credentials such as digitally signed certificates or keys
US8544073B2 (en) * 2003-07-07 2013-09-24 Progress Software Corporation Multi-platform single sign-on database driver
US7363505B2 (en) * 2003-12-03 2008-04-22 Pen-One Inc Security authentication method and system
JP4587158B2 (ja) * 2004-01-30 2010-11-24 キヤノン株式会社 セキュア通信方法、端末装置、認証サービス装置、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体
KR100573700B1 (ko) * 2004-05-15 2006-04-25 주식회사 니츠 분산환경을 지원하는 안전한 멀티에이전트 시스템 및보안서비스 제공방법
JP4580693B2 (ja) * 2004-06-11 2010-11-17 株式会社日立製作所 共有排他制御方法
JP4737974B2 (ja) * 2004-11-26 2011-08-03 株式会社東芝 オンラインショッピングシステムとそのユーザ管理装置、ネット店舗装置及びユーザ端末装置
US7451301B2 (en) * 2005-03-30 2008-11-11 Intel Corporation OS independent device management methods and apparatuses having a map providing codes for various activations of keys
US7690026B2 (en) 2005-08-22 2010-03-30 Microsoft Corporation Distributed single sign-on service
KR100759089B1 (ko) * 2005-09-26 2007-09-19 (주)나즌커뮤니케이션 리눅스 서버용 과부하 자동제어방법
US20070300051A1 (en) * 2006-06-26 2007-12-27 Rothman Michael A Out of band asset management
US7694131B2 (en) * 2006-09-29 2010-04-06 Microsoft Corporation Using rich pointers to reference tokens
US20080082626A1 (en) * 2006-09-29 2008-04-03 Microsoft Corporation Typed authorization data
CN100550738C (zh) * 2007-02-06 2009-10-14 上海交通大学 一种分布式网络的认证方法和系统
US8140576B1 (en) * 2007-07-19 2012-03-20 Salesforce.Com, Inc. On-demand database service system, method and computer program product for conditionally allowing an application of an entity access to data of another entity
US8151333B2 (en) 2008-11-24 2012-04-03 Microsoft Corporation Distributed single sign on technologies including privacy protection and proactive updating
US9042608B2 (en) 2010-10-25 2015-05-26 Pen-One, Inc. Data security system
CN104486314A (zh) * 2014-12-05 2015-04-01 北京众享比特科技有限公司 基于对等网络的身份认证系统和身份认证方法
US10228926B2 (en) * 2016-01-28 2019-03-12 T-Mobile Usa, Inc. Remote support installation mechanism
WO2019199272A1 (en) * 2018-04-10 2019-10-17 Visa International Service Association System and method for secure device connection
US10862689B1 (en) 2019-07-23 2020-12-08 Cyberark Software Ltd. Verification of client identities based on non-distributed data

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4349695A (en) * 1979-06-25 1982-09-14 Datotek, Inc. Recipient and message authentication method and system
DE4008971A1 (de) * 1990-03-20 1991-09-26 Siemens Nixdorf Inf Syst Verfahren zur authentifizierung eines eine datenstation benutzenden anwenders
GB9010603D0 (en) * 1990-05-11 1990-07-04 Int Computers Ltd Access control in a distributed computer system
US5196840A (en) * 1990-11-05 1993-03-23 International Business Machines Corporation Secure communications system for remotely located computers
DE69022424T2 (de) * 1990-11-09 1996-03-28 Ibm Nichtablehnung in Rechnernetzwerken.
GB9104909D0 (en) * 1991-03-08 1991-04-24 Int Computers Ltd Access control in a distributed computer system
US5249230A (en) * 1991-11-21 1993-09-28 Motorola, Inc. Authentication system
US5235642A (en) * 1992-07-21 1993-08-10 Digital Equipment Corporation Access control subsystem and method for distributed computer system using locally cached authentication credentials
US5349642A (en) * 1992-11-03 1994-09-20 Novell, Inc. Method and apparatus for authentication of client server communication
JPH06266600A (ja) * 1993-03-12 1994-09-22 Hitachi Ltd 分散ファイルシステム
US5491752A (en) * 1993-03-18 1996-02-13 Digital Equipment Corporation, Patent Law Group System for increasing the difficulty of password guessing attacks in a distributed authentication scheme employing authentication tokens
JPH06332859A (ja) * 1993-05-21 1994-12-02 Nippon Telegr & Teleph Corp <Ntt> ユーザ認証方法
US6226690B1 (en) * 1993-06-14 2001-05-01 International Business Machines Corporation Method and apparatus for utilizing proxy objects to communicate with target objects
JPH0756796A (ja) * 1993-08-10 1995-03-03 Kawasaki Steel Corp データベース管理装置のセキュリティ装置
US5454038A (en) * 1993-12-06 1995-09-26 Pitney Bowes Inc. Electronic data interchange postage evidencing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100441077B1 (ko) * 2000-06-08 2004-07-19 인터내셔널 비지네스 머신즈 코포레이션 독립된 장치들이 단일 토큰 인터페이스로서 함께 동작할수 있도록 해주는 방법 및 그래픽 사용자 인터페이스

Also Published As

Publication number Publication date
JPH08292929A (ja) 1996-11-05
KR960035299A (ko) 1996-10-24
JP3485219B2 (ja) 2004-01-13
US5706349A (en) 1998-01-06

Similar Documents

Publication Publication Date Title
KR100188503B1 (ko) 원격 사용자와 응용 서버간의 통신 관리 방법, 원격 사용자의 주체 인증 방법, 분산 컴퓨터 환경을 제공하는 네트워크 및 프로그램 저장 장치
US9392078B2 (en) Remote network access via virtual machine
US9213513B2 (en) Maintaining synchronization of virtual machine image differences across server and host computers
US5586260A (en) Method and apparatus for authenticating a client to a server in computer systems which support different security mechanisms
US6338138B1 (en) Network-based authentication of computer user
Samar Unified login with pluggable authentication modules (PAM)
JP4164855B2 (ja) プラグ対応認可システムに対するサーバサポート方法およびシステム
US8732284B2 (en) Data serialization in a user switching environment
US20170223010A1 (en) Single sign on for a remote user session
US7421500B2 (en) Grid computing control system
US6243816B1 (en) Single sign-on (SSO) mechanism personal key manager
US5764887A (en) System and method for supporting distributed computing mechanisms in a local area network server environment
US6651168B1 (en) Authentication framework for multiple authentication processes and mechanisms
US20130081126A1 (en) System and method for transparent single sign-on
EP2015217A2 (en) Verifiable virtualized storage port assignments for virtual machines
US6175920B1 (en) Expedited message control for synchronous response in a Kerberos domain
US7827405B2 (en) Mechanism for utilizing kerberos features by an NTLM compliant entity
EP1057093A2 (en) Per-method designation of security requirements
US7024692B1 (en) Non pre-authenticated kerberos logon via asynchronous message mechanism
US10237252B2 (en) Automatic creation and management of credentials in a distributed environment
US6405312B1 (en) Kerberos command structure and method for enabling specialized Kerbero service requests
US8601544B1 (en) Computer system employing dual-band authentication using file operations by trusted and untrusted mechanisms
JPH0779243A (ja) ネットワーク接続装置およびネットワーク接続方法
US9240988B1 (en) Computer system employing dual-band authentication
KR20010040981A (ko) 스택에 기초한 보안 조건

Legal Events

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

Payment date: 20101210

Year of fee payment: 13

LAPS Lapse due to unpaid annual fee