SASL(Simple Authentication and Security Layer)은 인터넷 프로토콜의 인증 및 데이터 보안을 위한 프레임워크입니다. 10.9부터는 ArcGIS Enterprise에서 GSS/Kerberos v5 SASL 메커니즘을 사용하여 Windows Active Directory 또는 기타 LDAP 공급자를 인증하는 수단으로 SASL 사용을 지원합니다.
사용 사례
SASL GSS 인증은 일반적으로 기관의 도메인 컨트롤러가 LDAP 서버로 인증 서명을 요구하도록 구성된 경우에 사용됩니다. 이 요구 사항은 암호화 없이 포트 389 또는 3268을 통해 LDAP 서버에 연결할 때만 적용됩니다. LDAPS가 모든 도메인 컨트롤러에서 완전히 지원되는 경우 이 서명 요구 사항은 필요하지 않습니다.
요구 사항
ArcGIS Enterprise를 사용하여 SASL 인증을 구성하려면 몇 가지 요구 사항이 충족되어야 합니다.
Kerberos 구성 파일
Portal for ArcGIS에 Kerberos 도메인 컨트롤러에 대한 정보를 함께 제공하려면 Kerberos 구성 파일이 필요합니다. 이 정보는 텍스트 파일(예시: krb5.conf)로 저장해야 합니다. Portal for ArcGIS 서비스 계정이 접근할 수 있는 위치에 텍스트 파일의 복사본을 저장해야 합니다. 여기에는 포털 설치 폴더 또는 포털 콘텐츠 디렉터리 등이 포함됩니다. 포털 콘텐츠 디렉터리의 기본 위치는 /arcgis/portal/usr입니다.
이 구성 파일은 Kerberos의 표준이며 각 Kerberos 영역에 대한 하나 이상의 Kerberos 도메인 컨트롤러 정보와 기본 구성 설정을 포함해야 합니다. 다음은 구성 파일의 예시입니다.
[libdefaults] dns_lookup_realm = false ticket_lifetime = 24h renew_lifetime = 7d forwardable = true rdns = false default_ccache_name = KEYRING:persistent:%{uid} dns_lookup_kdc = true default_realm = EXAMPLE.COM default_checksum = rsa-md5 [realms] EXAMPLE.COM = { kdc = domaincontroller.example.com admin_server = domaincontroller.example.com } [domain_realm] example.com = EXAMPLE.COM .example.com = EXAMPLE.COM
Windows 및 LDAP ID 저장소 유형에서 지원되는 새 사용자 및 그룹 저장소 등록정보
- "saslAuthenticationScheme" - LDAP를 통해 도메인 컨트롤러에 연결하기 위해 Portal for ArcGIS에서 사용되는 SASL 인증 스키마를 정의합니다. 10.9에서 GSSAPI는 유일하게 지원되는 SASL 인증 스키마입니다. 예시: "saslAuthenticationScheme": "GSSAPI"
- "krb5ConfigFilePath" - 위에서 설명한 Kerberos 구성 텍스트 파일의 경로를 정의합니다. 이 경로는 Portal for ArcGIS 서비스 계정에 대한 읽기 권한이 있는 위치에 있어야 합니다.
예시: "krb5ConfigFilePath": "/data/arcgis/krb5.conf"
Portal for ArcGIS ID 저장소 구성
SASL GSS 인증 메커니즘은 Windows 또는 LDAP ID 저장소 유형과 함께 사용할 수 있으며 포털티어 및 웹 계층 인증 모두에서 작동합니다. 여기에는 Active Directory 또는 LDAP 그룹 멤버십 유지 및 새로 고침도 포함됩니다.
LDAP 사용자 및 그룹
SASL 인증과 함께 LDAP 사용자 및 그룹을 사용하도록 Portal for ArcGIS를 구성하는 경우 "saslAuthenticationScheme" 및 "krb5ConfigFilePath" 등록정보를 모두 추가하고 "user" 등록정보에 나열된 사용자 이름 형식을 username@realm으로 변경해야 합니다. ldapURLForUsers 및 ldapURLForRoles에는 Kerberos 도메인 컨트롤러에 대한 FQDN(정규화된 도메인 이름)이 포함되어야 합니다. IP 주소는 여기에 지원되지 않습니다. 포털티어 인증이 사용되는 경우 사용자 이름이 올바른 형식이 되도록 "usernameAttribute"를 "userPrincipalName"으로 설정해야 합니다. 다음은 LDAP를 사용하는 사용자 및 그룹 저장소 구성의 예시입니다.
샘플 사용자 저장소 구성
{ "type": "LDAP", "properties": { "ldapURLForUsers": "ldap://kdc1.example.com:389/OU=users,DC=example,DC=com", "saslAuthenticationScheme": "GSSAPI", "krb5ConfigFilePath": "/data/arcgis/krb5.conf", "user": "entuser@example.com", "userPassword": "encrypted_password", "isPasswordEncrypted": "true", "usernameAttribute": "sAMAccountName", "userGivenNameAttribute": "givenName", "userSurnameAttribute": "sn", "userEmailAttribute": "mail", "caseSensitive": "false” } }
샘플 그룹 저장소 구성
{ "type": "LDAP", "properties": { "ldapURLForUsers": "ldap://kdc1.example.com:389/OU=users,DC=example,DC=com", “ldapURLForRoles”: "ldap://kdc1.example.com:389/OU=groups,DC=example,DC=com", "saslAuthenticationScheme": "GSSAPI", "krb5ConfigFilePath": "/data/arcgis/krb5.conf", "user": "entuser@example.com", "userPassword": "encrypted_password", "isPasswordEncrypted": "true", "usernameAttribute": "sAMAccountName", "caseSensitive": "false” } }
기타 고려 사항
LDAP 사용자에 대한 포털티어 인증을 사용하여 포털에 로그인하는 경우 사용자 이름 형식은 username@realm(예시: testuser@example.com)이어야 합니다.
Kerberos 도메인 컨트롤러 설정
LDAP 서버 채널 바인딩 토큰 요구 사항에 대한 도메인 컨트롤러 설정은 Java 제한 사항으로 인해 항상으로 설정할 수 없습니다. 자세한 내용은 JVM 버그 8245527을 참고하세요. 지원되는 경우 또는 안 함으로 설정해야 합니다.