다음을 통해 공유


AD FS Single Sign-On 설정

적용 대상: Windows Server(지원되는 모든 버전)

SSO(Single Sign-On)를 사용하면 사용자가 자격 증명을 더 입력하라는 메시지가 표시되지 않고 한 번 인증하고 여러 리소스에 액세스할 수 있습니다. 이 문서에서는 SSO에 대한 기본 AD FS 동작 및 이 동작을 사용자 지정할 수 있는 구성 설정에 대해 설명합니다.

지원되는 Single Sign-On 유형

AD FS는 다음과 같은 여러 유형의 Single Sign-On 환경을 지원합니다.

  • 세션 SSO

    세션 SSO는 사용자가 특정 세션 중에 애플리케이션을 전환할 때 추가 프롬프트를 제거합니다. 특정 세션이 종료되면 사용자에게 자격 증명을 다시 묻는 메시지가 표시됩니다. 세션 SSO 쿠키는 인증된 사용자를 위해 작성됩니다.

    AD FS는 사용자의 디바이스가 등록되지 않은 경우 기본적으로 세션 SSO 쿠키를 설정합니다. 브라우저 세션이 종료되고 다시 시작되면 이 세션 쿠키가 삭제되고 더 이상 유효하지 않습니다.

  • 영구 SSO

    영구 SSO는 영구 SSO 쿠키가 유효한 한 사용자가 애플리케이션을 전환할 때 추가 프롬프트를 제거합니다. 영구 SSO 쿠키는 인증된 사용자를 위해 작성됩니다. 영구 SSO와 세션 SSO의 차이점은 영구 SSO를 여러 세션에서 기본 얻을 수 있다는 점입니다.

    AD FS는 디바이스가 등록된 경우 영구 SSO 쿠키를 설정합니다. 또한 AD FS는 사용자가 "로그인 유지" 옵션을 선택하는 경우 영구 SSO 쿠키를 설정합니다. 영구 SSO 쿠키가 더 이상 유효하지 않으면 거부되고 삭제됩니다.

  • 애플리케이션별 SSO

    OAuth 시나리오에서는 새로 고침 토큰을 사용하여 특정 애플리케이션의 범위 내에서 사용자의 SSO 상태를 기본.

    AD FS는 등록된 디바이스에 대한 영구 SSO 쿠키의 수명에 따라 새로 고침 토큰의 만료 시간을 설정합니다. 기본적으로 쿠키 수명은 Windows Server 2012 R2의 AD FS에 대해 7일입니다. 디바이스가 14일 이내에 AD FS 리소스에 액세스하는 데 사용되는 경우 Windows Server 2016의 AD FS에 대한 기본 쿠키 수명은 최대 90일입니다.

디바이스가 등록되지 않았지만 사용자가 "로그인 유지" 옵션을 선택하는 경우 새로 고침 토큰의 만료 시간은 "로그인 유지"에 대한 영구 SSO 쿠키의 수명과 같습니다. 영구 SSO 쿠키 수명은 기본적으로 1일이며 최대 7일입니다. 그렇지 않으면 새로 고침 토큰 수명은 세션 SSO 쿠키 수명(기본적으로 8시간)과 같습니다.

등록된 디바이스의 사용자는 영구 SSO를 사용하지 않도록 설정하지 않는 한 항상 영구 SSO를 받습니다. 등록되지 않은 디바이스의 경우 KMSI("로그인 유지" 기능)를 사용하도록 설정하여 영구 SSO를 달성할 수 있습니다.

Windows Server 2012 R2의 경우 "로그인 유지" 시나리오에 PSSO를 사용하도록 설정하려면 Windows RT 8.1, Windows 8.1 및 Windows Server 2012 R2에 대한 2014년 8월 업데이트 롤업의 일부인 이 핫픽스를 설치해야 합니다.

작업 PowerShell 설명
영구 SSO 사용/사용 안 함 Set-AdfsProperties –EnablePersistentSso <Boolean> 영구 SSO는 기본적으로 사용하도록 설정됩니다. 사용하지 않도록 설정된 경우 PSSO 쿠키가 만들어지지 않습니다.
"사용/사용 안 함 "로그인 유지" Set-AdfsProperties –EnableKmsi <Boolean> "로그인 유지" 기능은 기본적으로 사용하지 않도록 설정되어 있습니다. 사용하도록 설정된 경우 사용자에게 AD FS 로그인 페이지에 "로그인 유지" 선택 항목이 표시됩니다.

AD FS 2016 - Single Sign-On 및 인증된 디바이스

AD FS 2016은 등록된 디바이스에서 요청자가 인증하는 경우 PSSO가 최대 90일로 증가하지만 14일(디바이스 사용 기간) 내에 인증이 필요한 경우 PSSO를 변경합니다. 처음으로 자격 증명을 제공한 후 등록된 디바이스가 있는 사용자는 디바이스를 사용하여 14일마다 한 번 이상 AD FS 리소스에 액세스하는 경우 최대 90일 동안 Single Sign-On을 받습니다. 15일이 지나면 사용자에게 자격 증명을 다시 입력하라는 메시지가 표시됩니다.

영구 SSO는 기본적으로 사용하도록 설정됩니다. 사용하지 않도록 설정된 경우 PSSO 쿠키가 만들어지지 않습니다.|

Set-AdfsProperties –EnablePersistentSso <Boolean\>

디바이스 사용 기간(기본적으로 14일)은 AD FS 속성 DeviceUsageWindowInDays에 의해 제어됩니다.

Set-AdfsProperties -DeviceUsageWindowInDays

최대 Single Sign-On 기간(기본적으로 90일)은 AD FS 속성 PersistentSsoLifetimeMins에 의해 제어됩니다.

Set-AdfsProperties -PersistentSsoLifetimeMins

인증되지 않은 디바이스에 대한 로그인 유지

등록되지 않은 디바이스의 경우 Single Sign-On 기간은 KMSI(로그인 유지) 기능 설정에 따라 결정됩니다. KMSI는 기본적으로 사용하지 않도록 설정되며 AD FS 속성 KmsiEnabled를 True로 설정하여 사용하도록 설정할 수 있습니다.

Set-AdfsProperties -EnableKmsi $true

KMSI를 사용하지 않도록 설정하면 기본 Single Sign-On 기간은 8시간입니다. SsoLifetime 속성을 사용하여 Single Sign-On 기간을 구성할 수 있습니다. 속성은 분 단위로 측정되므로 기본값은 480입니다.

Set-AdfsProperties –SsoLifetime <Int32\>

KMSI를 사용하도록 설정하면 기본 Single Sign-On 기간은 24시간입니다. KMSI를 사용하도록 설정된 Single Sign-On 기간은 KmsiLifetimeMins 속성을 사용하여 구성할 수 있습니다. 속성은 분 단위로 측정되므로 기본값은 1440입니다.

Set-AdfsProperties –KmsiLifetimeMins <Int32\>

MFA(다단계 인증) 동작

AD FS는 비교적 긴 기간의 Single Sign-On을 제공합니다. 이전 로그온이 MFA가 아닌 기본 자격 증명을 기반으로 하지만 현재 로그온에 MFA가 필요한 경우 AD FS에서 더 많은 인증(다단계 인증)을 요구하는 메시지가 표시됩니다. 이 동작은 SSO 구성에 관계없이 수행됩니다. AD FS는 인증 요청을 받으면 먼저 SSO 컨텍스트(예: 쿠키)가 있는지 여부와 MFA가 필요한지 여부를 결정합니다. 예를 들어 인증 요청이 외부에서 온 경우 MFA가 필요합니다. 이 경우 AD FS는 SSO 컨텍스트에 MFA가 포함되어 있는지 여부를 평가합니다. 그렇지 않은 경우 MFA가 표시됩니다.

PSSO 해지

보안을 보호하기 위해 AD FS는 다음 조건이 충족될 때 이전에 발급된 영구 SSO 쿠키를 거부합니다.

  • 사용자가 암호를 변경합니다.

  • AD FS에서 영구 SSO 설정을 사용하지 않도록 설정

  • 분실 또는 도난당한 경우 관리자가 디바이스를 사용할 수 없습니다.

  • AD FS는 등록된 사용자에 대해 발급되지만 사용자 또는 디바이스가 더 이상 등록되지 않은 영구 SSO 쿠키를 받습니다.

  • AD FS는 등록된 사용자에 대한 영구 SSO 쿠키를 수신하지만 사용자가 다시 등록됨

  • AD FS는 영구 SSO 쿠키를 수신합니다. 이 쿠키는 "로그인 유지"의 결과로 발급되지만 AD FS에서는 "로그인 유지" 설정이 비활성화됩니다.

  • AD FS는 등록된 사용자에 대해 발급되지만 인증 중에 디바이스 인증서가 누락되거나 변경되는 영구 SSO 쿠키를 받습니다.

  • AD FS 관리자는 영구 SSO에 대한 차단 시간을 설정했습니다. 차단 시간이 구성되면 AD FS는 이 시간 전에 발급된 영구 SSO 쿠키를 거부합니다.

영구 SSO 쿠키를 거부하려면 사용자가 AD FS로 다시 인증하기 위해 자격 증명을 제공해야 합니다.

차단 시간을 설정하려면 다음 PowerShell cmdlet을 실행합니다.

Set-AdfsProperties -PersistentSsoCutoffTime <DateTime>

Office 365 사용자가 SharePoint Online에 액세스할 수 있도록 PSSO 사용

PSSO를 사용하도록 설정하고 구성한 후 AD FS는 사용자 인증 직후 영구 쿠키를 만듭니다. PSSO는 쿠키가 여전히 유효한 한 후속 세션에서 다시 인증할 필요가 없습니다.

사용자는 Office 365 및 SharePoint Online에 대한 추가 인증 프롬프트를 방지할 수도 있습니다. Microsoft Entra ID 및 SharePoint Online에서 지속성을 트리거하도록 AD FS에서 다음 두 클레임 규칙을 구성합니다. Office 365 사용자가 SharePoint Online에 액세스할 수 있도록 PSSO를 사용하도록 설정하려면 이 핫픽스를 설치합니다. Windows RT 8.1, Windows 8.1 및 Windows Server 2012 R2에 대한 2014년 8월 업데이트 롤업의 일부입니다.

InsideCorporateNetwork 클레임을 통과하는 발급 변환 규칙

@RuleTemplate = "PassThroughClaims"
@RuleName = "Pass through claim - InsideCorporateNetwork"
c:[Type == "https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork"]
=> issue(claim = c);
A custom Issuance Transform rule to pass through the persistent SSO claim
@RuleName = "Pass Through Claim - Psso"
c:[Type == "https://schemas.microsoft.com/2014/03/psso"]
=> issue(claim = c);

요약할 내용:

SSO(Single Sign-On) 경험 ADFS 2012 R2
디바이스가 등록되어 있나요?
ADFS 2016
디바이스가 등록되어 있나요?
아니요, KMSI 예 아니요, KMSI 예
SSO=>set Refresh Token=> 8시간 n/a 8시간 n/a
PSSO=>set Refresh Token=> n/a 24시간 7일 n/a 24시간 최대 90일 및 14일 기간
토큰 수명 1시간 1시간 1시간 1시간 1시간 1시간

등록된 디바이스? PSSO/영구 SSO를 가져옵니다.

등록된 디바이스가 없나요? SSO를 가져옵니다.

등록된 디바이스가 아니라 KMSI인가요? PSSO/영구 SSO를 가져옵니다.

경우:

  • [x] 관리 KMSI 기능 [AND]을 사용하도록 설정했습니다.
  • [x] 사용자가 양식 로그인 페이지에서 KMSI 검사 상자를 선택합니다.

  AD FS는 최신 새로 고침 토큰의 유효성이 이전 토큰보다 긴 경우에만 새 새로 고침 토큰을 발급합니다. 토큰의 최대 수명은 84일이지만 AD FS는 14일 슬라이딩 윈도우에서 토큰을 유효하게 유지합니다. 새로 고침 토큰이 일반 SSO 시간인 8시간 동안 유효한 경우 새 새로 고침 토큰이 발급되지 않습니다.

알아 두는 것이 좋습니다.

LastPasswordChangeTimestamp 특성이 동기화되지 않은 페더레이션된 사용자는 최대 기간 값이 12시간인 세션 쿠키 및 새로 고침 토큰을 발급합니다.

Microsoft Entra ID는 이전 자격 증명과 관련된 토큰을 해지할 시기를 결정할 수 없으므로 최대 기간 값 세션 쿠키 및 새로 고침 토큰이 발급됩니다. 이 동작은 예를 들어 변경된 암호로 인해 발생할 수 있습니다. Microsoft Entra ID는 사용자 및 연결된 토큰이 여전히 유효한지 확인하기 위해 더 자주 검사 합니다.