[z/OS]

자원 액세스 제어 기능 도구

다음 도구와 기술은 WebSphere® Application Server for z/OS®에 사용된 보안 정의를 관리하는 데 도움이 됩니다.
  • 클래스의 모든 프로파일을 나열하기 위한 RACF® ISPF 패널
  • UID 또는 사용자 ID 순으로 UID를 나열하기 위한 ISHELL
  • GID 또는 그룹 ID 순으로 GID를 나열하기 위한 EXEC
  • RACF 정의를 취소하기 위한 EXEC

RACF ISPF 패널

특정 클래스에 모든 프로파일을 열거하려면 RACF ISPF 패널을 사용하십시오. 다음 단계를 완료하려면 RACF SPECIAL 또는 AUDITOR 권한이 있어야 합니다.
  • 일반 자원 프로파일(옵션 2)을 선택하십시오.
  • 검색하십시오(옵션 S 또는 9).
  • 클래스 이름을 입력하십시오.
  • Enter를 두 번 더 누르십시오.
------------------------------------------------
RACF - SERVICES OPTION MENU
OPTION ===> 2
SELECT ONE OF THE FOLLOWING:
1 DATA SET PROFILES
2 GENERAL RESOURCE PROFILES
3 GROUP PROFILES AND USER-TO-GROUP CONNECTIONS
4 USER PROFILES AND YOUR OWN PASSWORD
5 SYSTEM OPTIONS
6 REMOTE SHARING FACILITY
7 DIGITAL CERTIFICATES AND KEY RINGS
99  EXIT
------------------------------------------------

-----------------------------------------------------
RACF - GENERAL RESOURCE PROFILE SERVICES
SELECT ONE OF THE FOLLOWING:
1 ADD Add a profile
2 CHANGE Change a profile
3 DELETE Delete a profile
4 ACCESS Maintain access list
5 AUDIT Monitor access attempts (Auditors only)
D or 8 DISPLAY Display profile contents
S or 9 SEARCH Search the RACF data base for profiles
-----------------------------------------------------

------------------------------------------
RACF - GENERAL RESOURCE SERVICES - SEARCH
OPTION ===>
ENTER THE FOLLOWING PROFILE INFORMATION:
CLASS ===> STARTED
PROFILE ===>
------------------------------------------

-----------------------------------
BROWSE - RACF COMMAND OUTPUT ----
COMMAND ===>
T5ACR.* (G)
T5DMN.* (G)
T5SRVNDS.* (G)
T5SRV1S.* (G)
T5SRV2S.* (G)
T5SRV3S.* (G)
WMQX*.* (G)
WSCWTRC.*
-----------------------------------

RACF SEARCH 명령: SEARCH CLASS(class_name)를 사용하여 클래스의 모든 프로파일의 목록을 얻을 수 있습니다.

모든 사용자 ID를 UID 순서로 나열

RACF에서 OMVS 세그먼트로 새 사용자 ID를 정의할 때에는 고유 UID를 지정해야 합니다. WebSphere는 RACF AUTOUID 함수를 지원하지 않습니다. 지정되지 않은(및 중복) UID를 찾으려면 ISPF ISHELL(옵션 3.4)을 사용하여 모든 사용자 ID의 목록을 UID 순서로 확보하십시오. 이를 수행하려면 슈퍼유저(UID=0)여야 하며 다음 단계를 따라야 합니다.
  1. 설정 풀다운 및 사용자 목록 옵션을 선택하십시오.
  2. 사용자 목록을 찾으십시오.
  3. 사용자 목록을 찾는 동안 파일 풀다운을 선택하십시오.
  4. UID 정렬 옵션을 선택하십시오. (UID -1은 사용자가 OMVS 세그먼트를 가지고 있지 않음을 의미합니다.)
다음 예는 관련된 패널을 설명합니다.
----------------------------------------------------------------------------------------
File   Directory   Special_file   Tools File_systems   Options   Setup   Help
----------------------------------------------------------------------------------------
UNIX System Services ISPF Shell
Command ===> _______________
----------------------------------------------------------------------------------------

-----------------------------
1. User...
2. User list...
3. All users...
4. All groups...
5. Permit field access...
6. Character Special...
7. Reset UID to 847039
-----------------------------

--------------------------------------------------------------------
File   Help
--------------------------------------------------------------------
                                                        User List
Command ===> 
--------------------------------------------------------------------
User ID              UID              Group
--------------------------------------------------------------------
ADMOORE                 1024996             $GUSERS /u/admoore
AHMAD                   2                   DFSGRP /u/ahmad
AKILOV                  125406              $GUSERS /u/akilov
ALLMOND                 36                  DFSGRP /u/allmond
AOPUSER                 99129934            AOPOPER /u/aopuser
ASTLEY                  787202              DFSGRP /u/astley
A5USR                   112501              A5GRP /tmp
BAGWELL                 342832              DFSGRP /u/bagwell
---------------------------------------------------------------------

-----------------------------
1. Sort name
2. Sort UID
3. Sort Group
4. Print
5. Exit User ID UID Group
-----------------------------

-----------------------------------------------
User ID              UID              Group
-----------------------------------------------
CBASRUH              2336             CBASRH
CBIVPH               2337             CBIVPGH
T5GUEST              2402             T5GUESG
T5ADMIN              2403             T5CFG
T5DMNU               2411             T5CFG
T5ACRNDU             2421             T5CFG
T5DMGSU              2422             T5SVRG
T5ASRNDU             2422             T5SVRG
T5ACRU               2431             T5CFG
T5ASRU               2432             T5SVRG
WSPETSC              2701             WSCNTLG
-----------------------------------------------

모든 그룹 ID를 GID 순서로 나열

새 그룹에 고유 GID도 지정해야 합니다. 중복을 식별하고 고유한 새 GID를 지정할 수 있도록 그룹을 GID 순으로 나열(UID의 경우처럼)하기 위한 시스템 제공 도구는 없습니다. 유일한 매개변수로 GID를 지정하여 이들을 GID 순으로 나열하십시오. 기본값은 이들을 그룹 ID 순서로 나열하는 것입니다. (RACF SPECIAL, AUDITOR 또는 특정 권한이 있어야 합니다.)
/* Rexx ---------------------------------------------------------- */
/* This exec uses the ishell bpxwirac service to display the group */
/* with OMVS segments and there group IDs. B. Pierce & MJ Loos */
/* --------------------------------------------------------------- */
/* Syntax: LISTGRP Name (default) | GID */
/* --------------------------------------------------------------- */
order = "N" /* set default to name */
Arg parm /* get argument for sort order */
if Abbrev("NAME",parm,1) then order = "N"
if Abbrev("GID",parm,1) then order = "I"

call bpxwirac "OMVSGROUP" /* call the service */

Address ISPEXEC /* using ISPF services */
if order = "N" then do /* already sorted */
   do ix=1 by 1 while queued()>0
      parse pull gname gid
      say left(gname,8) right(gid,8)
   end
end
else do /* sort the results */
   "TBCREATE grptable names(tbgrpnm tbgrpid) replace nowrite"
   rows = 0
   do ix=1 by 1 while queued()>0 /* populate the table */
      parse pull gname gid
      tbgrpnm = left(gname,8)
      tbgrpid = right(gid,8)
      "TBADD grptable"
      rows = rows + 1
   end
   "TBSORT grptable FIELDS(tbgrpid,C,A,tbgrpnm,C,A)" /* sort it */
   "TBTOP grptable"
   do ix = 1 to rows by 1 /* display the results */
      "TBSKIP grptable"
      say tbgrpnm tbgrpid
   end
   "TBEND grptable" /* throw out the table */
end
say
exit 0
/***************** end of EXEC ****************************/

RACF 정의 취소

서버, 노드 및 셀을 설정(설정 후 삭제)할 때에는 프로세스에서 작성하는 RACF 정의를 간단한 방법으로 삭제하는 것이 편리합니다.

추가된 exec는 대상 .DATA 파티션된 데이터 세트의 BBOWBRAK 멤버로부터 생성된 RACF 명령을 읽어, RACF DELUSER, DELGROUP, RDELETE 및 기타 RACF 명령(역순으로)을 생성합니다.

결과로 생기는 RACF 명령을 실행하기 전에, 출력을 검토하고 보유하려는 다른 서버에서 사용하는 사용자, 그룹 또는 프로파일을 삭제하는 명령을 삭제해야 합니다.

팁: 다른 서버에서 사용하는 사용자와 일반 프로파일이 삭제되지 않도록 세심한 주의를 기울이십시오.
/* REXX - UNDO2 - Create backout RACF commands to uninstall Server*/
Read RACF commands into linein.in, parse verb & Obj, push
"delete/undo" commands to cmdOut.out,then write out in rev order */
out = 1 /* Output line number for stem var. cmdOut. */
"EXECIO * DISKR RACFCMDS (STEM linein."
do in = 1 to linein.0 /* See what we read; call the appropriate rtne */
  if pos('/*',linein.in) <> 0 then iterate
  if pos('say',linein.in) = 1 then iterate
 parse var linein.in '"' cmdVerb cmdObj '"'
 select
   when cmdVerb = "ADDGROUP" then call DelGrp
   when cmdVerb = "ADDUSER" then call DelUsr
   when cmdVerb = "CONNECT" then call ConUsr
   when cmdVerb = "RDEFINE" then call DelPro
   when cmdVerb = "PERMIT" then call PerUsr
   when cmdVerb = "RACDCERT" then call RdCert
    otherwise iterate
  end /* select */
end /* in=1 to n */
call WriteCmds
exit 1
return

/*************** Subroutines: ********************/

DelUsr: /* DelUsr: Delete User */
   parse var cmdObj user .
   cmdOut.out = "DELUSER " || user
   out = out + 1
return

DelGrp: /* DelGrp: Delete Group */
   parse var cmdObj group .
   cmdOut.out = "DELGROUP " || group
   out = out + 1
return

ConUsr: /* ConUsr: Remove user from a group */
   cmdOut.out = "REMOVE " || cmdObj
   out = out + 1
return

DelPro: /* DelPro: Delete Profile */
   parse var cmdObj class profile acc .
   cmdOut.out = "RDELETE " || class profile
   out = out + 1
return

PerUsr: /* PerUsr: Remove permission from a profile */
   parse var cmdObj profile class ID acc
   parse value cmdObj with 'ID(' id ')' acc
   cmdOut.out = 'PERMIT '||profile class||' ID('||ID||') DELETE'
   out = out + 1
return

RdCert: /* RdCert: Remove Certificates */
if pos('GENCERT',cmdObj) <> 0 then
  DO
   if pos('CERTAUTH',cmdObj) <> 0
    then
     DO
      parse value cmdObj with 'WITHLABEL(' cert ')'
      cmdOut.out = 'RACDCERT CERTAUTH DELETE(LABEL(' || cert || '))'
      out = out + 1
     END
    ELSE DO
     parse value cmdObj with 'WITHLABEL(' cert ')'
     parse value cmdObj with 'ID (' id ')'
     cmdOut.out = 'RACDCERT ID('||id||') DELETE(LABEL('||cert||'))'
     out = out + 1
     END
  END
if pos('ADDRING',cmdObj) <> 0 then
  DO
   parse value cmdObj with 'ADDRING(' ringname ')'
   parse value cmdObj with 'ID(' user ')'
   cmdOut.out = 'RACDCERT DELRING('||ringname') ID('||user')'
   out = out + 1
  END
return

/* Finished - pull LIFO stack and Write it out *******************/
WriteCmds:
 DO i = out-1 to 1 by -1
   QUEUE cmdOut.i
   EXECIO 1 DISKW RACFUNDO
 END
return

주제 유형을 표시하는 아이콘 참조 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rsec_racftools
파일 이름:rsec_racftools.html