트랜잭션 통합자와 함께 SSO 사용 - HIS
트랜잭션 통합자의 Single Sign-On
SSO(단일 Sign-On)는 사용자가 사용자 이름과 암호를 한 번 입력하여 여러 애플리케이션에 액세스할 수 있도록 하는 메커니즘입니다. Windows 및 백 엔드 시스템 및/또는 애플리케이션에 액세스하는 데 필요한 많은 암호를 사용자에게 간소화된 로그온 및 유지 관리를 제공합니다. 이를 통해 호스트/백 엔드 시스템에 로그온하는 프로세스를 자동화하여 애플리케이션을 통합할 수 있습니다.
일반적으로 다음과 같은 세 가지 유형의 Single Sign-On 서비스가 있습니다.
일반적인 인증 Single Sign-On: 이러한 서비스를 사용하면 컴퓨터 내의 여러 애플리케이션에 연결할 수 있습니다. 자격 증명은 컴퓨터에 로그인할 때 한 번 요청되고 확인되며, 이러한 자격 증명은 사용 권한에 따라 수행할 수 있는 작업을 결정하는 데 사용됩니다. 이러한 유형의 Single Sign-On의 예는 Windows 통합 보안을 사용하는 Exchange Server. 사용자가 Windows에 로그온한 후에는 전자 메일에 액세스하기 위해 추가 자격 증명을 제공할 필요가 없습니다.
인터넷 Single Sign-On: 이러한 서비스를 사용하면 단일 사용자 자격 증명 집합을 사용하여 인터넷을 통해 리소스에 액세스할 수 있습니다. 사용자는 서로 다른 조직에 속한 다양한 웹 사이트에 로그온할 수 있는 자격 증명 집합을 제공합니다. 이러한 유형의 Single Sign-On의 예는 Windows Live ID입니다.
인트라넷 Single Sign-On: 이러한 서비스를 사용하면 회사의 엔터프라이즈 환경 내에서 여러 다른 유형의 애플리케이션 및 시스템에 연결할 수 있습니다. 이러한 유형의 Single Sign-On의 예로는 Windows 애플리케이션이 비 Windows 애플리케이션과 통합되어 Single Sign-On을 사용하도록 설정하는 프레임워크를 제공하는 Enterprise Single Sign-On이 있습니다.
SSO는 보안 정책 마법사를 통해 자격 증명을 쉽게 변환할 수 있습니다. SSO를 사용하면 외부 호스트 사용자 ID와 암호 자격 증명과 Windows 자격 증명 간의 관계를 정의하고 관리할 수 있습니다. 이러한 관계를 관리하기 위한 기초는 SSO 관련 애플리케이션입니다.
관련 애플리케이션은 Windows가 아닌 환경에서 애플리케이션 처리 시스템의 호스트 관리자 보기를 반영하는 논리적 엔터티에서 잘 정의된 호스트 사용자 ID의 그룹화입니다.
SSO가 유효한 SSO 관련 애플리케이션과 함께 호스트 자격 증명 집합(사용자 ID 및 암호)을 전달하면 SSO는 Windows 자격 증명을 나타내는 Windows 액세스 토큰을 반환합니다. HIP는 서버 개체의 메서드에 대한 실행 스레드를 설정할 때 이 액세스 토큰을 사용합니다.
이 프로세스를 더 쉽게 수행하려면 보안 정책은 서버 개체에서 메서드를 실행하는 데 필요한 Windows 자격 증명(액세스 토큰)에 대한 액세스 권한을 얻기 위해 쿼리할 SSO 관련 애플리케이션을 알고 있어야 합니다. 마법사 창을 사용하면 사용자가 유효한 SSO 관련 애플리케이션 목록에서 선택하고 정의되는 보안 정책에 추가할 수 있습니다. 마법사 창을 사용하면 사용자가 이전에 보안 정책에 정의된 SSO 관련 애플리케이션을 제거할 수도 있습니다.
Host-Initiated 처리가 포함된 SSO
HIP(호스트 시작 처리)에서 SSO(Single Sign-On) 보안을 사용하는 경우 .NET 개체 또는 COM 개체를 호출하는지 여부에 따라 사용자 자격 증명의 가장이 다르게 처리됩니다. HIP가 .NET 개체를 호출하는 경우 특별한 고려 사항이 없습니다. TI(트랜잭션 통합자) 런타임 환경은 사용자 계정을 가장합니다. 그러나 HIP가 COM 개체를 호출하는 경우 특별한 고려 사항이 있습니다.
구성 요소의 스레딩 모델 및 등록 유형에 따라 HIP가 사용자 계정(호스트 자격 증명이 SSO를 통해 매핑된 계정)을 가장할 때 .COM 개체의 메서드를 호출할 때 다음 작업이 발생합니다.
스레딩 모델 | 등록 | 동작 |
---|---|---|
싱글, 아파트 | 서버/라이브러리/COM+ 애플리케이션 없음 | - 서버 개체 메서드는 HIP Service/COM+ 애플리케이션 구성 ID에서 호출됩니다. - 서버 개체 메서드는 CoImpersonateClient 를 호출하여 사용자 ID를 가장하기 시작합니다. - 필요에 따라 메서드가 CoRevertToSelf를 호출할 수 있지만, 메서드가 반환된 후 COM에서 호출하므로 필요하지 않습니다. |
무료, 둘 다, 중립 | 서버 COM+ 애플리케이션 | - 서버 개체 메서드는 HIP Service/COM+ 애플리케이션 구성 ID에서 호출됩니다. - 서버 개체 메서드는 CoImpersonateClient 를 호출하여 사용자 ID를 가장하기 시작합니다. - 필요에 따라 메서드가 CoRevertToSelf를 호출할 수 있지만, 메서드가 반환된 후 COM에서 호출하므로 필요하지 않습니다. |
무료, 둘 다, 중립 | 라이브러리/COM+ 애플리케이션 없음 | - 서버 개체 메서드는 가장되는 사용자 ID에서 호출됩니다. - 서버 개체 메서드는 RPC_E_CALL_COMPLETE 실패하므로 CoImpersonateClient 또는 CoRevertToSelf 를 호출하지 않아야 합니다. |
Microsoft Visual Basic® 6.0에서 프로그래밍하는 경우 프로그램에 CoImpersonateClient 및 CoRevertToSelf 선언을 포함해야 합니다.
Private Declare Function CoImpersonateClient Lib "ole32.dll" () As Long
Private Declare Function CoRevertToSelf Lib "ole32.dll" () As Long