인증 정책 구성
Windows Server 2012 r 2에서 AD FS에 모두 액세스 제어 및 사용자, 디바이스, 위치 및 인증 데이터를 포함 하는 다중 요소 인증 메커니즘 개선 됩니다. 이러한 향상된 기능을 통해 사용자 인터페이스 또는 Windows PowerShell을 통해 사용자 ID 또는 그룹 멤버 자격, 네트워크 위치, 작업 공간에 조인된 디바이스 데이터 및 MFA(다단계 인증)를 수행할 때의 인증 상태를 기반으로 하는 다단계 액세스 제어 및 다단계 인증을 통해 AD FS 보안 애플리케이션에 대한 액세스 권한을 부여할 위험을 관리할 수 있습니다.
Windows Server 2012 R2의 AD FS(Active Directory Federation Services)에서 MFA 및 다단계 액세스 제어에 대한 자세한 내용은 다음 항목을 참조하세요.
AD FS 관리 스냅인을 통해 인증 정책 구성
멤버 자격이 관리자, 또는 이와 동등한 로컬 컴퓨터에서 이러한 절차를 완료 하려면 최소 요구 사항입니다. 적절 한 계정을 사용 하는 방법에 대 한 세부 정보를 검토 하 고 그룹 구성원 자격 로컬 및 도메인 기본 그룹합니다.
Windows Server 2012 r 2에서 AD FS에서 모든 애플리케이션 및 AD FS에서 보안이 유지 되는 서비스에 적용 되는 전역 범위의 인증 정책을 지정할 수 있습니다. 또한 특정 애플리케이션 및 당사자 트러스트에 의존 하며 AD FS를 통해 보호 되는 서비스에 대 한 인증 정책을 설정할 수 있습니다. 신뢰 당 특정 애플리케이션에 대 한 인증 정책을 지정 당사자 트러스트 전역 인증 정책을 재정의 하지 않습니다. 전역 또는 신뢰 당 경우 당사자 트러스트 인증 정책에서 MFA를 MFA 요구는 사용자가이 신뢰 당사자 트러스트에 인증 하려고 하는 경우 트리거됩니다. 전역 인증 정책은 애플리케이션 및 특정 구성 된 인증 정책을 포함 하지 않는 서비스에 대 한 신뢰 당사자 트러스트에 대 한 대체 (fallback)입니다.
Windows Server 2012 r 2에서 기본 인증을 전역적으로 구성 하려면
서버 관리자에서 도구를 클릭하고 AD FS 관리를 선택합니다.
AD FS 스냅인에서 인증 정책을 클릭합니다.
에 기본 인증 섹션에서 클릭 편집 옆에 전역 설정합니다. 인증 정책을 마우스 오른쪽 클릭하고 전역 기본 인증 편집을 선택하거나 작업 창에서 전역 기본 인증 편집을 선택합니다.
에 전역 인증 정책 편집 창에는 기본 탭을 전역 인증 정책의 일부로 다음 설정을 구성할 수 있습니다.
기본 인증에 사용할 인증 방법입니다. 아래에서 사용할 수 있는 인증 방법을 선택할 수는 익스트라넷 및 인트라넷합니다.
디바이스 인증을 통해는 디바이스 인증 사용 확인란입니다. 자세한 내용은 참조 SSO 및 원활한 두 번째 단계 인증에서 회사 애플리케이션에 대 한 모든 디바이스에서 작업 공간 가입합니다.
신뢰 당 기본 인증을 구성 하려면 신뢰 당사자
서버 관리자에서 도구를 클릭하고 AD FS 관리를 선택합니다.
AD FS에서 스냅인에서 신뢰 당사자 트러스트별 인증 정책\을 클릭한 후, 인증 정책을 구성할 신뢰 당사자 트러스트를 클릭합니다.
인증 정책을 구성할 신뢰 당사자 트러스트를 마우스 오른쪽 클릭한 후, 사용자 지정 기본 인증 편집을 선택하거나 작업 창에서 사용자 지정 기본 인증 편집을 선택합니다.
<relying_party_trust_name>에 대한 인증 정책 편집 창의 기본 탭에서 신뢰 당사자 트러스트별 신뢰 인증 정책의 일부로 다음 설정을 구성할 수 있습니다.
- 사용자가 로그인할 때마다 자격 증명을 제공 확인란을 통해 사용자가 로그인할 때마다 자격 증명을 제공해야 하는지를 설정합니다.
다단계 인증을 전역적으로 구성 하려면
서버 관리자에서 도구를 클릭하고 AD FS 관리를 선택합니다.
AD FS 스냅인에서 인증 정책을 클릭합니다.
다단계 인증 섹션에서 전역 설정 옆의 편집을 클릭합니다. 인증 정책을 마우스 오른쪽 클릭한 후, 글로벌 다단계 인증 편집을 선택하거나, 작업 창에서 글로벌 다단계 인증 편집을 선택합니다.
전역 인증 정책 편집 창의 다단계 탭에서 전역 다단계 인증 정책의 일부로 다음 설정을 구성할 수 있습니다.
사용자/그룹, 디바이스, 위치 섹션에서 사용 가능한 옵션을 통해 MFA에 대한 설정 또는 조건을 설정할 수 있습니다.
이러한 설정에 대 한 MFA를 사용 하려면 하나 이상의 추가 인증 방법을 선택 해야 합니다. 인증서 인증 사용할 수 있는 기본 옵션입니다. 또한 다른 사용자 지정 추가 인증 방법, 예를 들어 Windows Azure 활성 인증을 구성할 수 있습니다. 자세한 내용은 참조 연습 가이드: 중요 한 애플리케이션에 대 한 Multi-factor Authentication 사용 하 여 위험 관리합니다.
Warning
추가 인증 방법은 전역적으로만 구성할 수 있습니다.
신뢰 당사자 트러스트별 다단계 인증을 구성하려면 다음을 따르세요.
서버 관리자에서 도구를 클릭하고 AD FS 관리를 선택합니다.
AD FS 스냅인에서 신뢰 당사자 트러스트별 인증 정책\을 클릭한 후, MFA를 구성할 신뢰 당사자 트러스트를 클릭합니다.
MFA를 구성할 신뢰 당사자 트러스트를 마우스 오른쪽 클릭한 후, 사용자 지정 다단계 인증 편집을 선택하거나 작업 창에서 사용자 지정 다단계 인증 편집을 선택합니다.
<relying_party_trust_name>에 대한 인증 정책 편집의 다단계 탭에서 신뢰 당사자 트러스트별 인증 정책의 일부로 다음 설정을 구성할 수 있습니다.
- 사용자/그룹, 디바이스, 위치 섹션에서 사용 가능한 옵션을 통해 MFA에 대한 설정 또는 조건을 설정할 수 있습니다.
Windows PowerShell을 통해 인증 정책 구성
Windows PowerShell을 사용하면 Windows Server 2012 R2의 AD FS에서 사용할 수 있는 다양한 액세스 제어 요소와 인증 메커니즘을 보다 유연하게 사용하여 AD FS 보안 리소스에 대한 실제 조건부 액세스를 구현하는 데 필요한 인증 정책 및 권한 부여 규칙을 구성할 수 있습니다.
멤버 자격이 관리자, 또는 이와 동등한 로컬 컴퓨터에서 이러한 절차를 완료 하려면 최소 요구 사항입니다. 로컬 및 도메인 기본 그룹에서 적절한 계정 및 그룹 멤버십 사용에 대한 세부 정보를 검토합니다.(http://go.microsoft.com/fwlink/?LinkId=83477).
Windows PowerShell을 통해 추가 인증 방법을 구성 하려면
- 페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
`Set-AdfsGlobalAuthenticationPolicy –AdditionalAuthenticationProvider CertificateAuthentication `
Warning
이 명령이 성공적으로 실행되었는지 확인하려면 Get-AdfsGlobalAuthenticationPolicy
명령을 실행하면 됩니다.
사용자의 그룹 멤버십 데이터를 기반으로 신뢰 당사자 트러스트별 MFA를 구성하려면 다음을 따릅니다.
- 페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행합니다.
`$rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust`
Warning
<relying_party_trust>를 신뢰 당사자 트러스트의 이름으로 변경해야 합니다.
- 동일한 Windows PowerShell 명령 창에서 다음 명령을 실행 합니다.
$MfaClaimRule = "c:[Type == '"https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid'", Value =~ '"^(?i) <group_SID>$'"] => issue(Type = '"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod'", Value '"https://schemas.microsoft.com/claims/multipleauthn'");"
Set-AdfsRelyingPartyTrust –TargetRelyingParty $rp –AdditionalAuthenticationRules $MfaClaimRule
참고 항목
<group_SID>를 AD(Active Directory) 그룹의 SID(Security Identifier) 값으로 변경해야 합니다.
전체적으로 사용자의 그룹 구성원 자격 데이터를 기반으로 MFA를 구성 하려면
- 페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
$MfaClaimRule = "c:[Type == '" https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid'", Value == '"group_SID'"]
=> issue(Type = '"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod'", Value = '"https://schemas.microsoft.com/claims/multipleauthn'");"
Set-AdfsAdditionalAuthenticationRule $MfaClaimRule
참고 항목
<group_SID>를 AD 그룹의 SID 값으로 변경해야 합니다.
사용자 위치에 따라 전역적으로 MFA를 구성하려면 다음을 따릅니다.
- 페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
$MfaClaimRule = "c:[Type == '" https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork'", Value == '"true_or_false'"]
=> issue(Type = '"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod'", Value = '"https://schemas.microsoft.com/claims/multipleauthn'");"
Set-AdfsAdditionalAuthenticationRule $MfaClaimRule
참고 항목
<true_or_false>를 true
또는 false
(으)로 변경해야 합니다. 값 엑스트라넷 또는 인트라넷에서 액세스 요청 하는 여부에 따라 특정 규칙 조건에 따라 다릅니다.
사용자의 디바이스 데이터에 따라 전역적으로 MFA를 구성하려면 다음을 따릅니다.
- 페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
$MfaClaimRule = "c:[Type == '" https://schemas.microsoft.com/2012/01/devicecontext/claims/isregistereduser'", Value == '"true_or_false"']
=> issue(Type = '"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod'", Value = '"https://schemas.microsoft.com/claims/multipleauthn'");"
Set-AdfsAdditionalAuthenticationRule $MfaClaimRule
참고 항목
<true_or_false>를 true
또는 false
(으)로 변경해야 합니다. 값은 디바이스의 작업 공간 연결 여부를 기반으로 한 특정 규칙 조건에 따라 달라집니다.
액세스 요청이 엑스트라넷과 작업 공간에 연결되어 있지 않은 디바이스에서 확인되는 경우 전역적으로 MFA를 구성하려면 다음을 따릅니다.
- 페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
`Set-AdfsAdditionalAuthenticationRule "c:[Type == '"https://schemas.microsoft.com/2012/01/devicecontext/claims/isregistereduser'", Value == '"true_or_false'"] && c2:[Type == '"https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork'", Value == '" true_or_false '"] => issue(Type = '"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod'", Value ='"https://schemas.microsoft.com/claims/multipleauthn'");" `
참고 항목
특정 규칙 조건에 따라 <true_or_false>의 양 인스턴스를 true
또는 false
(으)로 변경해야 합니다. 규칙 조건은 디바이스의 작업 공간 연결 여부와 액세스 요청이 엑스트라넷 또는 인트라넷에서 오는지에 따라 결정됩니다.
액세스는 엑스트라넷에 속한 사용자가 특정 그룹에서 제공 되는 경우 MFA를 전역적으로 구성 하려면
- 페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
Set-AdfsAdditionalAuthenticationRule "c:[Type == `"https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid`", Value == `"group_SID`"] && c2:[Type == `"https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork`", Value== `"true_or_false`"] => issue(Type = `"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod`", Value =`"https://schemas.microsoft.com/claims/
참고 항목
특정 규칙 조건에 따라 액세스 요청이 엑스트라넷 또는 인트라넷에서 오는지를 기반으로 <group_SID>은 그룹 SID의 값으로 <true_or_false>은 true
또는 false
로 변경해야 합니다.
Windows PowerShell을 통해 사용자 데이터를 기반으로 하는 애플리케이션에 대 한 액세스 권한을 부여 하려면
페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
$rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust
참고 항목
<relying_party_trust>를 신뢰 당사자 트러스트의 값으로 변경해야 합니다.
동일한 Windows PowerShell 명령 창에서 다음 명령을 실행 합니다.
$GroupAuthzRule = "@RuleTemplate = `"Authorization`" @RuleName = `"Foo`" c:[Type == `"https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid`", Value =~ `"^(?i)<group_SID>$`"] =>issue(Type = `"https://schemas.microsoft.com/authorization/claims/deny`", Value = `"DenyUsersWithClaim`");" Set-AdfsRelyingPartyTrust –TargetRelyingParty $rp –IssuanceAuthorizationRules $GroupAuthzRule
참고 항목
<group_SID>를 AD 그룹의 SID 값으로 변경해야 합니다.
이 사용자의 ID가 MFA로 유효성이 검사된 경우에만 AD FS로 보호되는 애플리케이션에 대한 액세스 권한을 부여하려면 다음을 따릅니다.
- 페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
`$rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust `
참고 항목
<relying_party_trust>를 신뢰 당사자 트러스트의 값으로 변경해야 합니다.
동일한 Windows PowerShell 명령 창에서 다음 명령을 실행 합니다.
$GroupAuthzRule = "@RuleTemplate = `"Authorization`" @RuleName = `"PermitAccessWithMFA`" c:[Type == `"https://schemas.microsoft.com/claims/authnmethodsreferences`", Value =~ `"^(?i)https://schemas\.microsoft\.com/claims/multipleauthn$`"] => issue(Type = `"https://schemas.microsoft.com/authorization/claims/permit`", Value = '"PermitUsersWithClaim'");"
사용자에게 등록되어 있는 작업 공간 연결 디바이스에서 액세스가 요청된 경우에만 AD FS로 보호되는 애플리케이션에 대한 액세스를 허용하려면 다음을 따릅니다.
페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
$rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust
참고 항목
<relying_party_trust>를 신뢰 당사자 트러스트의 값으로 변경해야 합니다.
- 동일한 Windows PowerShell 명령 창에서 다음 명령을 실행 합니다.
$GroupAuthzRule = "@RuleTemplate = `"Authorization`"
@RuleName = `"PermitAccessFromRegisteredWorkplaceJoinedDevice`"
c:[Type == `"https://schemas.microsoft.com/2012/01/devicecontext/claims/isregistereduser`", Value =~ `"^(?i)true$`"] => issue(Type = `"https://schemas.microsoft.com/authorization/claims/permit`", Value = `"PermitUsersWithClaim`");
MFA를 사용하여 ID의 유효성을 확인한 사용자에게 등록되어 있는 작업 공간 연결 디바이스에서 액세스가 요청된 경우에만 AD FS로 보호되는 애플리케이션에 대한 액세스를 허용하려면 다음을 따릅니다.
- 페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
`$rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust `
참고 항목
<relying_party_trust>를 신뢰 당사자 트러스트의 값으로 변경해야 합니다.
동일한 Windows PowerShell 명령 창에서 다음 명령을 실행 합니다.
$GroupAuthzRule = '@RuleTemplate = "Authorization" @RuleName = "RequireMFAOnRegisteredWorkplaceJoinedDevice" c1:[Type == `"https://schemas.microsoft.com/claims/authnmethodsreferences`", Value =~ `"^(?i)http://schemas\.microsoft\.com/claims/multipleauthn$`"] && c2:[Type == `"https://schemas.microsoft.com/2012/01/devicecontext/claims/isregistereduser`", Value =~ `"^(?i)true$"] => issue(Type = "https://schemas.microsoft.com/authorization/claims/permit`", Value = `"PermitUsersWithClaim`");"
Mfa id 유효성을 확인 된 사용자 로부터 액세스 요청 하는 경우에 AD FS에서 보호 되는 애플리케이션에 대 한 엑스트라넷 액세스 권한을 부여 하려면
- 페더레이션 서버에서 Windows PowerShell 명령 창을 열고 다음 명령을 실행 합니다.
`$rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust`
참고 항목
<relying_party_trust>를 신뢰 당사자 트러스트의 값으로 변경해야 합니다.
- 동일한 Windows PowerShell 명령 창에서 다음 명령을 실행 합니다.
$GroupAuthzRule = "@RuleTemplate = `"Authorization`"
@RuleName = `"RequireMFAForExtranetAccess`"
c1:[Type == `"https://schemas.microsoft.com/claims/authnmethodsreferences`", Value =~ `"^(?i)http://schemas\.microsoft\.com/claims/multipleauthn$`"] &&
c2:[Type == `"https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork`", Value =~ `"^(?i)false$`"] => issue(Type = `"https://schemas.microsoft.com/authorization/claims/permit`", Value = `"PermitUsersWithClaim`");"