Windows Server 2012 R2 및 Windows Server 2012 AD FS의 액세스 제어 정책
이 문서에 설명된 정책은 두 종류의 클레임을 사용합니다
AD FS 클레임은 AD FS 및 웹 애플리케이션 프록시가 검사하고 확인할 수 있는 정보(예: AD FS 또는 WAP에 직접 연결하는 클라이언트의 IP 주소)를 기반으로 생성됩니다.
AD FS 클레임은 클라이언트가 HTTP 헤더 형식으로 AD FS에 전달한 정보를 기반으로 생성됩니다
중요: 아래에 설명된 정책은 다음 추가 엔드포인트에 액세스해야 하는 Windows 10 도메인 가입 및 로그온 시나리오를 차단합니다.
Windows 10 도메인 가입 및 로그온에 필요한 AD FS 엔드포인트
- [페더레이션 서비스 이름]/adfs/services/trust/2005/windowstransport
- [페더레이션 서비스 이름]/adfs/services/trust/13/windowstransport
- [페더레이션 서비스 이름]/adfs/services/trust/2005/usernamemixed
- [페더레이션 서비스 이름]/adfs/services/trust/13/usernamemixed
- [페더레이션 서비스 이름]/adfs/services/trust/2005/certificatemixed
- [페더레이션 서비스 이름]/adfs/services/trust/13/certificatemixed
중요: /adfs/services/trust/2005/windowstransport 및 /adfs/services/trust/13/windowstransport 엔드포인트는 HTTPS에서 WIA 바인딩을 사용하는 인트라넷 연결 엔드포인트이기 때문에 인트라넷 액세스에만 사용하도록 설정해야 합니다. 엑스트라넷에 노출하면 해당 엔드포인트에 대한 요청이 잠금 보호를 무시할 수 있습니다. AD 계정 잠금을 보호하려면 프록시(예: 엑스트라넷에서 사용하지 않도록 설정)에서 해당 엔드포인트를 사용하지 않도록 설정해야 합니다.
이를 해결하려면, 엔드포인트 클레임에 따라 거부되는 정책을 업데이트하여 위의 엔드포인트에 대한 예외를 허용합니다.
예를 들어, 규칙은 다음과 같습니다.
c1:[Type == "http://custom/ipoutsiderange", Value == "true"] && c2:[Type == "https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-endpoint-absolute-path", Value != "/adfs/ls/"] => issue(Type = "https://schemas.microsoft.com/authorization/claims/deny", Value = " DenyUsersWithClaim");
위 규칙은 다음과 같이 업데이트됩니다.
c1:[Type == "http://custom/ipoutsiderange", Value == "true"] && c2:[Type == "https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-endpoint-absolute-path", Value != "(/adfs/ls/)|(/adfs/services/trust/2005/windowstransport)|(/adfs/services/trust/13/windowstransport)|(/adfs/services/trust/2005/usernamemixed)|(/adfs/services/trust/13/usernamemixed)|(/adfs/services/trust/2005/certificatemixed)|(/adfs/services/trust/13/certificatemixed)"] => issue(Type = "https://schemas.microsoft.com/authorization/claims/deny", Value = " DenyUsersWithClaim");
참고 항목
이 범주의 클레임은 네트워크 액세스를 보호하기 위한 보안 정책이 아닌, 비즈니스 정책을 구현하는 데만 사용해야 합니다. 권한이 없는 클라이언트가 액세스 권한을 얻기 위한 방법으로 잘못된 정보가 포함된 헤더를 보낼 수 있습니다.
이 문서에 설명된 정책은 항상 사용자 이름, 암호 또는 다단계 인증 등의 다른 인증 방법과 함께 사용해야 합니다.
클라이언트 액세스 정책 시나리오
시나리오 | 설명 |
---|---|
시나리오 1: Office 365에 대한 모든 외부 액세스 차단 | Office 365 액세스는 내부 회사 네트워크의 모든 클라이언트에서 허용되지만, 외부 클라이언트의 요청은 외부 클라이언트의 IP 주소에 따라 거부됩니다. |
시나리오 2: Exchange ActiveSync를 제외하고 Office 365에 대한 모든 외부 액세스 차단 | Office 365 액세스는 Exchange ActiveSync를 사용하는 스마트폰 등의 외부 클라이언트 장치뿐만 아니라 내부 회사 네트워크의 모든 클라이언트에서 허용됩니다. Outlook을 사용하는 클라이언트 등의 다른 모든 외부 클라이언트는 차단됩니다. |
시나리오 3: 브라우저 기반 애플리케이션을 제외하고 Office 365에 대한 모든 외부 액세스 차단 | Office 365에 대한 외부 액세스를 차단합니다(Outlook Web Access 또는 SharePoint Online 등의 수동(브라우저 기반) 애플리케이션 제외). |
시나리오 4: 지정된 Active Directory 그룹을 제외하고 Office 365에 대한 모든 외부 액세스 차단 | 이 시나리오는 클라이언트 액세스 정책 배포를 테스트하고 유효성을 검사하는 데 사용됩니다. 하나 이상의 Active Directory 그룹 멤버에게만 Office 365에 대한 외부 액세스를 차단합니다. 그룹 멤버에게만 외부 액세스를 제공하는 데 사용할 수도 있습니다. |
클라이언트 액세스 정책 사용
Windows Server 2012 R2의 AD FS에서 클라이언트 액세스 정책을 사용하도록 설정하려면, Microsoft Office 365 ID 플랫폼 신뢰 당사자 트러스트를 업데이트해야 합니다. 아래 예제 시나리오 중 하나를 선택하여, 조직의 요구 사항을 가장 잘 충족하는 Microsoft Office 365 ID 플랫폼 신뢰 당사자 트러스트에서 클레임 규칙을 구성합니다.
시나리오 1: Office 365에 대한 모든 외부 액세스 차단
이 클라이언트 액세스 정책 시나리오는 모든 내부 클라이언트에서 액세스를 허용하고 외부 클라이언트의 IP 주소를 기반으로 모든 외부 클라이언트를 차단합니다. 다음 절차를 사용하여 선택한 시나리오에 대한 올바른 발급 권한 부여 규칙을 Office 365 신뢰 당사자 트러스트에 추가할 수 있습니다.
Office 365에 대한 모든 외부 액세스를 차단하는 규칙 생성 방법
서버 관리자에서 도구를 클릭한 후, AD FS 관리를 클릭합니다.
콘솔 트리의 AD FS\Trust 관계에서 신뢰 당사자 트러스트를 클릭하고 Microsoft Office 365 ID 플랫폼 트러스트를 마우스 오른쪽 클릭한 후, 클레임 규칙 편집을 클릭합니다.
클레임 규칙 편집 대화 상자에서 발급 권한 부여 규칙 탭을 선택한 후, 규칙 추가를 클릭하여 클레임 규칙 마법사를 시작합니다.
규칙 템플릿 선택 페이지의 클레임 규칙 템플릿에서 사용자 지정 규칙을 사용하여 클레임 보내기를 선택한 후, 다음을 클릭합니다.
규칙 구성 페이지의 클레임 규칙 이름에서 이 규칙의 표시 이름(예: "IP 클레임이 원하는 범위 밖에 있는 경우, 거부")을 입력합니다. 사용자 지정 규칙에서 다음 클레임 규칙 언어 구문을 입력하거나 붙여 넣습니다(위의 "x-ms-forwarded-client-ip" 값을 유효한 IP 식으로 변경):
c1:[Type == "https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork", Value == "false"] && c2:[Type == "https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-forwarded-client-ip", Value =~ "^(?!192\.168\.1\.77|10\.83\.118\.23)"] => issue(Type = "https://schemas.microsoft.com/authorization/claims/deny", Value = " DenyUsersWithClaim");
Finish를 클릭합니다. 발급 권한 부여 규칙 목록에서 모든 사용자에게 액세스 허용 기본 규칙 이전에 새 규칙이 표시되는지 확인합니다(거부 규칙은 목록 앞부분에 표시되더라도 우선 적용됩니다). 기본 허용 액세스 규칙이 없는 경우, 다음과 같이 클레임 규칙 언어를 사용하여 목록 끝에 규칙을 추가할 수 있습니다.
c:[] => issue(Type = "https://schemas.microsoft.com/authorization/claims/permit", Value = "true");
새 규칙을 저장하려면, 클레임 규칙 편집 대화 상자에서 확인을 클릭합니다. 결과 목록은 다음과 같이 표시됩니다.
시나리오 2: Exchange ActiveSync를 제외하고 Office 365에 대한 모든 외부 액세스 차단
다음 예제에서는 Outlook을 포함한 내부 클라이언트에서 Exchange Online 등의 모든 Office 365 애플리케이션에 액세스할 수 있습니다. 스마트폰 등의 Exchange ActiveSync 클라이언트를 제외하고 클라이언트 IP 주소로 표시된 대로 회사 네트워크 외부에 있는 클라이언트의 액세스를 차단합니다.
Exchange ActiveSync를 제외하고 Office 365에 대한 모든 외부 액세스를 차단하는 규칙 생성
서버 관리자에서 도구를 클릭한 후, AD FS 관리를 클릭합니다.
콘솔 트리의 AD FS\Trust 관계에서 신뢰 당사자 트러스트를 클릭하고 Microsoft Office 365 ID 플랫폼 트러스트를 마우스 오른쪽 클릭한 후, 클레임 규칙 편집을 클릭합니다.
클레임 규칙 편집 대화 상자에서 발급 권한 부여 규칙 탭을 선택한 후, 규칙 추가를 클릭하여 클레임 규칙 마법사를 시작합니다.
규칙 템플릿 선택 페이지의 클레임 규칙 템플릿에서 사용자 지정 규칙을 사용하여 클레임 보내기를 선택한 후, 다음을 클릭합니다.
규칙 구성 페이지의 클레임 규칙 이름에서 이 규칙의 표시 이름(예: "IP 클레임이 원하는 범위 밖에 있는 경우, ipoutsiderange 클레임 발급")을 입력합니다. 사용자 지정 규칙에서 다음 클레임 규칙 언어 구문을 입력하거나 붙여 넣습니다(위의 "x-ms-forwarded-client-ip" 값을 유효한 IP 식으로 변경):
c1:[Type == "https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork", Value == "false"] && c2:[Type == "https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-forwarded-client-ip", Value =~ "^(?!192\.168\.1\.77|10\.83\.118\.23)"] => issue(Type = "http://custom/ipoutsiderange", Value = "true");
Finish를 클릭합니다. 발급 권한 부여 규칙 목록에 새 규칙이 표시되는지 확인합니다.
그런 다음, 클레임 규칙 편집 대화 상자의 발급 권한 부여 규칙 탭에서 규칙 추가를 클릭하여 클레임 규칙 마법사를 다시 시작합니다.
규칙 템플릿 선택 페이지의 클레임 규칙 템플릿에서 사용자 지정 규칙을 사용하여 클레임 보내기를 선택한 후, 다음을 클릭합니다.
규칙 구성 페이지의 클레임 규칙 이름에서 이 규칙의 표시 이름(예: "IP 클레임이 원하는 범위 밖에 있으며 비 EAS x-ms-client-application 클레임이 있는 경우, 거부")을 입력합니다. 사용자 지정 규칙에서 다음 클레임 규칙 언어 구문을 입력하거나 붙여 넣습니다.
c1:[Type == "http://custom/ipoutsiderange", Value == "true"] && c2:[Type == "https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-client-application", Value != "Microsoft.Exchange.ActiveSync"] => issue(Type = "https://schemas.microsoft.com/authorization/claims/deny", Value = "DenyUsersWithClaim");
Finish를 클릭합니다. 발급 권한 부여 규칙 목록에 새 규칙이 표시되는지 확인합니다.
그런 다음, 클레임 규칙 편집 대화 상자의 발급 권한 부여 규칙 탭에서 규칙 추가를 클릭하여 클레임 규칙 마법사를 다시 시작합니다.
규칙 템플릿 선택 페이지의 클레임 규칙 템플릿에서 사용자 지정 규칙을 사용하여 클레임 보내기를 선택한 후, 다음을 클릭합니다.
규칙 구성 페이지의 클레임 규칙 이름에서 이 규칙의 표시 이름(예: "애플리케이션 클레임이 있는지 확인")을 입력합니다. 사용자 지정 규칙에서 다음 클레임 규칙 언어 구문을 입력하거나 붙여 넣습니다.
NOT EXISTS([Type == "https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-client-application"]) => add(Type = "http://custom/xmsapplication", Value = "fail");
Finish를 클릭합니다. 발급 권한 부여 규칙 목록에 새 규칙이 표시되는지 확인합니다.
그런 다음, 클레임 규칙 편집 대화 상자의 발급 권한 부여 규칙 탭에서 규칙 추가를 클릭하여 클레임 규칙 마법사를 다시 시작합니다.
규칙 템플릿 선택 페이지의 클레임 규칙 템플릿에서 사용자 지정 규칙을 사용하여 클레임 보내기를 선택한 후, 다음을 클릭합니다.
규칙 구성 페이지의 클레임 규칙 이름에서 이 규칙의 표시 이름(예: "ipoutsiderange true 및 애플리케이션 실패 사용자 거부")을 입력합니다. 사용자 지정 규칙에서 다음 클레임 규칙 언어 구문을 입력하거나 붙여 넣습니다.
c1:[Type == "http://custom/ipoutsiderange", Value == "true"] && c2:[Type == "http://custom/xmsapplication", Value == "fail"] => issue(Type = "https://schemas.microsoft.com/authorization/claims/deny", Value = "DenyUsersWithClaim");
Finish를 클릭합니다. 발급 권한 부여 규칙 목록에서 이전 규칙 바로 아래 및 모든 사용자에게 액세스 허용 기본 규칙 이전에 새 규칙이 표시되는지 확인합니다(거부 규칙은 목록 앞부분에 표시되더라도 우선 적용됩니다).
기본 허용 액세스 규칙이 없는 경우, 다음과 같이 클레임 규칙 언어를 사용하여 목록 끝에 규칙을 추가할 수 있습니다.
c:[] => issue(Type = "https://schemas.microsoft.com/authorization/claims/permit", Value = "true");
새 규칙을 저장하려면, 클레임 규칙 편집 대화 상자에서 확인을 클릭합니다. 결과 목록은 다음과 같이 표시됩니다.
시나리오 3: 브라우저 기반 애플리케이션을 제외하고 Office 365에 대한 모든 외부 액세스 차단
브라우저 기반 애플리케이션을 제외하고 Office 365에 대한 모든 외부 액세스를 차단하는 규칙 생성
서버 관리자에서 도구를 클릭한 후, AD FS 관리를 클릭합니다.
콘솔 트리의 AD FS\Trust 관계에서 신뢰 당사자 트러스트를 클릭하고 Microsoft Office 365 ID 플랫폼 트러스트를 마우스 오른쪽 클릭한 후, 클레임 규칙 편집을 클릭합니다.
클레임 규칙 편집 대화 상자에서 발급 권한 부여 규칙 탭을 선택한 후, 규칙 추가를 클릭하여 클레임 규칙 마법사를 시작합니다.
규칙 템플릿 선택 페이지의 클레임 규칙 템플릿에서 사용자 지정 규칙을 사용하여 클레임 보내기를 선택한 후, 다음을 클릭합니다.
규칙 구성 페이지의 클레임 규칙 이름에서 이 규칙의 표시 이름(예: "IP 클레임이 원하는 범위 밖에 있는 경우, ipoutsiderange 클레임 발급")을 입력합니다. 사용자 지정 규칙에서 다음 클레임 규칙 언어 구문을 입력하거나 붙여 넣습니다(위의 "x-ms-forwarded-client-ip" 값을 유효한 IP 식으로 변경):
c1:[Type == "https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork", Value == "false"] && c2:[Type == "https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-forwarded-client-ip", Value =~ "^(?!192\.168\.1\.77|10\.83\.118\.23)"] => issue(Type = "http://custom/ipoutsiderange", Value = "true");
Finish를 클릭합니다. 발급 권한 부여 규칙 목록에 새 규칙이 표시되는지 확인합니다.
그런 다음, 클레임 규칙 편집 대화 상자의 발급 권한 부여 규칙 탭에서 규칙 추가를 클릭하여 클레임 규칙 마법사를 다시 시작합니다.
규칙 템플릿 선택 페이지의 클레임 규칙 템플릿에서 사용자 지정 규칙을 사용하여 클레임 보내기를 선택한 후, 다음을 클릭합니다.
규칙 구성 페이지의 클레임 규칙 이름에서 이 규칙의 표시 이름(예: "IP 클레임이 원하는 범위 밖에 있으며 엔드포인트가 /adfs/ls가 아닌 경우, 거부")를 입력합니다. 사용자 지정 규칙에서 다음 클레임 규칙 언어 구문을 입력하거나 붙여 넣습니다.
c1:[Type == "http://custom/ipoutsiderange", Value == "true"] && c2:[Type == "https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-endpoint-absolute-path", Value != "/adfs/ls/"] => issue(Type = "https://schemas.microsoft.com/authorization/claims/deny", Value = " DenyUsersWithClaim");`
Finish를 클릭합니다. 발급 권한 부여 규칙 목록에서 모든 사용자에게 액세스 허용 기본 규칙 이전에 새 규칙이 표시되는지 확인합니다(거부 규칙은 목록 앞부분에 표시되더라도 우선 적용됩니다).
기본 허용 액세스 규칙이 없는 경우, 다음과 같이 클레임 규칙 언어를 사용하여 목록 끝에 규칙을 추가할 수 있습니다.
c:[] => issue(Type = "https://schemas.microsoft.com/authorization/claims/permit", Value = "true");
새 규칙을 저장하려면, 클레임 규칙 편집 대화 상자에서 확인을 클릭합니다. 결과 목록은 다음과 같이 표시됩니다.
시나리오 4: 지정된 Active Directory 그룹을 제외하고 Office 365에 대한 모든 외부 액세스 차단
다음 예제에서는 IP 주소를 기반으로 내부 클라이언트에서 액세스할 수 있습니다. 지정된 Active Directory 그룹의 개인을 제외하고 외부 클라이언트 IP 주소가 있는 회사 네트워크 외부의 클라이언트 액세스를 차단합니다. 다음 단계의 클레임 규칙 마법사를 사용하여 Microsoft Office 365 ID 플랫폼 신뢰 당사자 트러스트에 올바른 발급 권한 부여 규칙을 추가합니다.
지정된 Active Directory 그룹을 제외하고 Office 365에 대한 모든 외부 액세스를 차단하는 규칙 생성
서버 관리자에서 도구를 클릭한 후, AD FS 관리를 클릭합니다.
콘솔 트리의 AD FS\Trust 관계에서 신뢰 당사자 트러스트를 클릭하고 Microsoft Office 365 ID 플랫폼 트러스트를 마우스 오른쪽 클릭한 후, 클레임 규칙 편집을 클릭합니다.
클레임 규칙 편집 대화 상자에서 발급 권한 부여 규칙 탭을 선택한 후, 규칙 추가를 클릭하여 클레임 규칙 마법사를 시작합니다.
규칙 템플릿 선택 페이지의 클레임 규칙 템플릿에서 사용자 지정 규칙을 사용하여 클레임 보내기를 선택한 후, 다음을 클릭합니다.
규칙 구성 페이지의 클레임 규칙 이름에서 이 규칙의 표시 이름(예: "IP 클레임이 원하는 범위 밖에 있는 경우, ipoutsiderange 클레임 발급")을 입력합니다. 사용자 지정 규칙에서 다음 클레임 규칙 언어 구문을 입력하거나 붙여 넣습니다(위의 "x-ms-forwarded-client-ip" 값을 유효한 IP 식으로 변경):
`c1:[Type == "https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-forwarded-client-ip", Value =~ "^(?!192\.168\.1\.77|10\.83\.118\.23)"] && c2:[Type == "https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork", Value == "false"] => issue(Type = "http://custom/ipoutsiderange", Value = "true");`
Finish를 클릭합니다. 발급 권한 부여 규칙 목록에 새 규칙이 표시되는지 확인합니다.
그런 다음, 클레임 규칙 편집 대화 상자의 발급 권한 부여 규칙 탭에서 규칙 추가를 클릭하여 클레임 규칙 마법사를 다시 시작합니다.
규칙 템플릿 선택 페이지의 클레임 규칙 템플릿에서 사용자 지정 규칙을 사용하여 클레임 보내기를 선택한 후, 다음을 클릭합니다.
규칙 구성 페이지의 클레임 규칙 이름에서 이 규칙의 표시 이름(예: "그룹 SID 확인")을 입력합니다. 사용자 지정 규칙에서 다음 클레임 규칙 언어 구문을 입력하거나 붙여 넣습니다("groupsid"를 사용 중인 AD 그룹의 실제 SID로 변경):
NOT EXISTS([Type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid", Value == "S-1-5-32-100"]) => add(Type = "http://custom/groupsid", Value = "fail");
Finish를 클릭합니다. 발급 권한 부여 규칙 목록에 새 규칙이 표시되는지 확인합니다.
그런 다음, 클레임 규칙 편집 대화 상자의 발급 권한 부여 규칙 탭에서 규칙 추가를 클릭하여 클레임 규칙 마법사를 다시 시작합니다.
규칙 템플릿 선택 페이지의 클레임 규칙 템플릿에서 사용자 지정 규칙을 사용하여 클레임 보내기를 선택한 후, 다음을 클릭합니다.
규칙 구성 페이지의 클레임 규칙 이름에서 이 규칙의 표시 이름(예: "ipoutsiderange true 및 groupsid 실패 사용자 거부")을 입력합니다. 사용자 지정 규칙에서 다음 클레임 규칙 언어 구문을 입력하거나 붙여 넣습니다.
c1:[Type == "http://custom/ipoutsiderange", Value == "true"] && c2:[Type == "http://custom/groupsid", Value == "fail"] => issue(Type = "https://schemas.microsoft.com/authorization/claims/deny", Value = "DenyUsersWithClaim");
- Finish를 클릭합니다. 발급 권한 부여 규칙 목록에서 이전 규칙 바로 아래 및 모든 사용자에게 액세스 허용 기본 규칙 이전에 새 규칙이 표시되는지 확인합니다(거부 규칙은 목록 앞부분에 표시되더라도 우선 적용됩니다).
기본 허용 액세스 규칙이 없는 경우, 다음과 같이 클레임 규칙 언어를 사용하여 목록 끝에 규칙을 추가할 수 있습니다.
c:[] => issue(Type = "https://schemas.microsoft.com/authorization/claims/permit", Value = "true");
새 규칙을 저장하려면, 클레임 규칙 편집 대화 상자에서 확인을 클릭합니다. 결과 목록은 다음과 같이 표시됩니다.
IP 주소 범위 식 빌드
이 x-ms-forwarded-client-ip 클레임은 현재 Exchange Online에서만 설정된 HTTP 헤더에서 채워지며, AD FS에 인증 요청을 전달할 때 헤더를 채웁니다. 클레임 값은 다음 중 하나일 수 있습니다.
참고 항목
Exchange Online은 현재 IPv4 주소만 지원하며, IPv6 주소를 지원하지 않습니다.
- 단일 IP 주소: Exchange Online에 직접 연결된 클라이언트의 IP 주소
참고 항목
- 회사 네트워크에 있는 클라이언트의 IP 주소는 조직의 아웃바운드 프록시 또는 게이트웨이의 외부 인터페이스 IP 주소로 표시됩니다.
- VPN 또는 DA(Microsoft DirectAccess)를 통해 회사 네트워크에 연결된 클라이언트는 VPN 또는 DA 구성에 따라 내부 회사 클라이언트 또는 외부 클라이언트로 표시될 수 있습니다.
- 하나 이상의 IP 주소: Exchange Online에서 연결 클라이언트의 IP 주소를 확인할 수 없는 경우, HTTP 기반 요청에 포함될 수 있으며 시장의 많은 클라이언트, 부하 분산 장치 및 프록시에서 지원되는 비표준 헤더인 x-forwarded-for 헤더의 값을 기반으로 값을 설정합니다.
참고 항목
- 클라이언트 IP 주소 및 요청을 전달한 각 프록시의 주소를 나타내는 여러 IP 주소는 쉼표로 구분됩니다.
- Exchange Online 인프라와 관련된 IP 주소는 목록에 표시되지 않습니다
정규식
IP 주소 범위를 일치해야 하는 경우, 비교를 수행하기 위해 정규식을 생성해야 합니다. 다음 일련의 단계에서는 다음 주소 범위와 일치하도록 식을 생성하는 방법에 대한 예제를 제공합니다(공용 IP 범위와 일치하도록 해당 예제를 변경해야 함).
192.168.1.1 – 192.168.1.25
10.0.0.1 – 10.0.0.14
먼저, 단일 IP 주소와 일치하는 기본 패턴은 다음과 같습니다. \b###\.####\.##\.#\.###\b
이를 확장하면 서로 다른 두 개의 IP 주소를 OR 식과 일치시킬 수 있습니다. \b###\.###\.###\.###\b|\b###\.###\.###\.###\b
따라서 두 개의 주소(예: 192.168.1.1 또는 10.0.0.1)와 일치하는 예제는 \b192\.168\.1\.1\b|\b10\.0\.0\.1\b입니다.
이를 통해 주소를 원하는 수만큼 입력할 수 있는 기술을 사용할 수 있습니다. 주소 범위가 허용되어야 하는 경우(예: 192.168.1.1 – 192.168.1.25) 일치하는 예제는 문자별로 수행해야 합니다. \b192\.168\.1\.([1-9]|1[0-9]|2[0-5])\b
다음 사항에 유의하세요.
IP 주소는 숫자가 아닌 문자열로 처리됩니다.
규칙은 다음과 같이 세분화됩니다. \b192\.168\.1\.
192.168.1로 시작하는 모든 값과 일치합니다.
다음은 주소의 마지막 소수점 이후 부분에 필요한 범위와 일치합니다.
([1-9] 1-9로 끝나는 주소와 일치
|1[0-9] 10-19로 끝나는 주소와 일치
|2[0-5]) 20-25로 끝나는 주소와 일치
IP 주소의 다른 부분과 일치하지 않도록 괄호를 올바르게 배치해야 합니다.
192 블록이 일치하면 10 블록과 유사한 식을 작성할 수 있습니다. \b10\.0\.0\.([1-9]|1[0-4])\b
이를 종합하면, 다음 식은 "192.168.1.1~25" 및 "10.0.0.1~14"의 모든 주소와 일치해야 합니다. \b192\.168\.1\.([1-9]|1[0-9]|2[0-5])\b|\b10\.0\.0\.([1-9]|1[0-4])\b
표현식 테스트
정규식 식은 매우 까다로울 수 있으므로 정규식 확인 도구를 사용하는 것이 좋습니다. "온라인 정규식 작성기"에 대한 인터넷 검색을 수행하는 경우, 샘플 데이터에 대해 식을 사용해 볼 수 있는 다양하고 유용한 온라인 유틸리티를 찾을 수 있습니다.
표현식을 테스트할 때 일치해야 할 항목을 이해하는 것이 중요합니다. Exchange Online 시스템은 쉼표로 구분된 많은 IP 주소를 보낼 수 있습니다. 위에 제공된 표현식이 이 작업에 대해 작동합니다. 그러나 정규식을 테스트할 때는 이를 고려해야 합니다. 예를 들어 다음의 샘플 입력을 사용하여 위의 예제를 확인할 수 있습니다.
192.168.1.1, 192.168.1.2, 192.169.1.1. 192.168.12.1, 192.168.1.10, 192.168.1.25, 192.168.1.26, 192.168.1.30, 1192.168.1.20
10.0.0.1, 10.0.0.5, 10.0.0.10, 10.0.1.0, 10.0.1.1, 110.0.0.1, 10.0.0.14, 10.0.0.15, 10.0.0.10, 10,0.0.1
클레임 유형
Windows Server 2012 R2의 AD FS는 다음 클레임 유형을 사용하여 요청 컨텍스트 정보를 제공합니다.
X-MS-Forwarded-Client-IP
클레임 형식: https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-forwarded-client-ip
이 AD FS 클레임은 요청하는 사용자의 IP 주소(예: Outlook 클라이언트)를 확인하기 위한 "최선의 시도"를 나타냅니다. 이 클레임에는 요청을 전달한 모든 프록시의 주소를 포함한 여러 IP 주소가 포함될 수 있습니다. 이 클레임은 HTTP에서 채워집니다. 클레임 값은 다음 중 하나일 수 있습니다.
- 단일 IP 주소 - Exchange Online에 직접 연결된 클라이언트의 IP 주소
참고 항목
회사 네트워크에 있는 클라이언트의 IP 주소는 조직의 아웃바운드 프록시 또는 게이트웨이의 외부 인터페이스 IP 주소로 표시됩니다.
하나 이상의 IP 주소
Exchange Online에서 연결 클라이언트의 IP 주소를 확인할 수 없는 경우, HTTP 기반 요청에 포함될 수 있으며 시장의 많은 클라이언트, 부하 분산 장치 및 프록시에서 지원되는 비표준 헤더인 x-forwarded-for 헤더의 값을 기반으로 값을 설정합니다.
클라이언트 IP 주소 및 요청을 전달한 각 프록시의 주소를 나타내는 여러 IP 주소는 쉼표로 구분됩니다.
참고 항목
Exchange Online 인프라와 관련된 IP 주소는 목록에 표시되지 않습니다
Warning
Exchange Online은 현재 IPV4 주소만 지원하며, IPV6 주소는 지원하지 않습니다.
X-MS-Client-Application
클레임 형식: https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-client-application
이 AD FS 클레임은 사용 중인 애플리케이션에 대체로 일치하는 최종 클라이언트에서 사용하는 프로토콜을 나타냅니다. 이 클레임은 현재 Exchange Online에서만 설정된 HTTP 헤더에서 채워지며, AD FS에 인증 요청을 전달할 때 헤더를 채웁니다. 애플리케이션에 따라 이 클레임의 값은 다음 중 하나로 설정됩니다.
Exchange Active Sync를 사용하는 디바이스의 경우, 값은 Microsoft.Exchange.ActiveSync입니다.
Microsoft Outlook 클라이언트를 사용하면 다음 값 중 하나로 설정될 수 있습니다.
Microsoft.Exchange.Autodiscover
Microsoft.Exchange.OfflineAddressBook
Microsoft.Exchange.RPCMicrosoft.Exchange.WebServices
Microsoft.Exchange.RPCMicrosoft.Exchange.WebServices
이 헤더에 사용할 수 있는 다른 값은 다음과 같습니다.
Microsoft.Exchange.Powershell
Microsoft.Exchange.SMTP
Microsoft.Exchange.Pop
Microsoft.Exchange.Imap
X-MS-Client-User-Agent
클레임 형식: https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-client-user-agent
이 AD FS 클레임은 클라이언트가 서비스 액세스에 사용하는 디바이스 유형을 나타내는 문자열을 제공합니다. 고객이 특정 디바이스(예: 특정 종류의 스마트폰)에 대한 액세스를 차단하려는 경우에 사용할 수 있습니다. 이 클레임의 예제 값에는 다음 값이 포함됩니다(단, 이에 국한되지 않음).
다음은 x-ms-client-application이 "Microsoft.Exchange.ActiveSync"인 클라이언트에 대해 x-ms-user-agent 값이 포함할 수 있는 항목의 예제입니다.
Vortex/1.0
Apple-iPad1C1/812.1
Apple-iPhone3C1/811.2
Apple-iPhone/704.11
Moto-DROID2/4.5.1
SAMSUNGSPHD700/100.202
Android/0.3
해당 값이 비어있을 수도 있습니다.
X-MS-Proxy
클레임 형식: https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-proxy
이 AD FS 클레임은 요청이 웹 애플리케이션 프록시를 통과했다는 것을 나타냅니다. 이 클레임은 백 엔드 페더레이션 서비스에 인증 요청을 전달할 때, 헤더를 채우는 웹 애플리케이션 프록시에서 채워집니다. 그런 다음, AD FS가 해당 요청을 클레임으로 변환합니다.
클레임 값은 요청을 전달한 웹 애플리케이션 프록시의 DNS 이름입니다.
InsideCorporateNetwork
클레임 형식: https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork
위의 x-ms-proxy 클레임 유형과 마찬가지로, 이 클레임 유형은 요청이 웹 애플리케이션 프록시를 통과했는지를 나타냅니다. x-ms-proxy와 달리, insidecorporatenetwork는 회사 네트워크 내에서 페더레이션 서비스에 대한 직접 요청을 나타내는 True 부울 값입니다.
X-MS-Endpoint-Absolute-Path(활성 및 수동)
클레임 형식: https://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-endpoint-absolute-path
이 클레임 유형은 "활성" 리치 클라이언트와 "수동" 웹 브라우저 기반 클라이언트에서 발생한 요청을 결정하는 데 사용할 수 있습니다. 이를 통해, Microsoft Outlook 등의 리치 클라이언트에서 시작된 요청을 차단하는 동안 Outlook Web Access, SharePoint Online 또는 Office 365 포털 등의 브라우저 기반 애플리케이션의 외부 요청을 허용할 수 있습니다.
클레임 값은 요청을 받은 AD FS 서비스의 이름입니다.