사용자, 역할, 권한 관리

Private Cloud용 Edge v. 4.17.05

Apigee 문서 사이트에는 사용자 역할 및 권한 관리에 대한 광범위한 정보가 있습니다. Edge UI와 Management API를 모두 사용하여 사용자를 관리할 수 있습니다. 역할과 권한은 Management API를 통해서만 관리할 수 있습니다.

사용자 및 사용자 만들기에 대한 자세한 내용은 다음을 참조하세요.

사용자를 관리하기 위해 수행하는 대부분의 작업에는 시스템 관리자 권한이 필요합니다. 클라우드 기반 Edge 설치에서 Apigee는 시스템 관리자 역할을 합니다. Private Cloud용 Edge 설치에서 시스템 관리자는 아래에 설명된 대로 이러한 태스크를 수행해야 합니다.

사용자 추가

Edge API, Edge UI 또는 Edge 명령어를 사용하여 사용자를 만들 수 있습니다. 이 섹션에서는 Edge API 및 Edge 명령어를 사용하는 방법을 설명합니다. Edge UI에서 사용자를 만드는 방법에 대한 자세한 내용은 전역 사용자 만들기를 참조하세요.

조직에 사용자를 만든 후에는 사용자에게 역할을 할당해야 합니다. 역할은 사용자의 Edge 액세스 권한을 결정합니다.

Edge API로 사용자를 만들려면 다음 명령어를 사용하세요.

curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<passwd> \
-X POST http://<ms_IP>:8080/v1/users \
-d '<User> \
   <FirstName>New</FirstName> \
   <LastName>User</LastName> \
   <Password>newUserPWord</Password> \
   <EmailId>foo@bar.com</EmailId> \
</User>'

또는 다음 Edge 명령어를 사용하여 사용자를 만듭니다.

> /opt/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile

여기서 configFile은 사용자를 만드는 데 필요한 정보를 포함합니다.

APIGEE_ADMINPW=sysAdminPW    # If omitted, you will be prompted.
USER_NAME=foo@bar.com
FIRST_NAME=New
LAST_NAME=User
USER_PWD="newUserPWord"
ORG_NAME=myorg  

그런 다음 이 호출을 사용하여 사용자에 대한 정보를 볼 수 있습니다.

curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/users/foo@bar.com

사용자에게 조직의 역할 할당하기

새 사용자가 어떤 작업을 수행하려면 먼저 조직의 역할을 할당해야 합니다. 사용자에게 orgadmin, businessuser, opsadmin, user 등의 다양한 역할이나 조직에 정의된 커스텀 역할을 할당할 수 있습니다.

조직의 역할에 사용자를 할당하면 해당 사용자가 조직에 자동으로 추가됩니다. 사용자를 각 조직의 역할에 할당하여 여러 조직에 할당할 수 있습니다.

다음 명령어를 사용하여 사용자를 조직의 역할에 할당합니다.

curl -X POST -H "Content-Type:application/x-www-form-urlencoded" /
http://<ms_IP>:8080/v1/o/<org_name>/userroles/<role>/users?id=foo@bar.com /
-u <sysAdminEmail>:<passwd> 

이 호출에는 사용자에게 할당된 모든 역할이 표시됩니다. 사용자를 추가하고 새 역할만 표시하려면 다음 호출을 사용합니다.

curl -X POST -H "Content-Type: application/xml" /
http://<ms_IP>:8080/v1/o/<org_name>/users/foo@bar.com/userroles /
-d '<Roles><Role name="role"/></Roles>' /
-u <sysAdminEmail>:<passwd>

다음 명령어를 사용하여 사용자의 역할을 볼 수 있습니다.

curl -u <sysAdminEmail>:<passwd> /
http://<ms_IP>:8080/v1/users/foo@bar.com/userroles

조직에서 사용자를 삭제하려면 사용자에게서 해당 조직의 모든 역할을 삭제하세요. 사용자의 역할을 삭제하려면 다음 명령어를 사용하세요.

curl -X DELETE -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/o/<org_name>/userroles/<role>/users/foo@bar.com

시스템 관리자 추가

시스템 관리자는 다음 작업을 수행할 수 있습니다.

  • 조직 만들기
  • Edge 설치에 라우터, 메시지 프로세서, 기타 구성요소 추가
  • TLS/SSL 구성
  • 추가 시스템 관리자 만들기
  • 모든 Edge 관리 작업 수행

관리 작업의 기본 사용자는 한 명만이지만 시스템 관리자는 두 명 이상 있을 수 있습니다. sysadmin 역할의 구성원인 모든 사용자는 모든 리소스에 대한 전체 권한을 보유합니다.

Edge UI 또는 API에서 시스템 관리자의 사용자를 만들 수 있습니다. 하지만 Edge API를 사용하여 사용자에게 시스템 관리자 역할을 할당해야 합니다. Edge UI에서는 사용자에게 sysadmin 역할을 할당할 수 없습니다.

시스템 관리자를 추가하려면 다음 단계를 따르세요.

  1. Edge UI 또는 API에서 사용자를 만듭니다.
  2. sysadmin 역할에 사용자를 추가합니다.
    curl -u <sysAdminEmail>:<passwd> \
    -X POST http://<ms_IP>:8080/v1/userroles/sysadmin/users \
    -d 'id=foo@bar.com'
  3. 새 사용자가 시스템 관리자 역할에 있는지 확인합니다.
    curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/userroles/sysadmin/users

    사용자의 이메일 주소를 반환합니다.
    [ " foo@bar.com " ]
  4. 신규 사용자의 권한을 확인합니다.
    curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/users/foo@bar.com/permissions

    반환:
    {
    "resourcePermission" : [ {
    "path" : "/",
    " "permissions" ] "/",
    "delete" ]
  5. 새 시스템 관리자를 추가하면 모든 조직에 사용자를 추가할 수 있습니다.
    참고: 새 시스템 관리자는 사용자를 하나 이상의 조직에 추가할 때까지 Edge UI에 로그인할 수 없습니다.
  6. 나중에 시스템 관리자 역할에서 사용자를 삭제하려면 다음 API를 사용하면 됩니다.
    curl -X DELETE -u <sysadminEmail:pword>
    http://<ms_IP>:8080/v1/userroles/sysadmin/users/foo@bar.com


    이 호출은 사용자 역할에서 사용자를 삭제하지 않으며

기본 시스템 관리자 사용자 변경

Edge를 설치할 때 시스템 관리자의 이메일 주소를 지정합니다. Edge는 이 이메일 주소로 사용자를 만들고 이 사용자를 기본 시스템 관리자로 설정합니다. 위에서 설명한 대로 나중에 시스템 관리자를 추가할 수 있습니다.

이 섹션에서는 기본 시스템 관리자를 다른 사용자로 변경하는 방법과 현재 기본 시스템 관리자의 사용자 계정 이메일 주소를 변경하는 방법을 설명합니다.

현재 시스템 관리자로 구성된 사용자 목록을 보려면 다음 API 호출을 사용합니다.

curl -u sysAdminEmail:passwd http://<ms_IP>:8080/v1/userroles/sysadmin/users

현재 기본 시스템 관리자를 확인하려면 /opt/apigee/customer/defaults.sh 파일을 확인합니다. 파일에는 현재 기본 시스템 관리자의 이메일 주소를 보여주는 다음 줄이 포함됩니다.

ADMIN_EMAIL=foo@bar.com

기본 시스템 관리자를 다른 사용자로 변경하려면 다음 단계를 따르세요.

  1. 위에서 설명한 대로 새 시스템 관리자를 만들거나 새 시스템 관리자의 사용자 계정이 이미 시스템 관리자로 구성되어 있는지 확인합니다.
  2. /opt/apigee/customer/defaults.sh를 수정하여 ADMIN_EMAIL을 새 시스템 관리자의 이메일 주소로 설정합니다.
  3. Edge UI를 설치하는 데 사용한 자동 구성 파일을 수정하여 다음 속성을 설정합니다.
    ADMIN_EMAIL=emailAddressOfNewSysAdmin
    APIGEE_ADMINPW=emailAddressOfNewSysAdmin

    SMTPHOST=smtp.gmail.com
  4. Edge UI를 다시 구성합니다.
    > /opt/apigee/apigee-service/bin/apigee-service Edge-ui stop
    > /opt/apigee/apigee-service/bin/apigee-service Edge-ui setup -f configFile
    > /opt/apigee/apigee-service/bin/apigee-service Edge-ui start

현재 기본 시스템 관리자의 사용자 계정 이메일 주소만 변경하려면 먼저 사용자 계정을 업데이트하여 새 이메일 주소를 설정한 후 기본 시스템 관리자 이메일 주소를 변경합니다.

  1. 현재 기본 시스템 관리자의 사용자 계정을 새 이메일 주소로 업데이트합니다.
    > curl -H content-type:application/json -X PUT /
    -u currentSysAdminEmail:passwd /
    http://<ms_IP>:8080/v1/users/currentAdminSysAdminEmail: "first "email :새 이메일 "admin",
    currentAdminEmail-s "first "email :새 이메일 주소:newAdminEmail-ys "email " /
  2. 이전 절차의 2, 3, 4단계를 반복하여 /opt/apigee/customer/defaults.sh 파일을 업데이트하고 Edge UI를 업데이트합니다.

시스템 관리자의 이메일 도메인 지정

보안을 한층 더 강화하기 위해 Edge 시스템 관리자의 필수 이메일 도메인을 지정할 수 있습니다. 시스템 관리자를 추가할 때 사용자의 이메일 주소가 지정된 도메인에 없으면 사용자를 sysadmin 역할에 추가할 수 없습니다.

기본적으로 필수 도메인은 비어 있습니다. 즉, 모든 이메일 주소를 sysadmin 역할에 추가할 수 있습니다.

이메일 도메인을 설정하려면 다음 안내를 따르세요.

  1. 편집기에서 management-server.properties:
    vi /opt/apigee/customer/application/management-server.properties

    파일이 없으면 새로 만듭니다.
  2. conf_security_rbac.global.roles.allowed.domains 속성을 쉼표로 구분된 허용된 도메인 목록으로 설정합니다. 예:
    conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
  3. 변경사항을 저장합니다.
  4. 에지 관리 서버를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service Edge-management-server restart

    이제 sysadmin 역할에 사용자를 추가하려고 하는데 사용자의 이메일 주소가 지정된 도메인에 있지 않으면 추가가 실패합니다.

사용자 삭제

Edge API 또는 Edge UI를 사용하여 사용자를 만들 수 있습니다. 하지만 API를 사용해서만 사용자를 삭제할 수 있습니다.

이메일 주소를 포함한 현재 사용자 목록을 보려면 다음 cURL 명령어를 사용하세요.

curl -u <sysAdminEmail>:<passwd> http://<ms-IP>:8080/v1/users

다음 cURL 명령어를 사용하여 사용자를 삭제합니다.

curl -u <sysAdminEmail>:<passwd> -X DELETE http://<ms-IP>:8080/v1/users/<userEmail>