주요 콘텐츠

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

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/R2025a/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

데이터베이스 비밀번호를 변경하려면 비밀번호를 두 번 업데이트하세요.

  • Polyspace Access 설정에서 비밀번호를 변경하려면 이 필드에 새 비밀번호를 입력하세요.

  • Polyspace Access를 설치한 머신에서 이 명령을 실행하여 postgres 데이터베이스의 비밀번호를 업데이트하세요.

    docker exec -it usermanager-db-0-main psql --username um --dbname umdb -c "ALTER ROLE um WITH PASSWORD 'yourNewPassword'"

--username 옵션의 인수는 Internal directory database username 필드에 지정한 사용자 이름과 일치해야 합니다.

[Administrator sign-in IDs]

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

참고

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

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

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

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

  2. 다시 시작한 후에, Polyspace Access 관리자는 Polyspace Access 웹 인터페이스에서 상황별 메뉴를 사용하여 [Project Explorer]의 모든 최상위 폴더에서 해당 사용자를 해제해야 합니다. 관리자는 polyspace-access -unset-role 명령을 사용하여 명령줄에서 이 작업을 수행할 수도 있습니다.

[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 키를 자동화 스크립트의 일부로 사용하고 있다면 이 키와 연결된 사용자에게는 스크립트에서 모든 작업을 수행할 수 있는 권한이 있어야 합니다. 프로젝트 권한 관리 항목을 참조하십시오.

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

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

조직의 LDAP 서버를 사용하려면 [User Manager Directory Connection] 설정에서 [Connect an LDAP directory]를 선택하고 LDAP 설정을 구성하십시오. LDAP 관리자에게 문의하여 LDAP URL, LDAP 사용자 기반, 기타 LDAP 설정 및 필터를 얻으세요. Docker를 사용하는 경우 Docker 컨테이너는 호스트로부터 DNS 설정을 상속해야 합니다.

Polyspace Access™는 RSA 기반 키 교환 및 3DES 암호 그룹을 사용하는 암호 그룹이 알려진 취약점을 가지고 있기 때문에 이러한 암호 그룹을 지원하지 않습니다. LDAP 서버를 User Manager에 연결하기 전에 ECDHE 기반 암호 그룹과 같은 보안 암호 그룹을 사용하도록 LDAP 서버 구성을 업그레이드하세요.

설정설명
[LDAP URL]

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

ldap://HOST:PORT
HOST는 LDAP 호스트이고 PORT는 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 username][LDAP password]를 제공하는 경우 해당 자격 증명에 대해 페이지네이션이 비활성화되어 있지 않아야 합니다. 제공한 자격 증명에 대해 페이지네이션이 비활성화된 경우 User Manager 로그에 LDAP 결과 코드 11이 표시되어야 합니다.

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

[LDAP page size]LDAP 서버가 페이지당 반환하는 결과 수를 설정합니다(예: 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 중에서 선택하기 항목을 참조하십시오.

예를 들어, LinuxDebian® 배포판에서 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 인증서의 경로를 지정하십시오.

SSO(Single Sign-On)를 사용하여 인증 구성

Polyspace Access에서는 SAML(Security Assertion Markup Language) ID 공급자(IdP)를 사용하여 인증을 구성할 수 있습니다. SAML에 대한 자세한 내용은 OASIS SAML Wiki를 참조하세요.

SAML 설정 외에도 LDAP 설정도 작성해야 합니다. LDAP 및 SAML 설정을 작성하면 LDAP ID, SAML 설정 및 Polyspace Access User Manager가 동기화됩니다. 또한 사용자에게 권한을 할당하고 검토를 위해 결과를 사용자에게 할당하는 기능도 제공합니다. LDAP 설정에 대한 자세한 내용은 조직의 LDAP 서버를 User Manager에 연결하기를 참조하세요.

SAML을 구성하려면 다음과 같은 전제 조건이 필요합니다.

  • Polyspace Access가 설치되었습니다. 웹 리뷰를 위해 PolyspaceAccess 설치 항목을 참조하십시오.

  • 귀하의 조직의 IdP는 SAML 프로토콜을 따릅니다.

  • IdP에 접근할 수 있습니다. 액세스하려면 ID 관리 관리자에게 문의하세요.

  • IdP는 SAML 메타데이터에 대한 엔드포인트를 호스팅합니다. 여러 설정에서 이 메타데이터에 있는 정보를 입력해야 합니다.

조직의 SAML 설정을 구성하려면 먼저 Authentication type 목록에서 SAML를 선택한 다음 이러한 설정을 지정하세요.

설정설명
SAML IDP metadata

SP 시작 또는 IdP 시작 프로필에 필요한 SAML 메타데이터의 URL입니다.

SAML relying party

SAML ID 공급자와 통합되는 서버의 호스트 이름입니다. 이 값은 일반적으로 IdP에 대한 DNS 항목의 호스트 이름입니다. 이는 IdP 메타데이터에서 entityID 값으로 찾을 수 있습니다.

SAML CORS domains

교차 출처 통신에 필요한 도메인의 문자열 배열입니다. 설정에 따라 이 설정을 사용할 필요가 없을 수도 있습니다.

SAML user ID attribute

IdP의 사용자 이름 또는 사용자 ID 속성. 서버가 라이선스를 체크아웃하면 이 속성의 값이 라이선스 서버 로그에 나타납니다.

SAML user display name attribute

IdP의 사용자 표시 이름 속성. 이 속성의 값은 Polyspace Access 사용자 인터페이스에 나타납니다. 어설션이 "uname"과 같이 더 적합한 다른 필드를 전달하면 이 필드를 uname로 설정하고 일시적인 값을 재정의합니다.

SAML binding attribute

"POST" (HTTP POST) 또는 "Redirect" (HTTP Redirect)로 지정되어 ID 공급자에게 인증 요청을 보내기 위한 바인딩 방법입니다.

HTTP Redirect 방식은 URL에 쿼리 파라미터로 요청 데이터를 전송하는 반면, HTTP POST 방식은 요청 본문에 데이터를 넣어 보다 안전하게 전송합니다.

SAML destination regex attribute

Polyspace 도메인의 도메인과 포트와 일치하는 정규식 패턴을 추가합니다. 예를 들어, 다음은 모든 리디렉션이 https://www.myAccessDomain:9443/로 시작되도록 강제합니다.

^https://www.myAccessDomain.com:9443)/.*$

SSO 구성을 테스트하는 동안 잘못된 대상 URL 오류가 발생하는 경우 이 설정을 사용하세요.

모든 SAML 및 LDAP 설정을 구성한 후 변경 사항을 저장하고 클러스터 대시보드로 돌아갑니다. User Manager 링크를 클릭하여 변경 사항이 적용되는지 확인하세요. 구성이 성공적으로 완료되면 SSO 프로세스가 시작되고 IdP에 로그인하라는 메시지가 표시됩니다. 로그인 후 IdP가 Polyspace Access의 User Manger로 리디렉션합니다.

참고 항목

도움말 항목