1
การรีสตาร์ทบริการตามกำหนดเวลาด้วย Powerhshell เป็นบัญชีบริการที่ไม่ใช่ผู้ดูแลระบบ
ก่อนที่ฉันจะโดนยิงฉันรู้วิธีกำหนดเวลางานเริ่มบริการใหม่ด้วย PowerShell หรือให้สิทธิ์ผู้ใช้ที่ไม่ใช่ผู้ดูแลระบบเพื่อเริ่มบริการใหม่ นั่นไม่ใช่ปัญหา อย่างไรก็ตามปัญหาคือการรวมกันของทั้งสามงานรวมกัน ฉันมีบริการ windows ที่ต้องการประมวลผลไฟล์ในโฟลเดอร์เครือข่าย ดังนั้นจึงเข้าสู่ระบบด้วย "บัญชีบริการ" ที่จริงแล้วเป็นเพียงบัญชีโดเมนปกติ บัญชีโดเมนนี้ไม่ใช่ผู้ดูแล แต่มีสิทธิ์การเข้าถึงโฟลเดอร์ดังกล่าว บริการทำงานได้ดีและทำงานได้ อย่างไรก็ตามบางครั้งมีข้อผิดพลาดในไฟล์ใดไฟล์หนึ่งที่ป้องกันไฟล์อื่นไม่ให้ถูกประมวลผล โดยปกติจะใช้เวลาสักครู่ก่อนที่คนจะสังเกตเห็นและมีงานค้างบางส่วน ดังนั้นฉันจึงสร้างสคริปต์การตรวจสอบใน PowerShell ที่สำรวจโฟลเดอร์เครือข่ายสำหรับไฟล์ที่ผิดพลาดเหล่านี้ หากพบไฟล์เหล่านั้นจะถูกย้ายไปยังโฟลเดอร์ชั่วคราวเพื่อตรวจสอบและจำเป็นต้องเริ่มบริการใหม่ ฉันให้สิทธิ์บัญชีบริการผ่านนโยบายกลุ่มเพื่อเริ่มและหยุดบริการ เมื่อฉันเข้าสู่เซิร์ฟเวอร์ด้วยบัญชีบริการฉันสามารถเริ่มบริการด้วยตนเองโดยใช้ Services MMC ฉันยังสามารถเรียกใช้สคริปต์ powershell และทำสิ่งที่ควรจะทำ: สำรวจโฟลเดอร์ย้ายไฟล์และเริ่มบริการ ที่ดี! ในระยะต่อไปฉันสร้างงานที่กำหนดเวลาไว้ซึ่งทำงานทุกๆ 10 นาที งานใช้บัญชีบริการเดียวกับบริการเพื่อเรียกใช้งานสคริปต์ PowerShell มีการทำเครื่องหมายที่ช่อง "ดำเนินการด้วยสิทธิ์ระดับสูง" อย่างที่ฉันบอกว่าสคริปต์ powershell ต้องการการเข้าถึงไดรฟ์เครือข่ายดังนั้นฉันจึงไม่สามารถเรียกใช้ในฐานะผู้ดูแลระบบเซิร์ฟเวอร์ในพื้นที่และฉันไม่ต้องการใช้ข้อมูลประจำตัวของผู้ดูแลโดเมนสำหรับงานที่มีลักษณะเช่นนี้ (ฉันพยายามใช้หลักการของสิทธิ์น้อยที่สุดเท่าที่จะทำได้) ฉันให้สิทธิ์บริการบัญชี "เข้าสู่ระบบเป็นชุดงาน" บนเซิร์ฟเวอร์ภายในโดยใช้ Local Security Policy MMC ตอนนี้สำหรับส่วนที่ฉันไม่สามารถเข้าใจได้: ในเวลาที่กำหนดภารกิจที่กำหนดเวลาไว้เสร็จสมบูรณ์แล้วและสคริปต์ PowerShell …