Warning Livedoc is no longer being updated and will be deprecated shortly. Please refer to https://documentation.tjhsst.edu.

Account provisioning

From Livedoc - The Documentation Repository
Jump to: navigation, search

Even though we have integrated authentication for accounts, user provisioning still needs to occur in every system independently.

Windows/Active Directory

The Windows IT staff takes care of this. At the time of writing, all users are deleted and recreated at the beginning of every school year. Sysadmins (starting with the graduating class of 2006) are moved into a separate ou (organizational unit) before this occurs and will have their accounts preserved, but passwords are still subject to expire annually.

UNIX accounts

The update_nssldap.sh script (authored by William Yang; see NSS LDAP) will handle user provisioning in AFS and NSS LDAP. It depends on Identity Synchronization for Windows (ISW) to be working properly. Because of the way AD accounts are recreated every year, it is recommended to follow this procedure when it is time to create accounts every fall. The idsync command below is part of ISW and is located in /opt/SUNWisw/bin on the ISW server (usually the primary NSS LDAP server). All idsync commands are required to have options -D -w -q. For our purposes, we use -D 'cn=Directory Manager' -w - -q -

Requirements

  • Have a /admin credential
  • Be added as a user on the AFS servers (bos adduser <server> <username>.admin)
  • Know/have ready the NSS Manager password

Account Creation

  • Stop ISW synchronization (idsync stopsync -D 'cn=Directory Manager' -w - -q -)
  • Reassociate accounts (idsync resync -D 'cn=Directory Manager' -w - -q -)
  • Restart ISW synchronization (idsync startsync -D 'cn=Directory Manager' -w - -q -)
  • Run update_nssldap.sh script (make sure you've read the section on this script in NSS LDAP!). Make a backup (backup.sh) before and after running this script, just in case.

If accounts are not deleted and recreated in AD anymore, or there are only a handful of new accounts added that need to be provisioned in NSS LDAP and AFS (for example, staff or late registering students), just run the update_nssldap.sh script (you should still read the relevant section of NSS LDAP).

Individual Account Provisioning

Simple Check for User Existence

A simple way to check if a user already has an account is to check to see if their home directory exists. If access denied is returned or you are able to change to their home directory, the home directory exists. Otherwise, the home directory probably doesn't exist.

cd ~<username>

Creating AFS User

First, you need to create an AFS user account. Make sure you are authenticated with your /admin principal.

pts createuser <username>

The command should give an output similar to:

User <username> has id 12345678

If the user already has an AFS user account, run the following command in order to obtain an ID.

pts examine <username>

Creating LDAP User

Next, you need to add the account to LDAP. First, generate an LDIF file using the guide at NSS LDAP Templates. Run the command below after you have created an LDIF file.

ldapadd -h openldap1 -Y GSSAPI -f <ldif file>

Below is an example LDIF file. Make sure you replace first name, last name, uidNumber, and graduation year!

dn: uid=2017ewang,ou=2017,ou=students,ou=people,dc=csl,dc=tjhsst,dc=edu
cn: Eric Wang
description: 2017
displayName: Wang, Eric
givenName: Eric
uid: 2017ewang
sn: Wang
objectClass: inetOrgPerson
objectClass: top
objectClass: organizationalPerson
objectClass: person
objectClass: posixAccount
uidNumber: 00000000
gecos: Eric Wang
gidNumber: 2017
homeDirectory: /afs/csl.tjhsst.edu/students/2017/2017ewang
loginShell: /bin/bash

Adding AFS Volume (Home Directory)

cd /afs/csl.tjhsst.edu/.students/.20XX/
vos create -server openafs3 -partition vicepa -name 20XX.<username> -maxquota 1048576
vos backup 20XX.<username>
fs mkmount <username> 20XX.<username>
fs mkmount <username>/yesterday 20XX.<username>.<backup>
fs sa <username> <username> rlidwka
vos release students.20XX

Intranet

Warning The technology or device described in this article is obsolete.

This is handled by a data import module, currently "newimport." A SASI dump is involved for students. Student data import must currently be handled by a member of the IT staff or the sysadmin sponsor due to privacy issues with student data in intranet. New staff are individually added by Mr. Washer using an interface in the newimport module.

Mail

/mnt/mail/mail.py will update accounts and account attributes, including quotas, based on data in AD. It should be run as root on all mail servers (currently casey and smith). Currently, accounts disabled or deleted in AD are disabled on the mail servers. See Email for more information on how this works.