This is an individual assignment, and you must write your scripts yourself and not get code or direct help on code from anyone else. If you find help online, in books, etc, you must give a reference to where you got it and what you got from there. You may work together to discuss and understand the requirements, but you must work on your own to figure out how to do what is necessary for completing the assignment. Examples from class should point you very far in the right direction. In short, the code you submit for this assignment is to be uniquely your own code, not simply copied from somewhere else, copied and modified from somewhere else, or created all or in part by someone else. If you do this properly, it will be immediately obvious that the code you submit is uniquely yours and was done uniquely and independently by you. See syllabus and notes and class discussion about academic integrity and plagiarism. If you have any questions about this, talk with the teacher right away, so you are sure that your work and submission is appropriate. Recommendation/Caution
It is highly recommended that you judiciously use the VMware/vSphere “snapshot” capability so you can restore your Windows server if at some point you make a “total mess” of Active Directory’s user accounts, organizational units (OUs), etc. Possibly the best way to do this is to make a snapshot right before you start doing anything for this assignment so that you can revert to this original starting point if necessary. As always, keep only one snapshot, and don’t snapshot memory (RAM). I reserve the right to, without notice, delete any snapshots that are on machines that have multiple snapshots and/or have snapshotted RAM, since doing so can lead to using much more disk space than we can afford to be using on our system. (Snapshots I have made do not count toward “multiple snapshots”.)
Of course, if you are creating your scripts on your Windows Server (as opposed to eLab or some other location), you would need to download them to another location before restoring a snapshot… or you would totally lose the scripts and have to recreate them from scratch… Something I’m sure you do not want to have to do! Overview Here are some general requirements for this assignment: • You will create a set of scripts for managing Active Directory (AD) User Accounts on your Windows domain or another server, as specified in the scripts’ parameters. From a high-level perspective, these scripts will manage user account creation/deletion, querying, activation/deactivation, and password management. • You will write all these scripts on eLab or your home computer (if you choose to use a machine other than eLab, you will be responsible for making sure the Powershell Active Directory module is installed correctly on that machine; it is already available on eLab) and when you have completed the assignment you will ZIP up the files and post them as part of your submission in Canvas. Name the ZIP file HW09-LLLLFF.zip, where LLLLFF is the account name you have been assigned this semester. For example, for “Sally Brown”, LLLLFF would be BrowSa, and the ZIP file would be named HW09-BrowSa.ZIP. • Your scripts will be written to interact with whatever server is specified in the pServer parameter for each script, and to use the credentials of whatever user is specified in the pCredential parameter of each script. These do not accept input from the pipeline. The server parameter is optional, and has a default of “10.6.20.48”. The credential parameter is mandatory, and, if not specified on the command-line, the default credential should be obtained by prompting for it via get-credential. • Your scripts will be able to manage Active Directory user accounts on any server for which you are authorized. You should test to make sure that you can run your scripts on your WC and WS machines, and that they work interacting with AD on your WS and on my server, c617aPowershell.CIS620.TurkDom.Net, 10.6.20.48. c617aPowershell has special accounts, OUs, and permissions for you to manage accounts within your OU, so you should be especially careful to test them there. Of course, because it has a private IP address, in order for your script(s) to interact with this computer you will have to be on another machine within the private class network we have been using all semester – your cloned Windows Server and Windows Client are the two best options for this. • You have been given an account and organizational unit (OU) on my server through which and within which you may manage accounts. Specifically, any accounts you create on my machine will reside only within your specified OU. All student accounts and OU’s will reside within a toplevel OU on my machine named “CIS620_2017_1”. For instance, a student by the name of “Sally Brown” would have an account on this server named “HW09_BrowSa” and would manage an OU on this server named “HW09OU_BrowSa”. Notice that this is the normal LLLLFF naming convention, but with “HW09_“ or “HW09OU_” added on the front. Your credentials will be specified as “<Domain>\<Account>”, and the password will be the one that you were assigned to use this semester. have finished this class! :-) I will take any infractions against these rules very seriously.