Main Content

이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

User Manager 구성하기

User Manager는 Polyspace® Access 사용자 로그인의 인증을 관리합니다. 로그인 사용자 이름과 비밀번호를 User Manager 데이터베이스에 저장된 ID 자격 증명과 대조하여 로그인 인증을 수행합니다. User Manager 데이터베이스에 ID를 추가하려면 다음 중 하나를 수행하십시오.

  • 소속 회사의 LDAP(Lightweight Directory Access Protocol) 서버를 User Manager에 연결하고 LDAP 서버에서 ID를 가져옵니다. LDAP 서버와의 연결을 구성하려면 조직의 LDAP 서버를 User Manager에 연결하기 항목을 참조하십시오.

  • 사용자 지정 ID를 만듭니다. 사용자 및 그룹 관리 항목을 참조하십시오. 예를 들어, 회사 LDAP를 사용할 수 없거나 사용하기를 원치 않으면 사용자 지정 ID를 만듭니다.

Cluster Dashboard에서 Configure Apps를 클릭하여 Cluster Settings로 이동합니다. 설정을 변경할 때마다 Save를 클릭하고 Cluster Dashboard로 돌아가서 Restart Apps를 클릭하면 변경 사항을 적용하십시오. Save를 클릭하기 전에 Validate on Save를 선택하십시오.

참고

Windows® 시스템에서, 사용자가 지정하는 모든 파일 경로는 로컬 드라이브를 가리켜야 합니다.

선행 조건

User Manager 일반 설정

사용자 지정한 사용자 자격 증명을 만드는 경우와 회사 LDAP 서버에서 사용자를 가져오는 경우 모두 다음 설정을 수행해야 합니다.

설정설명
Internal directory database volume

데이터베이스 폴더의 전체 경로를 지정합니다. 데이터베이스에는 LDAP 서버에서 가져왔거나 User Manager 인터페이스에서 만든 사용자와 그룹에 대한 정보가 저장됩니다.

기본적으로 데이터베이스는 Polyspace Access 설치 이미지의 압축을 푼 폴더에서 appdata/usermanager 아래에 저장됩니다. 예: /local/usr/Access/R2023b/appdata/usermanager/db

Internal directory database username

PostgreSQL 명령을 사용하여 내부 데이터베이스와 상호 작용해야 하는 경우 이 필드에 지정한 사용자 이름을 사용합니다.

디폴트 사용자 이름은 "UM"입니다.

Internal directory database password

PostgreSQL 명령을 사용하여 내부 데이터베이스와 상호 작용해야 하는 경우 이 필드에 지정한 비밀번호를 사용합니다.

비밀번호를 제공해야 합니다.

현재 데이터베이스 비밀번호를 보려면 다음 명령을 실행하십시오.

  • Windows

    docker inspect usermanager-db-0-main | FIND "UMDB_PASSWORD"

  • Linux

    docker inspect usermanager-db-0-main | grep UMDB_PASSWORD

Administrator sign-in IDs

User Manager 관리자로 설정할 사용자의 사용자 이름을 쉼표로 구분된 목록으로 입력합니다. 사용자가 지정한 사용자 이름이나 회사 LDAP의 사용자 이름을 지정할 수 있습니다. 사용자 및 그룹 생성, 편집 또는 제거 항목을 참조하십시오.

참고

Connect an LDAP directory를 사용하는 경우에는, 이 필드에 지정하는 사용자 이름 중 적어도 하나는 LDAP 디렉터리에서 가져왔거나 아니면 User Manager 데이터베이스에 이미 존재해야 합니다. 그렇지 않으면 User Manager 인터페이스에 로그인할 수 없습니다.

이 필드에 지정하는 사용자는 Polyspace Access 관리자로도 설정됩니다. Polyspace Access 관리자에 대한 자세한 내용은 Manage Project Permissions 항목을 참조하십시오.

사용자를 Polyspace Access 관리자에서 삭제하려면 다음을 수행하십시오.

  1. 이 필드에서 해당 사용자 이름을 삭제하고 변경 사항을 저장한 다음 앱을 다시 시작합니다.

  2. 다시 시작한 후에, Polyspace Access 관리자는 Polyspace Access 웹 인터페이스에서 상황별 메뉴를 사용하여 Project Explorer의 모든 최상위 폴더에서 해당 사용자를 해제해야 합니다. 관리자는 명령줄에서 polyspace-access 바이너리에 -unset-role 플래그를 사용하여 이 작업을 수행할 수도 있습니다. 자세한 내용은 polyspace-access 항목을 참조하십시오.

Initial administrator password

User Manager 인터페이스에 로그인하는 데 사용하는 비밀번호입니다.

User Manager Directory Connection 설정에서 Connect an LDAP directory를 선택한 경우에는 이 필드를 사용할 수 없습니다.

Authentication token expiration (sec):

User Manager가 인증된 사용자에게 발급하는 서명된 JSON 웹 토큰의 유효 기간을 초 단위로 지정합니다. 이 만료 시간에 따라 세션의 수명이 결정됩니다. 사용자가 Polyspace Access에 로그인하면 사용자의 라이선스가 체크아웃되며 해당 세션은 만료되지 않도록 주기적으로 새로 고침됩니다. 사용자가 명시적으로 로그아웃하거나 웹 브라우저를 닫으면 세션이 종료되고 라이선스가 다시 체크인됩니다. 브라우저가 예기치 않게 닫힌 경우에는 세션이 만료될 때까지 라이선스의 체크아웃 상태가 유지됩니다.

만료 시간을 설정할 때는 다음을 고려하십시오.

  • 만료 시간이 너무 짧으면 자주 사용하는 사용자는 다시 로그인하라는 메시지를 자주 받게 됩니다. 팀의 규모가 크면 라이선스 서버에서 라이선스 체크인과 체크아웃이 너무 높은 빈도로 일어나게 됩니다.

  • 만료 시간이 너무 길면 자주 사용하지 않는 사용자의 세션 시간이 라이선스 로그에서 실제보다 높게 추정될 수 있습니다.

라이선싱 제한 시간을 설정하려면 이 설정을 사용하십시오. Polyspace Access는 TIMEOUT feature seconds 구문을 사용해서 라이선스 매니저 옵션 파일(MLM.opt)에 설정된 라이선스 제한 시간 값은 무시합니다.

Authentication private key file:

User Manager가 JSON 웹 토큰 서명에 사용하는 개인 키 PEM 파일의 전체 경로를 지정합니다. Windows 시스템에서 경로는 로컬 드라이브를 가리켜야 합니다.

User Manager 서비스는 비밀번호로 보호되는 개인 키를 지원하지 않습니다. openssl 유틸리티를 사용하여 개인 키를 생성할 수 있습니다. 예를 들어:

openssl genrsa -out private.pem 2048 
이 개인 키에 대한 액세스 권한을 User Manager 서비스를 관리하는 관리자로 제한하십시오.

SSL 인증서(HTTPS 프로토콜을 사용할 경우 제공함)를 생성할 때 사용하는 개인 키를 재사용하지 마십시오.

API keys and user IDs

사용자에게 API 키를 할당하려면 이 필드에 API 키 값과 사용자 이름의 쌍을 입력합니다. 예를 들어, 사용자 jsmith에게 API 키를 할당하려면 다음을 입력하십시오.

5ea34345-a03b-4a20-821e-f10e45e0e863,jsmith
다른 사용자들에게 API 키를 할당하려면 추가 API 키와 사용자 이름의 쌍을 개별 라인으로 입력하십시오. 각 API 키 값은 고유해야 합니다.

영숫자를 임의로 조합하여 사용자에게 API 키로 할당할 수 있습니다. 예를 들어, API 키의 UUID(Universally Unique Identifier)를 생성하려면 다음 명령을 사용하십시오.

  • Windows PowerShell: [guid]::NewGuid()

  • Linux®: uuidgen

Polyspace Access 자격 증명이 필요한 다음 명령에 API 키를 사용합니다.

API 키를 사용할 때는 API 키를 텍스트 파일에 저장하고 이 파일을 -credentials-file을 사용하여 명령에 전달하는 방법을 권장합니다. 예를 들어, 사용자 jsmith의 API 키를 사용하려면 다음 라인을 텍스트 파일 credentials.txt에 저장하십시오.

-api-key 5ea34345-a03b-4a20-821e-f10e45e0e863
그런 다음 이 파일을 명령에 전달합니다. 예를 들어:
polyspace-access -credentials-file credentials.txt
또는 -api-key를 사용하여 API 키를 명령줄에 직접 전달합니다.

명령은 이 API 키를 해당 사용자에 대한 로그인 자격 증명으로 사용합니다. 사용자가 비밀번호를 업데이트할 경우 관리자가 API 키를 업데이트할 필요가 없습니다. API 키를 자동화 스크립트의 일부로 사용하고 있다면 이 키와 연결된 사용자에게는 스크립트에서 모든 작업을 수행할 수 있는 권한이 있어야 합니다. Manage Project Permissions 항목을 참조하십시오.

ID를 만들거나 관리하려면 사용자 및 그룹 관리 항목을 참조하십시오.

조직의 LDAP 서버를 User Manager에 연결하기

조직의 LDAP 서버를 사용하려면 User Manager Directory Connection 설정에서 Connect an LDAP directory를 선택하고 LDAP 설정을 구성하십시오. LDAP 관리자에게 문의하여 LDAP URL, LDAP user base 및 기타 LDAP 설정과 필터를 받고 LDAP 서버가 Active Directory 글로벌 카탈로그 기능을 사용하는지 여부를 확인하십시오.

설정설명
LDAP URL

LDAP URL을 다음과 같이 입력합니다.

ldap://HOST:PORT
HOST는 LDAP 호스트이고 PORT는 LDAP 포트 번호입니다. LDAP 서버에서 글로벌 카탈로그를 사용하도록 구성한 경우 LDAP 서버는 서로 다른 디폴트 포트 번호를 사용합니다. User Manager에서 글로벌 카탈로그를 사용하는 LDAP 서버 구성하기 항목을 참조하십시오.

SSL을 통한 LDAP 서버를 구성한 경우에는 URL을 다음과 같이 입력하십시오.

ldaps://HOST:PORT
LDAPS 구성의 추가적인 단계는 User Manager에서 SSL을 통한 LDAP 구성하기 항목을 참조하십시오.

LDAP 서버와 클라이언트 간의 통신은 암호화되지 않으므로 LDAPS(SSL을 통한 LDAP)를 구성하여 사용할 것을 권장합니다.

Synchronization interval (seconds)

User Manager 데이터베이스와 LDAP 서버의 동기화 간격을 지정합니다(단위: 초). 예를 들어, User Manager 데이터베이스와 LDAP 서버를 매 30분마다 동기화하려면 1800을 지정하십시오.

수동으로 동기화하려면 User Manager 인터페이스에서 Synch With LDAP를 클릭하십시오.

LDAP username

LDAP 서버에 읽기 권한이 있는 사용자의 사용자 이름입니다. LDAP 서버에 대한 액세스가 비밀번호로 보호되지 않는 경우에는 이 필드를 비워 두십시오.

LDAP password

LDAP 서버에 읽기 권한이 있는 사용자의 비밀번호입니다. LDAP 서버에 대한 액세스가 비밀번호로 보호되지 않는 경우에는 이 필드를 비워 두십시오.

비밀번호는 settings.json 파일에 저장됩니다. 보안을 더 강화하려면 이 파일에 대한 읽기 및 쓰기 권한에 제한을 설정하십시오. 기본적으로 이 파일은 admin-docker-agent 바이너리와 동일한 폴더에 저장됩니다.

Enable LDAP pagination

LDAP 서버가 결과를 반환하는 속도를 제어하려면 이 설정을 사용하십시오. 이 설정은 일반적으로 다수의 사용자를 쿼리할 때 LDAP 서버에서 반환하는 항목 수에 제한이 있거나, 쿼리하는 클라이언트가 제한된 리소스를 가질 때 사용합니다.

이 설정을 사용하기 전에 다음을 확인하십시오.

  • LDAP 서버가 simple paged results control을 지원해야 합니다. LDAP Control Extension for Simple Paged Results Manipulation 항목을 참조하십시오.

  • LDAP usernameLDAP password를 제공하는 경우 해당 자격 증명에 대해 페이지네이션이 비활성화되어 있지 않아야 합니다. 제공한 자격 증명에 대해 페이지네이션이 비활성화된 경우 User Manager 로그에 LDAP 결과 코드 11이 표시되어야 합니다.

  • LDAP 서버가 적절한 수의 동시 페이징 쿼리를 처리하도록 구성되어 있어야 합니다. 동시 쿼리 수가 LDAP 서버 제한을 ​​초과할 경우 User Manager 로그에 LDAP 결과 코드 53이 표시되어야 합니다.

LDAP page sizeLDAP 서버가 페이지당 반환하는 결과 수를 설정합니다(예: 1000). 이 설정은 Enable LDAP pagination을 선택한 경우에만 사용할 수 있습니다.
LDAP user base

LDAP 탐색기 툴을 사용하여 이 파라미터를 가져올 수 있습니다. 예를 들어, Apache Directory Studio를 통해 LDAP 서버에 연결한 다음 연결에 대한 속성을 엽니다. Browser Options에서 Fetch Base DNs를 클릭하여 LDAP base를 가져옵니다.

LDAP user search filter

LDAP 데이터베이스에서 사용자의 서브셋을 가져오려면 이 검색 필터를 사용합니다. User Manager는 시작할 때 조직 내 모든 사용자를 불러오는 대신 이 서브셋을 불러옵니다. 인증에 더 적은 수의 사용자를 불러오면 Polyspace Access 성능이 높아집니다.

검색 필터를 attribute=value 형식으로 지정합니다. 예를 들어. CN=test*는 CN(common name) 특성이 "test"로 시작하는 모든 사용자를 찾습니다.

AND(&) 절 또는 OR(|) 절에 여러 개의 필터 표현식을 함께 사용하려면 괄호를 사용하십시오. 예를 들어, (|(CN=jdoe)(department=foo))는 CN 특성이 "jdoe"이거나 department 특성이 "foo"인 사용자를 모두 찾습니다.

디폴트 검색 필터는 objectClass=organizationalPerson입니다. 검색 필터에 대한 자세한 내용은 LDAP filters를 참조하십시오.

검색 필터가 사용자의 서브셋을 반환하고 있는지 확인하려면, 해당 서브셋에 있는 사용자 이름 하나를 API keys and user IDs 필드에 더미 키와 함께 입력하고 페이지 하단에서 Validate Now를 클릭하십시오. 해당 사용자 이름을 찾을 수 없으면 경고가 표시됩니다. 예를 들어, 필터가 jsmith를 반환하는지 확인하려면 1234,jsmith를 입력하십시오.

LDAP user ID attribute

LDAP user display name attribute

LDAP user email attribute

LDAP user image attribute

LDAP 관리자가 별도로 지침을 주지 않았다면 이 설정은 변경하지 마십시오. Polyspace Access는 LDAP email 및 image 특성을 사용하지 않습니다.

Enable LDAP groups

LDAP 서버 디렉터리에서 사용자 그룹을 가져오려면 이 설정을 사용합니다.

LDAP group base

LDAP 탐색기 툴을 사용하여 이 파라미터를 가져올 수 있습니다. 예를 들어, Apache Directory Studio를 통해 LDAP 서버에 연결한 다음 가져오려는 그룹을 검색해서 이 그룹의 속성을 엽니다.

LDAP group search filter

LDAP 데이터베이스에서 그룹의 서브셋을 가져오려면 이 검색 필터를 사용합니다. User Manager는 시작할 때 조직 내 모든 그룹을 불러오는 대신 이 서브셋을 불러옵니다. 더 적은 수의 그룹을 불러오면 Polyspace Access 성능이 높아집니다.

검색 필터를 attribute=value 형식으로 지정합니다. 예를 들어, CN=test*는 CN(common name) 특성이 "test"로 시작하는 모든 그룹을 찾습니다.

AND(&) 절 또는 OR(|) 절에 여러 개의 필터 표현식을 함께 사용하려면 괄호를 사용하십시오. 예를 들어, (|(CN=Printers)(location=US))는 CN 특성이 "Printers"이거나 location 특성이 "US"인 그룹을 모두 찾습니다.

검색 필터에 대한 자세한 내용은 LDAP filters를 참조하십시오.

LDAP group ID attribute

LDAP group display name attribute

LDAP group membership attribute

LDAP 관리자가 별도로 지침을 주지 않았다면 이 설정은 변경하지 마십시오. Polyspace Access는 LDAP display name 특성을 사용하지 않습니다.

User Manager에서 SSL을 통한 LDAP 구성하기

SSL을 통해 통신하도록 구성된 LDAP 서버(LDAPS)를 사용하는 경우 Nodes 설정의 CA File 필드에 지정한 인증서 신뢰 저장소 파일에 LDAPS SSL 인증서를 추가하십시오. 이러한 설정을 보려면 Cluster Dashboard에서 Configure Nodes를 클릭하십시오. 사용하는 신뢰 저장소 파일에 따라 LDAP SSL 인증서가 신뢰 저장소에 이미 들어 있을 수 있습니다.

인증서 신뢰 저장소 파일은 일반적으로 Cluster Admin에서 HTTPS를 구성할 때 --ssl-ca-file에 제공하는 파일에 해당합니다. Polyspace Access 구성을 HTTP와 HTTPS 중에서 선택하기 항목을 참조하십시오.

예를 들어, Linux Debian® 배포판에서 LDAP 인증서 ldaps_cert.pem을 신뢰 저장소 파일 trust_store.pem에 추가하려면 다음 명령을 사용하십시오.

cat trust_store.pem ldaps_cert.pem > combined_cert.pem
이 명령은 두 파일의 내용을 결합하여 파일 combined_cert.pem을 출력합니다. 자체 서명 인증서를 사용하여 HTTPS를 구성한 경우에는 자체 서명 인증서에 LDAP 인증서를 추가하십시오.

구성을 완료하려면 Nodes 설정의 CA File 필드에 combined_cert.pem의 경로를 입력하고 변경 사항을 저장한 후 대시보드로 돌아가서 앱을 다시 시작합니다.

Cluster Admin에서 HTTPS를 사용하도록 구성하지 않았다면 CA File 필드에 LDAP SSL 인증서의 경로를 지정하십시오.

User Manager에서 글로벌 카탈로그를 사용하는 LDAP 서버 구성하기

글로벌 카탈로그(GC)는 Active Directory®(AD) 서버에 대한 정보를 제공하지 않고도 여러 다른 AD 서버에 있는 사용자를 Polyspace Access에 추가할 수 있는 메커니즘입니다. 자세한 내용은 Global Catalog를 참조하십시오. LDAP 서버가 GC를 사용하도록 구성되어 있는 경우 User Manager 서비스에 LDAP URL을 제공할 때 GC별 포트 번호를 지정해야 합니다. 디폴트 포트는 3268이며, LDAPS(보안 LDAP)를 사용하는 경우에는 3269입니다. LDAP 서버가 GC를 사용하도록 구성되어 있는지 확인하려면 LDAP 관리자에게 문의하십시오.

잘못된 포트 번호를 지정하면 User Manager 서비스가 LDAP 서버와 통신할 수 없습니다. User Manager 로그를 검사해 보면 다음과 유사한 오류 메시지를 확인할 수 있습니다.

LDAP server 'ldap://server01.example.com:389' did not recognize 
base DN 'DC=example,DC=com' and search base ''.
...
Unprocessed Continuation Reference(s)
User Manager 로그를 out.log 파일에 저장하려면 다음 명령을 사용하십시오.
docker logs -t usermanager-server-0-main >> out.log 2>&1

참고

Polyspace Access™ R2021b 이하 버전을 실행하는 경우 Docker 컨테이너 이름이 다를 수 있습니다. 현재 실행 중인 컨테이너의 이름을 보려면 명령 docker ps --format '{{.Names}}'를 사용하십시오.

GC는 여러 Active Directory(AD) 서버로부터 각 사용자에 대한 특성의 서브셋만 보유하고 있습니다. GC를 사용하고 있다면 클러스터 운영자 설정에 지정된 LDAP ID 특성이 이러한 특성 서브셋에 있어야 합니다. 해당 LDAP ID가 GC에 없으면 이 사용자는 Polyspace Access에 추가되지 않습니다.

관련 항목