Best to have a read of sudoers(5) §Security Notes. There are a lot of pitfalls in allowing script to be run at elevated privilege and if you get it wrong then a knowledgeable user can escalate privileges all the way to root.

The biggest pitfall of all is leaving the script so that non-root users can change it.

Make sure it is executable only by root. Make sure it is writeable only by root. Preferably make it READABLE only by root. Specify absolute paths to every executable used within the script. If the script takes parameters, sanitise them thoroughly. Check the enclosing directory's permissions too, to make sure no-one can delete and replace the script. If the script calls other scripts, make sure they are protected at least as well as the main script.

Then when you've done all that - don't let non-root users run the script