Powershell로 Kix 스크립트 교체

Powershell로 Kix 스크립트 교체

현재 Kix 스크립트를 Powershell 스크립트로 대체하려고 하며 그룹 멤버십을 테스트하여 네트워크 드라이브를 매핑하는 방법이 궁금합니다. 현재 kix 스크립트는 기본적으로 모든 사용자 그룹에 대해 if 문을 수행하고 사용자가 해당 그룹의 일부인지 테스트하고, 그렇다면 네트워크 드라이브를 매핑합니다. 예는 다음과 같습니다.

If InGroup("ADGROUP")
  Use m: "\\server\share"
EndIf

이것이 가장 효율적인 방법인지는 의문이지만 PowerShell에서 동일한 작업을 수행할 수 있는 방법과 Active Directory에서 사용자를 위해 드라이브와 프린터를 매핑하는 적절한 방법에 대해 사람들이 권장하는 방법이 무엇인지 묻고 싶었습니다.

이 정보가 필요한 경우 모든 클라이언트는 Windows Vista/7을 사용하고 있으며 이제 막 AD 2008로 전환하고 있습니다.

답변1

그룹 정책 기본 설정을 사용하여 AD의 드라이브를 매핑합니다.그룹 정책 기본 설정을 사용하여 그룹 멤버십을 기반으로 드라이브 매핑을 참조하세요.자세한 내용은. 또한 라이브러리에 네트워크 위치를 추가하는 방법을 보여주는 사용자 교육을 권장합니다.

답변2

나는 (내가 만든) 기존 Kix 파일을 Powershell로 변환하는 데 3일을 보냈습니다.

내가 찾은 바에 따르면 Powershell은 아직 로그인 스크립트로 사용할 준비가 완전히 되어 있지 않습니다. 최신 버전일 수도 있지만 현재 Powershell 2.0에서는 사용되는 명령이 주로 VBS에서 포팅된 것으로 나타났습니다.

Kixtart의 "If" 명령은 수많은 클라이언트 사이트에서 사용해봤고 작동하기 때문에 매우 효과적이라고 생각합니다. 간단하고 간단하며, 이전에 Kix를 사용해 본 적이 없는 시스템 관리자도 명령을 쉽게 읽을 수 있습니다. 즉, Kixtart의 동일한 드라이브 매핑 명령과 Powershell에서 동일한 작업을 수행하기 위해 작성해야 하는 명령을 비교하면 지나치게 복잡해 보입니다.

나는 내 블로그에 이에 대해 다음과 같이 썼습니다.http://thisishelpful.com/kix-login-script-remote-desktop-services-server-terminal-server.html. 내 kix 스크립트와 수정된 Powershell 스크립트를 비교하여 업데이트할 예정이며, 무슨 뜻인지 알 수 있을 것입니다.

도움이 되길 바랍니다.

답변3

AD 측면에서는 Quest의 AD cmdlet을 살펴보는 것이 좋습니다.

답변4

PowerShell에서 그룹 멤버십을 확인하려면 다음을 수행하세요.

$wid=[System.Security.Principal.WindowsIdentity]::GetCurrent()
$prp=new-object System.Security.Principal.WindowsPrincipal($wid)
$adm=[System.Security.Principal.WindowsBuiltInRole]::Administrator
$IsAdmin=$prp.IsInRole($adm)

마지막 두 줄은 내장된 그룹에 대해 따라야 할 패턴입니다(이들의 수). 과부하도 있고IsInRole예를 들어 문자열을 사용합니다. "도메인\그룹".

실행 중인 드라이브를 매핑하는 것이 net use ...가장 간단할 것입니다(PowerShell은 쉽게 콘솔 실행 파일을 호출할 수 있습니다).

관련 정보