STtools

1.2.10

Tools for school system admins.

Get-STGroupsFromCSV
Creates group accounts based CSV (plus prefix/postfix options to flexibly create group names)

ConvertFrom-STEduHubSF / ConvertFrom-STEduHubST
Converts CASES EduHub format Staff/Student CSV files into objects that can be piped into New-ADUser

Set-STUser
Update user account properties to match the incoming
Tools for school system admins.

Get-STGroupsFromCSV
Creates group accounts based CSV (plus prefix/postfix options to flexibly create group names)

ConvertFrom-STEduHubSF / ConvertFrom-STEduHubST
Converts CASES EduHub format Staff/Student CSV files into objects that can be piped into New-ADUser

Set-STUser
Update user account properties to match the incoming ADUser compatible object to ensure things like changed names are updated.  Also Creates a home directory path if it does not exist, and gives the user Full Control of that directory.

New-STUser
Wraps New-ADUser, adding complex pseudo-random password generation, home directory creation and permission setting, and an email report

Set-STOrganizationalUnit
Moves users to the OU specified in the userOUs parameter (a Hashtable of OU => @(<ADUser objects>))

Examples:

# Year level groups for students
# Students are assigned to groups according to their year level based n their SCHOOL_YEAR in CASES
# eg. Year7, Year8, ...
Get-STGroupsFromCSV -csvfile "\\path\to$\STUDENT.csv" -prefix "Year" -username_header "STKEY" -group_header "SCHOOL_YEAR" -stripzeros -filter {$_.STATUS -eq "ACTV"} |ForEach-Object {
   Remove-ADGroupMember -Identity $_.Identity -Members $_.NonMembers -Confirm:$false -PassThru
   Add-ADGroupMember -Identity $_.Identity -Members $_.Members -Confirm:$false -PassThru
}

# Year level groups for staff
# Staff are assigned to groups according to the year levels of classes in their timetabler
# eg. 7teachers, 8teachers ...
Get-STGroupsFromCSV -csvfile "\\path\to\classes\taught.csv" -username_header "Teacher Code" -group_header "Roll Class Code" -postfix teachers -onlynumbers |ForEach-Object {
   Remove-ADGroupMember -Identity $_.Identity -Members $_.NonMembers -Confirm:$false -PassThru
   Add-ADGroupMember -Identity $_.Identity -Members $_.Members -Confirm:$false -PassThru
}

# Staff group
# Staff are assigned to the Staff group according to them being active in CASES
Get-STGroupsFromCSV -csvfile "\\path\to\file\with\staff.csv" -username_header "SFKEY" -group_name "Staff" -filter {$_.STAFF_STATUS -eq "ACTV"} |ForEach-Object {
   Remove-ADGroupMember -Identity $_.Identity -Members $_.NonMembers -Confirm:$false -PassThru
   Add-ADGroupMember -Identity $_.Identity -Members $_.Members -Confirm:$false -PassThru
}

# Class groups for students
# Students are assigned to groups according to classes they have in timetabler
# eg. 07ENG1, 08ENG3, ...
Get-STGroupsFromCSV -csvfile "\\path\to\file\with\classes.csv" -username_header "Student Code" -group_header "Class Code" |ForEach-Object {
   Remove-ADGroupMember -Identity $_.Identity -Members $_.NonMembers -Confirm:$false -PassThru
   Add-ADGroupMember -Identity $_.Identity -Members $_.Members -Confirm:$false -PassThru
}
Show more

Installation Options

Copy and Paste the following command to install this package using PowerShellGet More Info

Install-Module -Name STtools -RequiredVersion 1.2.10

You can deploy this package directly to Azure Automation. Note that deploying packages with dependencies will deploy all the dependencies to Azure Automation. Learn More

Manually download the .nupkg file to your system's default download location. Note that the file won't be unpacked, and won't include any dependencies. Learn More

Author(s)

Eric van de Paverd

Copyright

(c) 2018 Eric van de Paverd. All rights reserved.

Package Details

Owners

Functions

Get-STGroupsFromCSV Set-STOrganizationalUnit New-STUser Set-STUser ConvertFrom-STEduHubST ConvertFrom-STEduHubSF

Dependencies

Release Notes

changed description in manifest to use here-string

FileList

  • STtools.nuspec
  • STtools.format.ps1xml
  • STtools.psd1
  • STtools.psm1
  • .git\COMMIT_EDITMSG
  • .git\config
  • .git\description
  • .git\FETCH_HEAD
  • .git\HEAD
  • .git\index
  • .git\ORIG_HEAD
  • .git\hooks\applypatch-msg.sample
  • .git\hooks\commit-msg.sample
  • .git\hooks\post-update.sample
  • .git\hooks\pre-applypatch.sample
  • .git\hooks\pre-commit.sample
  • .git\hooks\pre-push.sample
  • .git\hooks\pre-rebase.sample
  • .git\hooks\pre-receive.sample
  • .git\hooks\prepare-commit-msg.sample
  • .git\hooks\update.sample
  • .git\info\exclude
  • .git\logs\HEAD
  • .git\logs\refs\heads\master
  • .git\logs\refs\remotes\origin\master
  • .git\objects\03\3af5c6e8fbb878c2be5c988ca8991d6b7bfc64
  • .git\objects\04\314544b82fc5369fefbae6a1146ff86dd95c18
  • .git\objects\0e\067b16f4ebe54be097cb05a9021848160d874e
  • .git\objects\0e\59d4078b928efa27ffcb4d51e40da6eddd6d9d
  • .git\objects\11\9fc8c8b8b5dbed409f842a937a8a8494c5e149
  • .git\objects\12\4254076f93d3dc90cd91c2497d52c17dc62f93
  • .git\objects\14\199be4672f7ee001a57afb374e5bd0841b057a
  • .git\objects\15\f691686075b0e73bebf0c04299a43145d8a877
  • .git\objects\16\2103059ffb935f8c2cdba003117776f192b232
  • .git\objects\16\a24ead28af7742343e47673dc298d0db084c8b
  • .git\objects\17\c18f775dfbbede686a4788315ebe13d41c947a
  • .git\objects\17\c55df8500881dba4a365a74efb2b2f6530ac18
  • .git\objects\19\6beec85d1777783fc8333c3a7a23f1591c179a
  • .git\objects\1a\10915a9437d0990a5d4e7d52f5e3c439ea6944
  • .git\objects\1a\2eac7c94286be9c2d3d921f352321b3c70c8d9
  • .git\objects\1b\4f73d3d84a3fce52f3e71df78e1fc2bdd81ade
  • .git\objects\1d\050b2af4effced4bf44fb7d1d114fd010a2ebe
  • .git\objects\23\c510aba79a73f828bd69adae51cecb1a33f59d
  • .git\objects\27\77e5e5551dee7378cc17e53acb03d661c15c5e
  • .git\objects\2a\1b70b7217571aae86253bf8a8f1ad39a944c1c
  • .git\objects\2f\43c6158e002e58ab30b8e0f4fb45f16f0a3fba
  • .git\objects\30\87d9a063a2a0df818bc8c10f9a351fd718c428
  • .git\objects\33\35efa7bd80ad14bfc28a33dd5333d321e23fab
  • .git\objects\36\4572e905732255ed971a71370446091ed990c3
  • .git\objects\36\5f5a9b664eb42facf8f4f274c515a8287e169a
  • .git\objects\38\7ecf9943abb46509c635a4445632b67435a8e1
  • .git\objects\39\72f2af861ca4b3fadeef6a936bd77961387f8d
  • .git\objects\3a\6a4fd75ed85571ea0c2c5f3e41224f825e1522
  • .git\objects\49\07516cb85e81b6360d90df0c246dcd83900825
  • .git\objects\49\397727c8845da21d0de49a0cfe0403bd61082c
  • .git\objects\49\5609bc317d72da6c56ffe07668357a86fbfc63
  • .git\objects\4b\ec85560494edff3e188ca89b836649a72d2d29
  • .git\objects\4c\6d0e092523af0e8b3c0c18ea8a59c5b06092de
  • .git\objects\5a\aaf43b2a2d8d67e25e7ee0c072f45a67ac911f
  • .git\objects\61\a171608c00a718aac87aa6bef8cdc25120d910
  • .git\objects\69\7b055f88b912fdee2083e20e0baf3a8a03e787
  • .git\objects\69\c31b16b92e60de16651b4beaa16e2f8f55653f
  • .git\objects\6a\480abdfeb9ac4908deafed07c93bc0ba83c3aa
  • .git\objects\6b\72eb63013426a5fed8114be5e9e1e905e1771f
  • .git\objects\6c\647d4d61da4f7355b19e582732481d0eca3184
  • .git\objects\6f\44d9c94e00e3110b96da6d206315a8281e7930
  • .git\objects\70\de801e5e1b31413eab79380f677eb52cbd4b53
  • .git\objects\73\77deae804c90e3fc8855c4660709fd5897c6c4
  • .git\objects\79\959cdd3450d4def22ff62127d99d671acd7a48
  • .git\objects\7d\65a558903750de2936f2b7346c3ee1ff06c795
  • .git\objects\7e\5e22a0a2aee312f0523a4c9099635ef88082b7
  • .git\objects\7f\ba7edd257878459e25cafa4622febb8be18d83
  • .git\objects\80\9d73b58ca326ec387e1d90cc5d4454fee61849
  • .git\objects\85\ed19d35512131b29fb6398fb55222cb49d1074
  • .git\objects\8d\d320a22ccc37408ccb83daec5d65d750cde0b0
  • .git\objects\8e\029eb1e300efb558024e195b8ac356b0149b8b
  • .git\objects\94\392fa99d009246326ae54dd66529ae5629ff39
  • .git\objects\95\677f705660fb7fc56267ac04911d876c05ce69
  • .git\objects\95\acb2c1d2b7d7b15f308d5430f9fbc6cc8d3ec9
  • .git\objects\96\e213e92c3322256b396ef3683e63c4c54cd5e9
  • .git\objects\9d\57bed8cd1619b9a82de18362ef665a49eec5df
  • .git\objects\9e\eb337895b089fd5c87e29b1b6eb8c1a9eeee3e
  • .git\objects\a0\b967cd8759690118fff565242ab3ae349e68f8
  • .git\objects\a5\ae8290776121fd38870d4d0d63a8fc4e90b0ec
  • .git\objects\a7\2f5627e7f2eda92830e933164057bd54616f73
  • .git\objects\a9\8b59e196d99996e11690c02bcee9875f9353ac
  • .git\objects\a9\e80005ce6c7495e6a36583ed802e19713f94a1
  • .git\objects\ac\5a9a94d344192761bcd354fe3207068d50e3ec
  • .git\objects\b0\b69a84aad842f06a519d76817b414c39ebf3f9
  • .git\objects\b6\f79aa353a6101a499972819649ac2aef5b2429
  • .git\objects\b7\4fc7fdea48cccfdbd353fc3eb9626d2369f870
  • .git\objects\b8\142be75c2dc2f2353c2c99c0afb52ee08eddcf
  • .git\objects\be\0518b048811a7de7d4dc6d7ae2036a27201a51
  • .git\objects\bf\a5b1040c08a02682d0465b51752031e8c35b28
  • .git\objects\c3\b98c62c694611cbc352a05086d4fa1106bede3
  • .git\objects\c5\74e1202b72abac6be3df02d2835bfed726281a
  • .git\objects\c5\d02bdb1fdf5c5a02d95e600c42cabb8ee9eeaf
  • .git\objects\cd\af601418dccaa290d6315560ae4de99b5146dd
  • .git\objects\ce\a9975ebef423bd3f35a4dc0fac96db3d0da9c3
  • .git\objects\d0\f470d2a5847948dcaf6737717780e34ebb8ade
  • .git\objects\d3\a07067a6ddd50b531aa100a4a3869730d09e79
  • .git\objects\d4\305fbbfe41866d47e859a3869c942978633331
  • .git\objects\d4\5d6a7883ff5a03c5c757238940b43310a9b518
  • .git\objects\dd\f9d499a92103beef2658995b2848b955aae847
  • .git\objects\e0\3a69cd3d3c5b8e23f70e4737e83f0a5aea2948
  • .git\objects\e2\4b7139315da00a5f162ea068d065c3d70e501d
  • .git\objects\e4\589a7053bcafb64c2c397746f2fc916645393c
  • .git\objects\e4\8fdc455f93e7db6de1b50000ea0b95e3189f16
  • .git\objects\eb\ee616edeee77081a681f2e98ca207e2dd43032
  • .git\objects\ec\3b6d430d5adec5056c38c491cb53656f2b27eb
  • .git\objects\f0\23972c9e6079ce50d2f135ed20fdd4450f6db0
  • .git\objects\f3\5c8d0c6b8f121a48f191fc1fca02dd6e2f115c
  • .git\objects\f4\387783b78073513a0b39450a8dfc5037211067
  • .git\objects\f6\43dae7b0cebe6dd90c8e20a749011c357d0a03
  • .git\objects\f6\4d0882fca2b85f0abe81ddb621ec3b4377e5ba
  • .git\objects\f9\b2aa380e6b146260ba827f7e963b61dcdd07a8
  • .git\objects\fb\5fbbd4565fd12587ec4a5b24b6d2d856f3d58b
  • .git\objects\fe\161a797c1dc4ac7232c95d817e1e6653813a8f
  • .git\refs\heads\master
  • .git\refs\remotes\origin\master
  • .git\refs\tags\1.2

Version History

Version Downloads Last updated
1.3.2 280 11/21/2019
1.3.1 73 5/6/2019
1.3.0 40 2/11/2019
1.2.14 21 2/4/2019
1.2.13 15 2/4/2019
1.2.12 15 1/30/2019
1.2.11 50 10/1/2018
1.2.10 (current version) 26 9/10/2018
1.2.9 18 9/10/2018
1.2.8 23 8/31/2018
1.2.7 25 8/17/2018
1.2.6 18 8/13/2018
1.2.5 19 7/30/2018
1.2.4 16 7/30/2018
1.2.3 21 7/19/2018
1.2.2 15 7/16/2018
1.2.1 36 3/26/2018
1.2 16 3/19/2018
1.1 14 3/19/2018
1.0 29 2/19/2018
Show less