Sun 엔터프라이즈 인증 메커니즘 안내서

주체 관리

이 절에서는 SEAM Tool을 사용하여 주체를 관리하는 단계별 지침을 제공합니다. 또한 해당되는 경우, 각 절차 다음에 kadmin 명령을 사용하여 동일한 명령행 기능의 예를 제공합니다.

주체 관리 작업 맵

표 5-2 주체 관리 작업 맵

작업 

설명 

참고할 위치 

주체 목록 보기 

"주체" 탭을 클릭하여 주체 목록을 표시합니다. 

"주체 목록 보기 방법"

주체 속성 보기 

"주체 목록"에서 주체를 선택하고 "수정" 버튼을 클릭하여 주체의 속성을 표시합니다. 

"주체 속성 보기"

새 주체 작성 

"주체 목록" 대화 상자에서 "새로 작성" 버튼을 클릭하여 새 주체를 작성합니다. 

"새 주체 작성 방법"

주체 복제 

"주체 목록"에서 복제할 주체를 선택하고 "복제" 버튼을 클릭하여 주체를 복제합니다. 

"주체 복제 방법"

주체 수정 

"주체 목록"에서 수정할 주체를 선택하고 "수정" 버튼을 클릭하여 주체를 수정합니다. 

주체 이름은 수정할 수 없습니다. 주체 이름을 변경하려면 주체를 복제하여 새로운 이름을 지정하고 저장한 다음 이전 주체를 삭제합니다. 

"주체 수정 방법"

주체 삭제 

"주체 목록"에서 삭제할 주체를 선택하고 "삭제" 버튼을 클릭하여 주체를 삭제합니다. 

"주체 삭제 방법"

새 주체 작성을 위한 기본값 설정 

"편집" 메뉴에서 "등록 정보"를 선택하여 새 주체를 작성하기 위한 기본값을 설정합니다. 

"새 주체 작성을 위한 기본값 설정 방법"

Kerberos 관리 권한 수정(kadm5.acl 파일)

명령행에만 해당합니다. Kerberos 관리 권한은 주체가 Kerberos 데이터베이스에 수행할 수 있는 작업의 종류(예: 추가, 수정 등)를 결정합니다. /etc/krb5/kadm5.acl 파일을 편집하여 각 주체의 Kerberos 관리 권한을 수정할 수 있습니다.

"Kerberos 관리 권한 수정 방법"

새 주체 작성 자동화

SEAM Tool은 사용하기 쉽지만 새 주체를 자동으로 작성하는 방법은 제공하지 않습니다. 자동화는 단시간 내에 10~100개의 새 주체를 추가해야 할 때 특히 유용합니다. Bourne 셸 스크립트에서 kadmin.local 명령을 사용하면 새 주체 작성을 자동화할 수 있습니다.

다음 셸 스크립트 행은 이러한 방법의 예입니다.

sed -e 's/^\(.*\)$/ank +needchange -pw \1 \1/' < princnames |
        time /usr/krb5/sbin/kadmin.local> /dev/null

이 예는 읽기 쉽도록 두 행으로 분할되어 있습니다. 이 스크립트는 주체 이름과 암호를 포함하고 이것을 Kerberos 데이터베이스에 추가하는 princnames라는 파일을 읽습니다. 각 행에 한 개 이상의 공백으로 구분된 주체 이름과 암호가 포함되도록 princnames 파일을 작성해야 합니다. +needchange 옵션은 처음 주체를 사용하여 로그인할 때 새 암호를 묻도록 주체를 구성하여 princnames 파일의 암호 보안이 유지되도록 합니다.

이것은 단지 하나의 예일 뿐입니다. 이름 서비스의 정보를 사용하여 주체 이름에 대한 사용자 이름 목록을 가져오는 등 복잡한 스크립트를 작성할 수도 있습니다. 사용자가 수행하는 작업과 그 방법은 사이트의 필요 사항과 사용자의 스크립트 기술에 달려 있습니다.

주체 목록 보기 방법

이 절차 다음에는 이와 동일한 명령행 기능의 예가 나와 있습니다.

  1. 필요한 경우 SEAM Tool을 시작합니다.

    자세한 내용은 "SEAM Tool 시작 방법"을 참고하십시오.

  2. "주체" 탭을 클릭합니다.

    주체 목록이 나타납니다.

    Graphic
  3. 특정 주체나 주체의 하위 목록을 표시하려면 "필터 패턴" 필드에 필터 문자열을 입력하고 <Return> 키를 클릭합니다. 필터가 성공하면, 필터와 일치하는 주체 목록이 표시됩니다.

    필터 문자열은 하나 이상의 문자로 구성되어야 합니다. 필터 메커니즘은 대소문자를 구분하므로 필터에 적절한 대소문자를 사용해야 합니다. 예를 들어, 필터 문자열 ge를 입력하면 ge 문자열을 포함하는 주체만 표시됩니다(예: george 또는 edge).

    주체 목록 전체를 나타내려면 "필터 지우기"를 클릭합니다.

예-주체 목록 보기(명령행)

다음 예에서는 kadminlist_principals 명령을 사용하여 test*와 일치하는 모든 주체를 나열합니다. 와일드카드는 list_principals 명령과 함께 사용할 수 있습니다.


kadmin: list_principals test*
test1@ACME.COM
test2@ACME.COM
kadmin: quit

주체 속성 보기

이 절차 다음에는 이와 동일한 명령행 기능의 예가 나와 있습니다.

  1. 필요한 경우 SEAM Tool을 시작합니다.

    자세한 내용은 "SEAM Tool 시작 방법"를 참고하십시오.

  2. "주체" 탭을 클릭합니다.

  3. 목록에서 원하는 주체를 선택하고 "수정"을 클릭합니다.

    일부 주체 속성이 포함된 "주체 기본 사항" 대화 상자가 표시됩니다.

  4. 주체 속성을 모두 보려면 계속 "다음"을 클릭합니다.

    세 개의 창에 속성 정보가 나타납니다. 각 창에서 "도움말" 메뉴의 "상황에 맞는 도움말"을 선택하면 여러 속성에 대한 정보를 얻을 수 있습니다. 주체 속성에 대한 설명을 모두 보려면 "SEAM Tool 대화 상자 설명"을 참고합니다.

  5. 보기가 끝나면 "취소"를 클릭합니다.

예-주체 속성 보기

다음 예는 jdb/admin 주체를 볼 때의 첫번째 창을 나타낸 것입니다.

Graphic

예-주체 속성 보기(명령행)

다음 예에서는 kadminget_principal 명령을 사용하여 jdb/admin 주체의 속성을 표시합니다.


kadmin: getprinc jdb/admin
주체: jdb/admin@ACME.COM
만기일: 8월 25일 금요일 17:19:05 PDT 2000
마지막 암호 변경일: [사용 안함]
암호 만기일: 4월 14일 수요일 11:53:10 PDT 1999
최대 티켓 유효 기간: 1일 16:00:00
최대 갱신 유효 기간: 1일 16:00:00
마지막 수정일: 1월 14일 목요일 11:54:09 PST 1999 (admin/admin@ACME.COM)
마지막 인증일: [사용 안함]
마지막 인증 실패일: [사용 안함]
실패한 암호: 0
키 수: 1
키: vno 1, CRC-32의 DES cbc 모드, 솔트 없음
속성: REQUIRES_HW_AUTH
정책: [없음]
kadmin: quit

새 주체 작성 방법

이 절차 다음에는 이와 동일한 명령행 기능의 예가 나와 있습니다.

  1. 필요한 경우 SEAM Tool을 시작합니다.

    자세한 내용은 "SEAM Tool 시작 방법"을 참고하십시오.


    주 -

    새 정책이 필요한 새 주체를 작성하려면 새 주체를 작성하기 전에 새 정책을 만들어야 합니다. 자세한 내용은 "새 정책 작성 방법"을 참고합니다.


  2. "주체" 탭을 클릭합니다.

  3. "신규"를 클릭합니다.

    일부 주체 속성이 포함된 "주체 기본 사항" 대화 상자가 표시됩니다.

  4. 주체 이름과 암호를 지정합니다.

    주체 이름과 암호는 필수 항목입니다.

  5. 주체의 속성 값을 지정하고 계속 "다음"을 클릭하여 다른 속성들을 지정합니다.

    세 개의 창에 속성 정보가 나타납니다. 각 창에서 "도움말" 메뉴의 "상황에 맞는 도움말"을 선택하면 여러 속성에 대한 정보를 얻을 수 있습니다. 주체 속성에 대한 설명을 모두 보려면 "SEAM Tool 대화 상자 설명"을 참고합니다.

  6. "저장"을 클릭하여 주체를 저장하거나 마지막 대화 상자에서 "완료"를 클릭합니다.

  7. 필요하면 /etc/krb5/kadm5.acl 파일에서 새 주체에 Kerberos 관리 권한을 설정합니다.

    자세한 내용은 "Kerberos 관리 권한 수정 방법"을 참고하십시오.

예-새 주체 작성

다음 예는 pak라는 새 주체를 작성할 경우의 "주체 기본 사항" 대화 상자를 나타낸 것입니다. 현재 정책은 testuser로 설정되어 있습니다.

Graphic

예-새 주체 작성(명령행)

다음 예에서는 kadminadd_principal 명령을 사용하여 pak라는 새 주체를 작성합니다. 주체의 정책은 testuser로 설정됩니다.


kadmin: add_principal -policy testuser pak
"pak@ACME.COM" 주체의 암호 입력: <암호를 입력하십시오>
"pak@ACME.COM" 주체의 암호 다시입력:  <암호를 다시 입력하십시오>
"pak@ACME.COM" 주체가 작성되었습니다.
kadmin: quit

주체 복제 방법

다음은 기존 주체의 모든 속성이나 일부 속성을 사용하여 새 주체를 작성하는 방법입니다. 이 절차에 해당하는 명령행 기능이 없습니다.

  1. 필요한 경우 SEAM Tool을 시작합니다.

    자세한 내용은 "SEAM Tool 시작 방법"을 참고하십시오.

  2. "주체" 탭을 클릭합니다.

  3. 목록에서 복제할 주체를 선택하고 "복제"를 클릭합니다.

    "주체 기본 사항" 대화 상자가 표시됩니다. 비어 있는 "주체 이름"과 "암호" 필드를 제외한 선택한 주체의 모든 속성이 복제됩니다.

  4. 주체 이름과 암호를 지정합니다.

    주체 이름과 암호는 필수 항목입니다. 선택한 주체와 똑같이 복제하려면 "저장"을 클릭하고 마지막 단계로 건너뜁니다.

  5. 주체의 속성에 다른 값을 지정하고 계속 "다음"을 클릭하여 다른 속성들을 지정합니다.

    세 개의 창에 속성 정보가 나타납니다. 각 창에서 "도움말" 메뉴의 "상황에 맞는 도움말"을 선택하면 여러 속성에 대한 정보를 얻을 수 있습니다. 주체 속성에 대한 설명을 모두 보려면 "SEAM Tool 대화 상자 설명"을 참고합니다.

  6. "저장"을 클릭하여 주체를 저장하거나 마지막 대화 상자에서 "완료"를 클릭합니다.

  7. 필요하면 /etc/krb5/kadm5.acl 파일에서 주체에 Kerberos 관리 권한을 설정합니다.

    자세한 내용은 "Kerberos 관리 권한 수정 방법"을 참고하십시오.

주체 수정 방법

이 절차 다음에는 이와 동일한 명령행 기능의 예가 나와 있습니다.

  1. 필요한 경우 SEAM Tool을 시작합니다.

    자세한 내용은 "SEAM Tool 시작 방법"를 참고하십시오.

  2. "주체" 탭을 클릭합니다.

  3. 목록에서 수정할 주체를 선택하고 "수정"을 클릭합니다.

    일부 주체 속성이 포함된 "주체 기본 사항" 대화 상자가 표시됩니다.

  4. 주체의 속성을 수정하고 계속 "다음"을 클릭하여 다른 속성을 수정합니다.

    세 개의 창에 속성 정보가 나타납니다. 각 창에서 "도움말" 메뉴의 "상황에 맞는 도움말"을 선택하면 여러 속성에 대한 정보를 얻을 수 있습니다. 주체 속성에 대한 설명을 모두 보려면 "SEAM Tool 대화 상자 설명"을 참고합니다.


    주 -

    주체 이름은 수정할 수 없습니다. 주체 이름을 변경하려면 주체를 복제하여 새로운 이름을 지정하고 저장한 다음, 이전 주체를 삭제합니다.


  5. "저장"을 클릭하여 주체를 저장하거나 마지막 대화 상자에서 "완료"를 클릭합니다.

  6. /etc/krb5/kadm5.acl 파일에서 주체의 Kerberos 관리 권한을 수정합니다.

    자세한 내용은 "Kerberos 관리 권한 수정 방법"을 참고하십시오.

예-주체 암호 수정(명령행)

다음 예에서는 kadminchange_password 명령을 사용하여 jdb 주체의 암호를 수정합니다. 이 때 change_password는 주체의 암호 사용 기록에 있는 암호로 변경할 수 없게 합니다.


kadmin: change_password jdb
"jdb" 주체의 암호 입력: <새 암호를 입력하십시오>
"jdb" 주체의 암호 확인: <암호를 다시 입력하십시오>
"jdb@ACME.COM"의 암호가 변경되었습니다.
 kadmin: quit

주체의 다른 속성을 수정하려면 kadminmodify_principal 명령을 사용해야 합니다.

주체 삭제 방법

이 절차 다음에는 이와 동일한 명령행 기능의 예가 나와 있습니다.

  1. 필요한 경우 SEAM Tool을 시작합니다.

    자세한 내용은 "SEAM Tool 시작 방법"을 참고하십시오.

  2. "주체" 탭을 클릭합니다.

  3. 목록에서 삭제할 주체를 지정하고 "삭제"를 클릭합니다.

    삭제를 확인하면 해당 주체가 삭제됩니다.

  4. Kerberos ACL 파일(/etc/krb5/kadm5.acl)에서 주체를 삭제합니다.

    자세한 내용은 "Kerberos 관리 권한 수정 방법"을 참고하십시오.

예-주체 삭제(명령행)

다음 예에서는 kadmindelete_principal 명령을 사용하여 jdb 주체를 삭제합니다.


kadmin: delete_principal pak
"pak@ACME.COM" 주체를 삭제하시겠습니까? (예/아니오): 
"pak@ACME.COM" 주체가 삭제되었습니다.
다시 사용하기 전에 모든 ACL에서 이 주체를 삭제했는지 확인하십시오.
kadmin: quit

새 주체 작성을 위한 기본값 설정 방법

이 절차에 해당하는 명령행 기능이 없습니다.

  1. 필요한 경우 SEAM Tool을 시작합니다.

    자세한 내용은 "SEAM Tool 시작 방법"을 참고하십시오.

  2. "편집" 메뉴에서 "등록 정보"를 선택합니다.

    "등록 정보" 창이 나타납니다.

    Graphic
  3. 새 주체 작성 시 원하는 기본값을 선택합니다.

    각 창에서 "도움말" 메뉴의 "상황에 맞는 도움말"을 선택하면 여러 속성에 대한 정보를 얻을 수 있습니다.

  4. "저장"을 클릭합니다.

Kerberos 관리 권한 수정 방법

사이트에 사용자 주체가 많이 있을 수도 있지만 대개 소수의 사용자만이 Kerberos 데이터베이스를 관리할 수 있게 됩니다. Kerberos 데이터베이스 관리 권한은 Kerberos 액세스 제어 목록(ACL) 파일인 kadm5.acl(4)에 지정됩니다. 사용자는 kadm5.acl 파일에서 개별 주체에 대해 권한을 허용하거나 허용하지 않을 수 있습니다. 주체 이름에 '*' 와일드카드를 사용하여 주체 그룹에 대한 권한을 지정할 수도 있습니다.

  1. 마스터 KDC의 수퍼유저가 됩니다.

  2. /etc/krb5/kadm5.acl 파일을 편집합니다.

    kadm5.acl 파일의 항목은 다음과 같은 형식이어야 합니다.


    주체   권한  [주체목표]

    주체

    권한이 부여된 주체입니다. 주체 이름의 모든 부분에 '*' 와일드카드를 사용할 수 있으며, 이것은 특정 주체 그룹에 동일한 권한을 부여할 때 유용합니다. 예를 들어, admin 이 포함된 모든 주체를 지정하려면 */admin@realm을 사용합니다. admin은 주로 각 Kerberos 주체에 각기 다른 권한(예: Kerberos 데이터베이스에 대한 관리 액세스)을 부여할 때 사용합니다. 예를 들어, 사용자 jdbjdb/admin이라는 관리 사용 주체를 가질 수 있습니다. 즉, jdb는 이러한 권한이 실제로 필요할 때만 jdb/admin 티켓을 받습니다.

    권한

    주체가 수행할 수 있는 작업과 수행할 수 없는 작업을 지정합니다. 이러한 권한은 다음 목록에 표시된 문자나 해당 문자의 대문자로 구성된 문자열로 표시됩니다. 대문자이거나 지정하지 않을 경우 해당 작업은 허용되지 않고, 소문자이면 작업이 허용됩니다. 

     

    a

    주체나 정책의 추가를 허용합니다[허용하지 않습니다]. 

     

    d

    주체나 정책의 삭제를 허용합니다[허용하지 않습니다]. 

     

    m

    주체나 정책의 수정을 허용합니다[허용하지 않습니다]. 

     

    c

    주체의 암호 변경을 허용합니다[허용하지 않습니다]. 

     

    i

    데이터베이스 조회를 허용합니다[허용하지 않습니다]. 

     

    l

    [데이터베이스의 주체 또는 정책 목록 조회를 허용합니다[허용하지 않습니다]. 

     

    x 또는 *

    모든 권한을 허용합니다(admcil).

    principal_target

    이 필드에 주체를 지정하면, 권한은 주체가 principal_target에서 작동할 경우에만 주체에 적용됩니다. 주체 이름의 모든 부분에 '*' 와일드카드를 사용할 수 있으며, 이것은 주체를 그룹화하는 데 유용합니다.

예-Kerberos 관리 권한 수정

kadm5.acl 파일의 다음 항목은 admin이 있는 ACME.COM 영역의 모든 주체에게 데이터베이스에 대한 모든 권한을 부여합니다.


*/admin@ACME.COM *

kadm5.acl 파일의 다음 항목은 jdb@ACME.COM 주체에게 root가 들어 있는 모든 주체를 추가, 나열, 조회할 수 있는 권한을 부여합니다.


jdb@ACME.COM ali */root@ACME.COM