블로그 이미지
System Neophyte

calendar

      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    

Notice

2008.04.25 01:54 Windows Server

어제에 이어서 되지 않다가.

관련 Search를 찾다보니까 ESC구성을 하지 말라고 하는 글들이

보여서 해당 구성을 빼보았습니다.

ESC 구성이라는게 뭔가 하면 IE 보안 강화 구성입니다.

server를 설치하게 되면 기본적으로 설치가 되는 IE 구성요소입니다.


해당 구성요소를 체크한 상태에서는

이 문구가 나오게 되고

제거를 한다음에 하게 되면 나오는 문구가 틀립니다.


아하~ 그러면? XP클라이언트들은 보안구성이 되어 있지 않으므로

보안 강화 구성을 한 상태로 정책을 내려서 보안 구성이 된 애들만(2003서버들만)

되고 그렇지 않은 클라이언트들은 정책을 받지 못하는 구나 생각이 들어서

test~go go

test~go go


ESC를 빼고 클라이언트에 적용시

현재 보안 영역 및 개인 정보 설정 가져오기를 선택하고

신뢰된 사이트에 추가를 합니다.

해당 정책을 만들고 난 다음 그룹정책을 받고 rsop.msc로 클라이언트 환경에서

확인 하였습니다.

보기 설정 클릭

신뢰된 사이트 클릭

아 그룹정책이 제대로 배포가 되었습니다.


결론~!

ESC 구성을 하게되면 ESC로 구성된 PC들만 구성이 된다.

ESC 구성을 해지 하고 하게되면 ESC 되지 않은 PC들만 그룹정책을

받아들인다.

신고
posted by System Neophyte
2008.04.24 01:35 Windows Server

실실 IE7.0이 업데이트가 되면서 신뢰된 사이트에 추가 해야 하는 일들이

많습니다. 사용자가 일일이 등록 하는것이 귀찮고 사내에서 써야 하는 사이트임

에도 불구 하고 IE7.0에 신뢰된 사이트에 등록이 되지 않아서 안되는 경우가

많습니다. 그 많은 사용자를 일일이 하기에는 참 번거로운 일입니다.


AD에 Group Policy에는 다음과 같은 기능이 있습니다. 신뢰된 사이트에

추가 시키기..

해당 그룹 정책 설정은 다음과 같습니다.


해당 Time.com에는 test OU밑에 다음과 같은 사용자들이 있습니다.

이 사용자들에게는 IE 7.0이 설치가 되어 있습니다. 해당 그룹정책을 내려보죠

GPMC를 실행하여

Group policy Object에서 새 GPO OBJECT를 만듭니다.

만든 정책 EDIT를 눌러 편집을 합니다.

해당 GPO를 설정 하는 부분이 나오게 됩니다.

여기서 사용자구성- IE유지보수-보안-보안영역 및 콘텐츠 등급을 선택합니다.

현재 보안 영역 및 개이ㄴ 정보 설정 가져오기를 하게되면

팝업창이 나오고 계속을 눌러 진행합니다.

인터넷 등록 정보가 나오게 되는데

여기서 신뢰할수 있는 사이트

다음과 같이 신뢰할 사이트를 넣어 주면 됩니다.

적용을 해보니까. 실제로 잘 안됩니다.

이유는 ....

신고
posted by System Neophyte
2008.04.21 09:34 Trouble Shooting

AD로 WSUS와 연동하여 Windows update정책을 수립하고 난 다음

운영을 하다보면 물론 Group Policy를 잘받고 업데이트도 잘 되는 컴퓨터들이

있는가 하면 Group Policy를 잘 적용 했는데도 불구하고

설치 프로세스를 보게 되면 다운로드는 다 받았는데 '설치가 실패 하였습니다.'

라는 문구를 만나게 되서 이게 뭐가 문제야 라는 생각이 들때가 있습니다

Windows Update관련해서 간단한 조치 방법들 몇개를 알려 드릴까 합니다.


1.SofteWare Distribution

2.WindowsupdateAgent

3.BITS


제가 주관적으로 본 Windows update가 되지 않을 때는 위의 3가지 경우가

가장 많은 것 같습니다. 그외의 상황도 많겠지만 백신이 업데이트를 막는 경우도

있고,AU Service가 동작 하지 않아서 그런 경우도 있습니다.


가장 많이 쉽게 할수 있는 조치로는 Windows Update 캐쉬를 삭제하는 방법이 있습니다.

Software Distribution 폴더를 삭제를 하는 방법이지요.

Softeware Distribution폴더는 그냥 삭제가 되지가 않습니다.

시작-실행-Services.msc를 실행 한 다음 자동 업데이트 또는 Automatic update

관련 서비스를 중지하고

다음 경로를 찾아가서 Software Distribution폴더를

이 폴더를 통째로 삭제를 해주시면 됩니다.

그런 다음 진행을 해보시면 다시 업데이트가 잘 되는 경우가 있습니다.

업데이트 관련 캐쉬가 잘못 작성이 된 경우이고 Windows updater관련해서

거의 잘 해결이 됩니다. 물론 WSUS를 썼을경우 Wuau /detectnow 항목에서

바로 바로 반영되게 해줄때도 이폴더를 날리고 실행을 하면 조금은 빨리

WSUS에 반영되게 됩니다.


2.WindowsupdateAgent 이 문제는 다운로드를 다받았는데 설치가 되지 않을 때

문제입니다. 다 받아놓고 설치에 실패 했습니다 라고 나옵니다.

해당 Windows Update Log를 분석하게 되면

Error 0x80004002 요런 유형의 Error를 만나게 됩니다. 물론 다를수도 있습니다.

해당 문제는 Agent가 말썽을 일으키는 경우라서

Agent를 다시 설치 해야됩니다.

http://go.microsoft.com/fwlink/?LinkId=43264 이곳에서 Windows update Agent를

다시 설치 합니다. 버젼이 2.0이라서 설치를 하고 난뒤 윈도우즈 업데이를 하게 되면

Windows update agent 업데이트 판을 설치하고 그 다음에 정상적으로 다운로드

받게 되고 정상적으로 설치가 됩니다. 해당 작업을 하기전에

Windows update log를 삭제를 해주시기 바랍니다.

%Windir%\WindowsUpdate.log 요녀석이 되겠지요


windows update.log파일에는 WIndows update에 일어난 일들이 상세하게 기록이

되어 있습니다. 이에 해당 내용을 분석하는데 에러가 어디서 났는지

확일 할수가 있습니다. 이것을 보고 분석을 하시면 됩니다.

2번에 해당 하는 작업 순서는 위에 언급한 1번을 실행한뒤 Windows update로그를

삭제 한뒤 다음에 2번에 해당하는 작업을 하시면 됩니다.


3.BITS Au Service가 BITS에 종속 서비스라서 이녀석이 문제가 되면

Windowsn Update도 실패가 일어납니다.


윈도우 업데이트시에는 서비스중에 Automatic Update와 BITS서비스를 사용합니다.

둘 중에 한 서비스만이라도 정상적으로 시작되지 않으면 업데이트 실패 문제가 발생되게 됩니다.

BITS는 SENS서비스에 종속되어 있기 때문에 시작하지 못하는 문제가 있었고 SENS서비스는 아래 관련 레지스트리의 DLL값이

잘못 변경되어 있어 서비스가 정상적으로 시작하지 못하였습니다 이런 경우는

해당 레지 값을 확인 해야됩니다.

%WIN dir%\system32\sens.dll

요런 경우와 해당 dll이 잘 등록이 되었나 확인 하면 됩니다.

또는 BITS가 맛이 간 경우 Micrsoft download사이트에서 다시 설치 하시면 됩니다.

또는 Windows upate 모듈을 다시 재등록 하시는 경우 다음 과 같이

입력 하시면됩니다.

regsvr32 msxml.dll

regsvr32 msxml2.dll

regsvr32 msxml3.dll

regsvr32 wuapi.dll

regsvr32 wuaueng.dll

regsvr32 wuaueng1.dll

regsvr32 wucltui.dll

regsvr32 wuweb.dll

regsvr32 wups.dll

regsvr32 wups2.dll

regsvr32 winhttp.dll

regsvr32 wintrust.dll

regsvr32 softpub.dll

regsvr32 qmgr.dll

regsvr32 qmgrprxy.dll


이거 말고도 여러 가지 장해 요인을 있을수도 있습니다 만

해당 LOG 분석에 에러 코드를 보고 분석 하시면 Windows upate가 안되서

Computer Format하는 삽질은 안했으면 해서 올려  봅니다.

신고
posted by System Neophyte
2008.02.20 15:42 Windows Server

사용자들이 실행 되는 서비스 항목의 접근 제어.

DC 서버에서 dsa.msc를 실행하고 속성을 클릭합니다.

등록정보에서 그룹정책 탭을 선택하신 다음

새로 만들기를 클릭하셔서 해당 그룹 정책에 대한 이름을 적절히 입력합니다.

그리고 난뒤 편집을 클릭합니다.

다음을 찾아 갑니다.

컴퓨터구성-보안설정-시스템서비스 항목을 보시게 되면 실제 컴퓨터에서 도는 Services항목들이 보이시게 됩니다.

해당 하는 정책을 클릭 합니다. 여기서 예를 들어볼 서비스는 자동업데이트(윈도우 자동 업데이트 관련 서비스)서비를 예를 들어 보겠습니다.

해당 자동 업데이트 등록 정보를 보시게 되면

다음과 같이 설정을 합니다.

이 정책 설정 정의 자동 실행

보안 편집을 클릭합니다.

보안 편집을 클릭하게 되면 권한 관련 창이 나오게 됩니다.

추가를 누르셔서 Domain users그룹을 포함 시켜 줍니다. 여기서 시작-중지 및 일시 중지 권한을 거부를 선택을 합니다.

확인을 눌러 종료 합니다.

해당 정책을 반영 하시게 되면..

클라이언트 쪽에서는 다음과 같이 반영이 됩니다.

주의 사항

해당 서비스에 대한 접근 권한이 없게 되므로 실행 및 중지가 되지 않습니다.

예를 들어 해당 그룹 정책을 내리기 전 서비스를 중지 하였고 그 이후에 그룹 정책을 받았다면,

해당 사용자는 서비스를 실행도 중지도 되지 않는다는 것을 꼭 명심 하여 주시기 바랍니다.

사용자들이 시스템 서비스 관련 그룹 정책.

신고
posted by System Neophyte
2008.01.28 15:16 Windows Server

지난 4월에 Microsoft는 Windows Server 2003 및 Windows 2000 그룹 정책을 쉽게 관리할 수 있도록 하기 위해 MMC(Microsoft Management Console) 기반 UI를 제공하는 그룹 정책 관리 콘솔(GPMC)을 출시했습니다. GPMC는 Windows 2000의 기본 도구에 비해 한 차원 높아진 그룹 정책 개체(GPO) 관리 기능을 제공합니다. 기본 도구에서는 GPO 관리 스크립팅이 어렵지만 GPMC에는 많은 공통 GPO 관리 작업을 자동화하는 스크립팅 인터페이스 집합이 포함되어 있습니다. 이러한 스크립팅 인터페이스를 사용하여 GPO 설정에 대한 보고서를 생성하고 GPO를 만들고 복사하며 연결이 해제된 GPO를 찾는 등의 그룹 정책 환경 관리 작업을 할 수 있습니다. Microsoft는 많은 공통 스크립팅 작업을 처리하는 GPMC 스크립트를 몇 가지 제공합니다. 또한 사용자가 사용자 지정 GPO 관리 작업을 수행하기 위해 직접 스크립트를 만들 수도 있습니다.

사용자가 Windows 2000의 도메인 기반 그룹 정책을 관리하려 할 수 있지만, GPMC는 Windows 2003과 Windows XP Professional 컴퓨터에서만 실행됩니다. GPMC의 요구 사항과 기능에 대한 자세한 내용은 http://www.winnetmag.com에서 2003년 7월에 게시된 InstantDoc ID 39190 "Windows Server 2003의 그룹 정책 관리 콘솔"을 참조하십시오. Microsoft 다운로드 센터(http://www.microsoft.com/downloads/details.aspx?FamilyID=c355b04f-50ce-42c7-a401-30be1ef647ea&displaylang=en)에서 GPMC를 다운로드할 수 있습니다. GPMC를 설치할 때 시스템은 미리 작성된 GPMC 스크립트가 모두 포함되어 있는 Scripts라는 폴더를 만듭니다. Windows 2003이나 Windows XP 클라이언트에서 이 폴더는 %programfiles%\gpmc 디렉터리에 있습니다. 주요 관리 스크립트의 확장명은 Windows 스크립트 호스트(WSH)와 관련된 파일 형식 중 하나인 .wsf입니다. 확장명이 .wsf인 스크립트는 VBScript나 JScript로 작성된 다른 스크립트를 호출할 수 있는 XML 형식의 파일입니다. 즉, 이러한 스크립트에서는 VBScript 및 JScript 스크립팅 엔진을 모두 이용할 수 있습니다. 이 문서의 스크립트에는 .wsf 파일을 사용하지 않고 VBScript를 사용합니다.

GPMC 인터페이스는 %programfiles%\gpmc 디렉터리에 있는 gpmgmt.dll에서 구현됩니다. Microsoft는 이러한 인터페이스를 GPO 관리뿐 아니라 GPMC 기능 자동화에 사용할 수 있도록 조정했습니다. 따라서 인터페이스를 사용하여 GPO 마이그레이션에 대한 매핑 테이블을 만드는 등의 GPMC 작업을 스크립팅할 수 있을 뿐 아니라 GPO를 쿼리하고 수정할 수도 있습니다. 그러나 GPMC 인터페이스를 통해 GPO에서 정책 설정을 읽거나 구성할 수는 없습니다. 예를 들어 GPO에서 시작 메뉴에서 실행 제거 관리 템플릿 정책을 사용하도록 설정하는 스크립트를 만들 수 없습니다. 이러한 제한이 단점이긴 하지만 GPMC 인터페이스는 지금까지 사용할 수 없었던 뛰어난 수준의 자동화 기능을 제공합니다. 이제 GPMC 스크립팅을 시작하는 방법과 GPMC 개체를 사용하여 GPO 사용 권한을 검색하고 정책의 결과 집합(RSoP) 보고서를 얻는 등의 다양한 관리 작업을 수행하는 방법에 대해 살펴보겠습니다.

GPMC 스크립팅 시작하기

GPMC 스크립트를 작성하는 방법은 매우 간단합니다. 모든 GPMC 스크립트는 같은 기본 단계를 따라 작성됩니다. WSH 환경에서 사용하는 새로운 개체의 경우와 마찬가지로 우선 사용할 개체의 인스턴스를 만들거나 사용할 개체를 인스턴스화해야 합니다. 모든 GPMC 스크립트에서 가장 먼저 인스턴스화할 개체는 GPM 개체입니다. 이 개체는 GPMC 개체 모델의 루트 개체입니다. 이 GPM 개체는 다양한 기능을 사용할 수 있도록 하는 GPMC 인터페이스에 액세스하는 데 필요합니다. 예를 들어 Active Directory(AD) 도메인에 대한 참조를 만드는 데 사용할 수 있는 IGPMDomain 인터페이스에 액세스하려면 GPM 개체가 필요합니다. AD 도메인에 대한 참조를 만든 후 IGPMDomain의 GetGPO 메서드를 호출하여 IGPMGPO 인터페이스에 액세스할 수 있으며 관리할 특정 GPO에 대한 참조를 만들 수 있습니다. 여기에서는 IGPMGPO 인터페이스에 GPO 관리를 위한 메서드와 속성이 포함되어 있습니다. GPMC 개체 모델에 대한 자세한 내용은 Scripts 폴더에 있는 gpmc.chm 도움말 파일을 참조하십시오. http://msdn.microsoft.com/library/en-us/gpmc/gpmc/group_policy_management_console_reference.asp에 있는 그룹 정책 관리 콘솔 참조 자료에서도 개체 모델에 대한 자세한 정보를 얻을 수 있습니다.

일반적으로 사용되는 인터페이스에는 IGPMConstants도 있습니다. GPMC 스크립팅에서 특수한 인터페이스인 IGPMConstants는 GPMC 스크립트에서 흔히 필요한 GPO 관련 상수를 나타내는 속성 집합을 제공합니다. 예를 들어 GPO를 편집할 수 있는 사용자를 제어하기 위해 사용 권한을 설정해야 하는 경우 파일 시스템과 AD ACL의 복잡한 집합을 사용하여 편집 권한을 나타낼 수도 있습니다. 하지만 이렇게 하려면 많은 코드 작업이 필요하기 때문에 Microsoft는 이러한 작업을 수행할 IGPMConstants 인터페이스를 제공합니다. 이제 IGPMConstants 인터페이스의 PermGPOEdit 속성을 호출하기만 하면 적절한 사용 권한을 나타낼 수 있습니다. IGPMConstants 인터페이스에 액세스하려면 GPM 개체의 GetConstants 메서드를 사용해야 합니다. GetConstants 메서드를 사용하여 GPMConstants 개체에 대한 참조를 얻은 후에는 스크립트에 모든 종류의 GPMConstants 속성을 사용할 수 있습니다.

작업 1은 GPM 및 GPMConstants 개체를 만드는 데 사용하는 코드입니다. 이 코드를 기초로 작성하는 방법은 예제 스크립트 GetGPOPerms.vbs와 RSoPLogging.vbs에 나와 있습니다. 이 스크립트들이 가장 기본적인 것은 아니지만 Microsoft에서 제공하는 GPMC 스크립트와의 중복을 피하기 위해 두 스크립트를 예제로 사용합니다.

작업 1 GPM 및 GPMConstants 개체를 만드는 코드

BEGIN COMMENT
' Code that creates the GPM object.
END COMMENT
Set GPMC = CreateObject("GPMgmt.GPM")
BEGIN COMMENT
' Code that creates the GPMConstants object.
END COMMENT
Set Constants = GPMC.GetConstants()

GPO 사용 권한 검색

작업 2의 GetGPOPerms.vbs 스크립트에서는 몇 가지 GPMC 개체를 사용하여 테스트 도메인에서 GPO 사용 권한을 표시하는 방법을 보여 줍니다. GetGPOPerms.vbs에서는 GPM 및 GPMConstants 개체의 인스턴스화 작업으로 시작합니다. 그런 다음 도메인에 대한 정보를 검색하고 도메인에서 GPO를 관리할 수 있는 유용한 인터페이스인 IGPMDomain에 액세스합니다. IGPMDomain에 액세스하려면 GPM 개체의 GetDomain 메서드를 사용해야 합니다. 이 메서드는 GPMDomain 개체를 반환합니다. 작업 2의 callout A에서 볼 수 있듯이 GetDomain 메서드는 세 가지 인수를 사용합니다. 첫 번째 인수는 관리할 GPO를 저장하는 도메인의 이름입니다. 도메인 이름은 도메인의 DNS 이름(예: mycompany.net)이어야 합니다. callout A에서 볼 수 있듯이 스크립트에서 이 인수의 값을 하드 코딩할 수 있습니다. 또는, 스크립트 사용자가 스크립트를 시작할 때 명령줄에서 도메인 이름을 입력하도록 할 수도 있습니다.

두 번째 인수로 도메인에 연결하는 데 사용할 도메인 컨트롤러(DC)를 지정할 수 있습니다. null 문자열("")은 DC 기본 설정이 없으므로 GetDomain 메서드가 PDC 에뮬레이터를 사용한다는 것을 나타냅니다. 세 번째 인수의 경우 연결에 사용할 DC를 찾는 데 사용할 옵션을 지정할 수 있습니다. 옵션에는 GPM_USE_ANYDC(사용 가능한 DC 사용), GPM_USE_PDC(PDC 에뮬레이터 DC 사용) 또는 GPM_DONOTUSE_W2KDC(Windows 2003을 실행하는 DC 사용)가 있습니다. callout A에서 볼 수 있듯이 GetGPOPerms.vbs에서는 GPMConstants 개체의 UseAnyDC 속성을 사용하여 GPM_USE_ANYDC 옵션을 지정합니다.

도메인에 연결한 후 본격적인 작업이 시작됩니다. 작업 2의 callout B에 있는 코드에서 볼 수 있듯이 GPMDomain 개체의 GetGPO 메서드를 사용하여 사용 권한을 표시할 GPO를 나타내는 GPMGPO 개체를 검색합니다. GetGPOPerms.vbs를 사용하려면 도메인 이름 mycompany.net을 AD 도메인의 DNS 이름으로 바꿔야 합니다. GetGPO 메서드의 인수는 GPO의 이름이 아니라 GPO의 전역 고유 식별자(GUID)입니다. 이 스크립트에는 모든 AD 도메인에 있는 기본 도메인 정책의 GUID가 포함되어 있습니다. 이 GUID는 모든 AD 도메인에서 동일합니다.

스크립트의 사용자가 명령줄에서 필요한 GPO 정보를 제공하는 경우 입력하기 어려운 GUID 대신 GPO의 이름을 입력하게 하는 것이 적합합니다. GPO의 이름이 입력되면 Microsoft가 Scripts 폴더의 lib_commongpmcfunctions.js 파일에서 제공하는 GetGPObyName 함수를 사용하여 해당하는 GUID를 얻을 수 있습니다. GetGPObyName은 IGPMSearchCriteria 인터페이스를 사용하여 도메인에서 모든 GPO를 검색하고 입력한 이름이 일치하면 해당 GUID를 반환합니다. 그러면 스크립트가 이를 GetGPO로 전달합니다. 그러나 GetGPObyName은 JScript 함수입니다. VBScript를 사용하는 경우 GetGPObyName의 VBScript 버전을 작성하거나 Windows 2000 지원 도구에 포함된 IADsTools COM 개체의 GetGPO, GPOName 및 GPOGuid 메서드를 사용할 수 있습니다. 이러한 메서드에 대한 자세한 내용은 http://www.winnetmag.com에서 2003년 4월에 게시된 InstantDoc ID 38286, "IADsTools를 사용한 스크립팅"을 참조하십시오.

그 다음 작업으로 GPMGPO 개체의 GetSecurityInfo 메서드를 사용하여 GPO 사용 권한을 검색합니다. GetSecurityInfo 메서드는 스크립트에서 GPOSec 변수에 할당하는 GPMSecurityInfo 컬렉션 개체에 대한 참조를 반환합니다. GPMSecurityInfo 개체에는 GPO에 할당된 사용 권한 집합이 포함되어 있습니다. 스크립트에서는 컬렉션을 순환하면서 GPMSecurityInfo 개체의 Count 속성을 사용하여 컬렉션에 있는 사용 권한 항목의 수를 세고 반환합니다.

각 사용 권한 항목을 검색하기 위해 스크립트에서는 GPMPermission 개체에 대한 참조를 반환하는 GPMSecurityInfo 개체의 Item 속성을 사용합니다. 이 참조를 Ace 변수에 할당한 후에는 GPMPermission 개체의 Trustee 속성을 사용하여 GPMTrustee 개체에 액세스합니다. GPMTrustee 개체의 TrusteeName 속성을 호출하여 현재 사용 권한에 할당된 사용자나 그룹의 이름을 확인한 다음 이 이름을 PrincipalName 변수에 할당합니다.

작업 2의 callout C에 있는 코드에서는 Select Case 문을 사용하여 사용자나 그룹에 할당된 보안 권한을 확인합니다. GPO에는 IGPMConstants 인터페이스에 정의된 대로 다섯 가지 보안 권한이 있을 수 있으며 Select Case 문에 이러한 다섯 가지 권한이 포함되어 있습니다.

Select Case 문의 첫 번째 줄에서는 VBScript 런타임 엔진에게 Ace.Permission 값(즉, GPMPermission 개체의 Permission 속성 값)을 각 경우별로 비교하도록 지시합니다. Permission 속성 값이 다섯 가지 보안 권한 중 하나와 일치하면 이 사용 권한에 대한 이해하기 쉬운 설명이 Perm 변수에 할당됩니다. 마지막으로 스크립트에서는 WSH의 WScript.Echo 명령을 사용하여 사용자나 그룹의 이름과 사용 권한을 콘솔 화면에 출력합니다.

작업 2 GetGPOPerms.vbs

BEGIN COMMENT
' Create the GPM and GPMConstants objects, then connect to the domain.
END COMMENT
Set GPMC = CreateObject("GPMgmt.GPM")
Set Constants = GPMC.GetConstants()
‘ BEGIN CALLOUT A
Set GPMCDomain = GPMC.GetDomain("mycompany.net", "", 
Constants.UseAnyDC)
‘ END CALLOUT A
‘ BEGIN CALLOUT B
BEGIN COMMENT
' Create an object for the GPO for which you want to list the 
permissions.
END COMMENT
Set MyGPO = GPMCDomain.GetGPO("{31B2F340-016D-11D2-945F-00C04FB984F9}")
BEGIN COMMENT
' Get the permissions.
END COMMENT
Set GPOSec = MyGPO.GetSecurityInfo()
‘ END CALLOUT B
For indx=1 to GPOSec.Count
BEGIN COMMENT    ' Set the ACE to the Ace variable.
END COMMENT    Set Ace = GPOSec.Item(indx)
BEGIN COMMENT    ' Find out the username or group name for the ACE.
END COMMENT    Set UsrorGrp= Ace.Trustee    PrincipalName=UsrorGrp.TrusteeName
‘ BEGIN CALLOUT C
BEGIN COMMENT    ' Find out which permission the user or group has.
END COMMENT    Select Case Ace.Permission       Case Constants.permGPOApply          Perm="Read and Apply Group Policy"       Case Constants.permGPOEdit          Perm="Edit Group Policy"       Case Constants.permGPOEditSecurityAndDelete          Perm="Edit Group Policy, Modify Security and Delete 
Group Policy"       Case Constants.permGPORead          Perm="Read Group Policy"       Case Constants.permGPOCustom          Perm="Custom Permission"    End Select
‘ END CALLOUT C    WScript.Echo "The User or Group: " & PrincipalName & _       " has the following permission: " & Perm
Next

RSoP 보고서 얻기

GPMC의 유용한 점은 그룹 정책 로깅과 그룹 정책 계획이 가능하다는 것입니다. GPMC 인터페이스를 사용하여 프로그래밍 방식으로 그룹 정책 로깅과 그룹 정책 계획 세션에서 결과를 얻을 수 있습니다. 예를 들어, 그룹 정책 로깅 세션에서 결과를 얻으려면 RSoP WMI(Windows Management Instrumentation) 공급자를 사용해야 합니다.

작업 3의 RSoPLogging.vbs에서는 RSoP 인터페이스를 사용하여 로깅 쿼리를 실행하고 HTML 형식으로 로깅 보고서를 만드는 방법을 보여 줍니다. 스크립트의 처음 몇 줄에서는 GPM과 GPMConstants 개체를 만듭니다. 그런 다음 GPM 개체의 GetRSOP 메서드를 사용하여 GPMRSOP 개체의 인스턴스를 만듭니다. 이 메서드는 세 가지 매개 변수를 사용하는데 그 중 첫 번째 매개 변수는 RSoP 모드를 지정합니다. 작업 3의 callout A에 있는 코드에서 볼 수 있듯이 이 모드를 제공할 수 있는 한 가지 방법은 GPMConstants 개체의 RSOPModeLogging 속성을 사용하는 것입니다. RSoP 계획 세션을 수행하는 경우에는 RSOPModePlanning 속성을 대신 사용합니다. 두 번째 매개 변수는 이전 RSoP 데이터가 있는 WMI 네임스페이스의 경로를 지정합니다. 이 경우에는 이전 데이터가 없기 때문에 매개 변수는 null 문자열입니다. 마지막 매개 변수는 항상 0입니다.

GPMRSOP 개체의 인스턴스를 만든 후 스크립트에서는 RSoP 로깅 쿼리에 대한 GPMRSOP 개체의 LoggingComputer와 LoggingUser 속성을 설정합니다. LoggingComputer 속성은 대상 컴퓨터의 이름(이 경우에는 myworkstation)을 지정하고 LoggingUser 속성은 대상 사용자의 이름(이 경우에는 Darren)을 지정합니다. 그런 다음 매개 변수가 없는 GPMRSOP 개체의 CreateQueryResults 메서드를 호출하여 로깅 쿼리를 실행합니다.

마지막으로 스크립트는 두 가지 매개 변수를 사용하는 GPMRSOP 개체의 GenerateReportToFile 메서드를 호출합니다. 첫 번째 매개 변수는 생성할 보고서의 형식(HTML 또는 XML)을 지정합니다. 스크립트에서는 Constants 개체의 ReportHTML 속성을 사용하여 HTML 보고서를 지정합니다. XML 보고서를 받으려면 ReportHTML 속성 대신 ReportXML 속성을 사용하면 됩니다. 두 번째 매개 변수는 보고서의 경로 이름을 지정합니다.

GenerateReportToFile 메서드는 GPMResult 개체에 대한 참조를 반환할 수 있습니다. GPMResult 개체에는 보고서 실행을 마친 시기나 보고서 실행에 실패한 시기를 확인하는 데 사용할 수 있는 Result와 Status 속성이 있습니다. 그러나 RSoPLogging.vbs에서 보고서의 생성은 마지막 작업이므로 보고서가 완료된 시기를 알 필요가 없습니다. 스크립트 실행이 끝나면 보고서가 완료되었음을 알게 되므로 스크립트에서는 GPMResult에 대한 참조를 저장하지 않습니다.

작업 3 RSoPLogging.vbs

BEGIN COMMENT
' Create the GPM and GPMConstants objects.
END COMMENT
Set GPMC = CreateObject("GPMgmt.GPM")
Set Constants = GPMC.GetConstants()
‘ BEGIN CALLOUT A
BEGIN COMMENT
' Create a reference to an RSoP object.
END COMMENT
Set RSOP= GPMC.GetRSOP(Constants.RSOPModeLogging,"",0)
BEGIN COMMENT
‘ END CALLOUT A
' Set the RSoP logging session’s properties.
END COMMENT
RSOP.LoggingComputer="myworkstation"
RSOP.LoggingUser="darren"
BEGIN COMMENT
' Execute the RSoP logging query and send the results to an HTML file.
END COMMENT
RSOP.CreateQueryResults()
RSOP.GenerateReportToFile Constants.ReportHTML,"c:\reports\myrsop.html"
신고
posted by System Neophyte
2008.01.24 16:35 Windows Server

해당 도메인을 선택 마우스 우클릭 속성을 선택합니다.

해당 메뉴에서 그룹정책을 클릭 새로 만들기 클릭 하고 난뒤

새 정책에 적절한 이름을 넣어줍니다.

그리고 난 뒤에 편집을 클릭합니다.

그룹정책 화면이 보입니다.

컴퓨터구성-Windows 설정-보안설정-로컬정책-감사정책-개체 엑세스 감사를 클릭합니다.

설정을 다음과 같이 설정합니다.

그룹정책에 대한 설정은 끝나고 이제 공유 폴더에 관한 설정을 하는 부분입니다.

폴더를 하나 만드신 다음 해당 폴더를 마우스 우클릭 속성을 선택합니다.

선택하신다음 공유탭에서 사용권한을 선택합니다.

공유를 할 사용자를 적절히 추가합니다.

보안탭을 선택한 다음 해당 사용자나 그룹을 추가합니다.

다음 고급 버튼을 클릭합니다.

추가 사용자를 누르게 되면 사용자 및 그룹을 선택하는 화면이 나오게 되고

적절한 사용자나 그룹을 넣어줍니다 넣어주고 나서 확인을 클릭 하게 되면

다음과 같은 화면을 볼 수가 있습니다.

파일 만들기 /데이터 쓰기

폴더 만들기/ 데이터 추가 항목에 체크를 하고 확인을 클릭합니다.

실제 이벤트 뷰어에서는 보안 로그에서 576,540부분에 대해서 확인 할 수 있습니다.

이벤트 ID 576에 대한 특수 권한

이벤트 ID 540 공유폴더에 접근한 사용자

참고사항 http://www.microsoft.com/korea/technet/security/topics/serversecurity/tcg/tcgch03n.mspx

신고
posted by System Neophyte
prev 1 next