diff --git a/_docs/student/account/image.png b/_docs/student/account/image.png new file mode 100644 index 00000000..6b258581 Binary files /dev/null and b/_docs/student/account/image.png differ diff --git a/_docs/student/account/index.md b/_docs/student/account/index.md index 9726ad6f..5761c162 100644 --- a/_docs/student/account/index.md +++ b/_docs/student/account/index.md @@ -11,12 +11,21 @@ favorite web browser. ![](/images/Login.png) -Have your login credentials ready. (Again, your instructor should -provide this information.) If you have trouble +Have your login credentials ready. Again, your instructor or +university should provide this information. If you have trouble authenticating/accessing the page, double check the URL and your username and password, and contact the instructor, TA, or system administrator as appropriate. +If your school allows for users to create their own accounts, your +login page will include a button "New to Submitty? Sign up now!". + +![](/images/Login_self_account_creation.png) + +Click that button and follow the instructions to specify your email address, +given name, family name, and choose your Submitty User ID and Password. + + ## My Courses diff --git a/_docs/sysadmin/configuration/self_account_creation.md b/_docs/sysadmin/configuration/self_account_creation.md new file mode 100644 index 00000000..9305c664 --- /dev/null +++ b/_docs/sysadmin/configuration/self_account_creation.md @@ -0,0 +1,49 @@ +--- +category: Student > Courses & Profile +title: Self Account Creation +--- + +### Enable Self Account Creation + +There are two steps to enable self account creation, Firstly you have to manually edit the submitty.json configuration file. The default location for this +file is `/usr/local/submitty/config/submitty.json`. By default, `self_account_creation_allowed` is set to `false`. To enable it, change this to `true`. Secondly, +you have to be using DatabaseAuthentication. To change authentication types, either re-run CONFIGURE_SUBMITTY.py or edit /usr/local/submitty/config/authentication.json and change the authentication method to any of the methods. You should be able to leave all other settings to the default. + *Warning* This will disallow all users who are not in the database from being able to login, so this should only be used if you are only using database authentication. + +### Email and User ID Requirements + +Below are the current accepted requirements for user_ids. +* If `all` is set to `true`, then `length` parameters are the only parameters checked. + +* If `require_name` is true, then the user_id must start with and contain a certain amount of characters from the given name and/or family name. + +* If the user does not have the character amount for the given part of the name, then !add fix! + +* `given_first` determines whether the given name or family name must come first. (e.g. Test User -> userte vs teuser) + +```json +"user_id_requirements": { + "all": true, + "require_name": false, + "min_length": 6, + "max_length": 25, + "name_requirements": { + "given_first": false, + "given_name": 2, + "family_name": 4 + }, + "require_email": false, + "email_requirements": { + "whole_email": false, + "whole_prefix": false, + "prefix_count": 6 + } +} +``` + +```json +"accepted_emails": { + "gmail.com": true, + "rpi.edu": true +} +``` \ No newline at end of file diff --git a/images/Login_self_account_creation.png b/images/Login_self_account_creation.png new file mode 100644 index 00000000..92e2c0d3 Binary files /dev/null and b/images/Login_self_account_creation.png differ diff --git a/navtreedata.js b/navtreedata.js index 04ce4057..e46bb064 100644 --- a/navtreedata.js +++ b/navtreedata.js @@ -179,6 +179,7 @@ var NAVTREE = [ "Course Creation", "/sysadmin/configuration/course_creation", null ], [ "Ansible Course Creation", "/sysadmin/configuration/ansible_course_creation", null ], [ "Setting up Version Control", "/sysadmin/configuration/version_control", null ], + [ "Self Account Creation", "/sysadmin/configuration/self_account_creation", null ], [ "SAML Authentication", "/sysadmin/configuration/saml_authentication", null ], [ "Email Configuration", "/sysadmin/configuration/email_configuration", null ], [ "Registration Feed", "/sysadmin/configuration/registration_feed", null ],