signon
Single sign-on service for GOV.UK
File Explorer
Download Latest Version (.zip)- actionlint.yml
- build-image-from-pr.yml
- ci.yml
- copy-pr-template-to-dependabot-prs.yml
- deploy.yml
- pact-verify.yml
- release.yml
- dependabot.yml
- pull_request_template.md
- .keep
- manifest.js
- qr.png
- table.js
- accessible-autocomplete.js
- auto-submit-form.js
- clear-selected-permissions.js
- password-strength-indicator.js
- application.js
- domain-config.js
- es6-components.js
- _accessible-autocomplete.scss
- _contact-details.scss
- _table.scss
- _user_research_recruitment_banner.scss
- application.scss
- activities_controller.rb
- applications_controller.rb
- emails_controller.rb
- organisations_controller.rb
- passwords_controller.rb
- permissions_controller.rb
- roles_controller.rb
- signin_permissions_controller.rb
- users_controller.rb
- applications_controller.rb
- permissions_controller.rb
- two_step_verification_controller.rb
- two_step_verification_session_controller.rb
- applications_controller.rb
- emails_controller.rb
- invitation_resends_controller.rb
- names_controller.rb
- organisations_controller.rb
- permissions_controller.rb
- roles_controller.rb
- signin_permissions_controller.rb
- two_step_verification_mandations_controller.rb
- two_step_verification_resets_controller.rb
- unlockings_controller.rb
- accounts_controller.rb
- api_users_controller.rb
- application_controller.rb
- authorisations_controller.rb
- batch_invitation_permissions_controller.rb
- batch_invitations_controller.rb
- confirmations_controller.rb
- doorkeeper_applications_controller.rb
- healthcheck_controller.rb
- invitations_controller.rb
- oauth_users_controller.rb
- organisations_controller.rb
- passwords_controller.rb
- root_controller.rb
- sessions_controller.rb
- signin_required_authorizations_controller.rb
- supported_permissions_controller.rb
- suspensions_controller.rb
- two_step_verification_exemptions_controller.rb
- user_research_recruitment_controller.rb
- users_controller.rb
- table_helper.rb
- account_helper.rb
- api_users_helper.rb
- application_access_helper.rb
- application_helper.rb
- application_permissions_helper.rb
- application_table_helper.rb
- batch_invitations_helper.rb
- event_log_helper.rb
- navigation_items_helper.rb
- organisation_helper.rb
- root_helper.rb
- two_step_verification_helper.rb
- users_helper.rb
- users_with_access_helper.rb
- application_job.rb
- batch_invitation_job.rb
- permission_updater.rb
- push_user_updates_job.rb
- reauth_enforcer.rb
- .gitkeep
- application_mailer.rb
- mailer_helper.rb
- noisy_batch_invitation.rb
- user_mailer.rb
- access_grant.rb
- access_token.rb
- after_successful_authorization_processor.rb
- application.rb
- .gitkeep
- api_user.rb
- application_record.rb
- batch_invitation.rb
- batch_invitation_application_permission.rb
- batch_invitation_user.rb
- event_log.rb
- legacy_users_filter.rb
- log_entry.rb
- old_password.rb
- organisation.rb
- reject_non_governmental_email_addresses_validator.rb
- supported_permission.rb
- suspension.rb
- two_step_verification_exemption.rb
- user.rb
- user_agent.rb
- user_application_permission.rb
- user_update_permission_builder.rb
- users_filter.rb
- activities_policy.rb
- application_policy.rb
- emails_policy.rb
- organisations_policy.rb
- passwords_policy.rb
- roles_policy.rb
- application_policy.rb
- account_page_policy.rb
- api_user_policy.rb
- application_policy.rb
- authorisation_policy.rb
- base_policy.rb
- batch_invitation_policy.rb
- organisation_policy.rb
- supported_permission_policy.rb
- user_policy.rb
- user_presenter.rb
- user_export_presenter.rb
- user_o_auth_presenter.rb
- users_with_access.rb
- user_update.rb
- show.html.erb
- index.html.erb
- edit.html.erb
- edit.html.erb
- edit.html.erb
- edit.html.erb
- show.html.erb
- edit.html.erb
- delete.html.erb
- show.html.erb
- index.html.erb
- edit.html.erb
- edit.html.erb
- index.html.erb
- manage_tokens.html.erb
- new.html.erb
- edit.html.erb
- new.html.erb
- new.html.erb
- new.html.erb
- show.html.erb
- contact_details.yml
- table.yml
- _contact_details.html.erb
- _table.html.erb
- show.html.erb
- edit.html.erb
- new.html.erb
- _change_password_panel.html.erb
- edit.html.erb
- new.html.erb
- reset_error.html.erb
- new.html.erb
- _make_your_account_more_secure.html.erb
- prompt.html.erb
- show.html.erb
- max_2sv_login_attempts_reached.html.erb
- new.html.erb
- _links.erb
- _application_list.html.erb
- access_logs.html.erb
- edit.html.erb
- index.html.erb
- monthly_access_stats.html.erb
- users_with_access.html.erb
- _gap.html.erb
- _next_page.html.erb
- _page.html.erb
- _paginator.html.erb
- _prev_page.html.erb
- _analytics_meta_tags.html.erb
- application.html.erb
- user_mailer.html.erb
- user_mailer.text.erb
- make_noise.text.erb
- _organisation_table.html.erb
- edit.html.erb
- index.html.erb
- accessibility_statement.html.erb
- index.html.erb
- privacy_notice.html.erb
- signin_required.html.erb
- _add_permissions_with_autocomplete_form.html.erb
- _edit_permissions_form.html.erb
- _event_logs_table.html.erb
- _permissions_forms.html.erb
- address_blacklisted.html.erb
- error.html.erb
- _form.html.erb
- confirm_destroy.erb
- edit.html.erb
- index.html.erb
- new.html.erb
- edit.html.erb
- edit.html.erb
- confirmation_instructions.text.erb
- email_changed_by_admin_notification.text.erb
- email_changed_notification.text.erb
- invitation_instructions.text.erb
- notify_reset_password_disallowed_due_to_suspension.text.erb
- notify_reset_password_disallowed_due_to_unaccepted_invitation.text.erb
- reset_password_instructions.text.erb
- suspension_notification.text.erb
- suspension_reminder.text.erb
- two_step_changed.text.erb
- two_step_enabled.text.erb
- two_step_mandated.text.erb
- two_step_reset.text.erb
- unlock_instructions.text.erb
- index.html.erb
- edit.html.erb
- edit.html.erb
- edit.html.erb
- edit.html.erb
- edit.html.erb
- show.html.erb
- edit.html.erb
- delete.html.erb
- edit.html.erb
- edit.html.erb
- edit.html.erb
- _users_filter.html.erb
- edit.html.erb
- event_logs.html.erb
- index.html.erb
- require_2sv.html.erb
- bootsnap
- brakeman
- byebug
- coderay
- convert_to_should_syntax
- dartsass
- dev
- erb
- expgen
- htmldiff
- httparty
- irb
- jsonpath
- kramdown
- ldiff
- listen
- minitest
- nokogiri
- pact
- pact-broker
- pact-mock-service
- pact-stub-service
- pactflow
- prometheus_exporter
- pry
- puma
- pumactl
- racc
- rackup
- rails
- rake
- rdoc
- restclient
- ri
- rotp
- rougify
- rspec
- rubocop
- ruby-parse
- ruby-rewrite
- sass
- setup
- sidekiq
- sidekiqmon
- sprockets
- term_cdiff
- term_colortab
- term_decolor
- term_display
- term_mandel
- term_plasma
- term_snow
- thor
- uuid
- yarn
- development.rb
- production.rb
- test.rb
- application_controller_renderer.rb
- assets.rb
- backtrace_silencers.rb
- content_security_policy.rb
- cookies_serializer.rb
- dartsass.rb
- date_formats.rb
- devise.rb
- doorkeeper.rb
- doorkeeper_scopes.rb
- filter_parameter_logging.rb
- govuk_error.rb
- i18n.rb
- inflections.rb
- load_model_enhancements.rb
- mime_types.rb
- permissions_policy.rb
- prometheus.rb
- rack_attack.rb
- session_store.rb
- wrap_parameters.rb
- department_specific.en.yml
- devise.en.yml
- devise.security_extension.en.yml
- devise_invitable.en.yml
- doorkeeper.en.yml
- en.yml
- application.rb
- boot.rb
- brakeman.ignore
- database.yml
- devise.yml
- environment.rb
- puma.rb
- routes.rb
- schedule.rb
- secrets.yml
- sidekiq.yml
- unicorn.rb
- 20240228080000_reencrypt_user_otp_keys.rb
- 20240423105028_remove_user_application_permissions_with_deleted_supported_permission.rb
- 20240429130154_remove_user_permissions_with_deleted_permission.rb
- 20240809112119_index_event_logs_columns.rb
- 20241001140623_rename_supported_permission_delegatable_column.rb
- schema.rb
- seeds.rb
- adr-001-pass-anonymised-user-ids-to-publishing-apps-and-analytics.md
- signon-sign-in-from-whitehall-publisher.svg
- access_and_permissions.md
- api.md
- environment-variables.md
- mass_password_reset.md
- oauth.md
- troubleshooting.md
- usage.md
- .gitkeep
- global_prometheus_collector.rb
- bulk_organisation_updater.rb
- two_step_verification.rb
- password_archivable.rb
- suspendable.rb
- client.rb
- zendesk_to_signon.rb
- admin.rb
- base.rb
- normal.rb
- organisation_admin.rb
- super_organisation_admin.rb
- superadmin.rb
- .gitkeep
- access_tokens.rake
- applications.rake
- assets.rake
- data_hygiene.rake
- event_log.rake
- jasmine.rake
- lint.rake
- oauth_access_records.rake
- organisation_mappings.rake
- organisations.rake
- permissions.rake
- sync_kubernetes_secrets.rake
- users.rake
- abilities.rb
- code_verifier.rb
- exception_handler.rb
- expired_not_signed_in_user_deleter.rb
- expired_oauth_access_records_deleter.rb
- failure_app.rb
- inactive_users_suspender.rb
- inactive_users_suspension_reminder.rb
- inactive_users_suspension_reminder_mailing_list.rb
- organisations_fetcher.rb
- roles.rb
- signin_permission_granter.rb
- sso_push_client.rb
- sso_push_credential.rb
- sso_push_error.rb
- supported_permission_parameter_filter.rb
- unsupported_permission_error.rb
- user_parameter_sanitiser.rb
- user_permission_migrator.rb
- volatile_lock.rb
- .gitkeep
- import_user_organisation_membership_from_whitehall
- make_oauth_work_in_dev
- minitest-ci
- .gitkeep
- accessible-autocomplete-spec.js
- clear-selected-permissions-spec.js
- jasmine-browser.json
- applications_controller_test.rb
- emails_controller_test.rb
- organisations_controller_test.rb
- passwords_controller_test.rb
- permissions_controller_test.rb
- roles_controller_test.rb
- signin_permissions_controller_test.rb
- users_controller_test.rb
- applications_controller_test.rb
- permissions_controller_test.rb
- tokens_controller_test.rb
- empty_users.csv
- invalid_users.csv
- no_headers_users.csv
- partial_users.csv
- reversed_users.csv
- users.csv
- users_with_non_valid_emails.csv
- users_with_orgs.csv
- applications_controller_test.rb
- emails_controller_test.rb
- invitation_resends_controller_test.rb
- names_controller_test.rb
- organisations_controller_test.rb
- permissions_controller_test.rb
- roles_controller_test.rb
- signin_permissions_controller_test.rb
- two_step_verification_mandations_controller_test.rb
- two_step_verification_resets_controller_test.rb
- unlockings_controller_test.rb
- .gitkeep
- api_users_controller_test.rb
- authorisations_controller_test.rb
- batch_invitation_permissions_controller_test.rb
- batch_invitations_controller_test.rb
- confirmations_controller_test.rb
- doorkeeper_applications_controller_test.rb
- invitations_controller_test.rb
- oauth_users_controller_test.rb
- organisations_controller_test.rb
- passwords_controller_test.rb
- root_controller_test.rb
- sessions_controller_test.rb
- signin_required_authorizations_controller_test.rb
- supported_permissions_controller_test.rb
- suspensions_controller_test.rb
- two_step_verification_controller_test.rb
- two_step_verification_exemptions_controller_test.rb
- user_research_recruitment_controller_test.rb
- users_controller_test.rb
- batch_invitation.rb
- batch_invitation_application_permission.rb
- batch_invitation_user.rb
- event_log.rb
- oauth_access_grants.rb
- oauth_access_tokens.rb
- oauth_applications.rb
- organisation.rb
- supported_permission.rb
- two_step_verification_exemption.rb
- user_application_permission.rb
- users.rb
- users.csv
- users_with_orgs.csv
- account_helper_test.rb
- application_access_helper_test.rb
- application_helper_test.rb
- application_permissions_helper_test.rb
- application_table_helper_test.rb
- batch_invitations_helper_test.rb
- organisation_helper_test.rb
- root_helper_test.rb
- two_step_verification_helper_test.rb
- users_helper_test.rb
- users_with_access_helper_test.rb
- account_test.rb
- activities_test.rb
- granting_access_test.rb
- password_change_test.rb
- removing_access_test.rb
- roles_test.rb
- updating_organisation_test.rb
- updating_permissions_test.rb
- access_logs_test.rb
- edit_test.rb
- monthly_access_stats_test.rb
- users_with_access_test.rb
- account_access_logs_test.rb
- granting_access_test.rb
- name_change_test.rb
- removing_access_test.rb
- roles_test.rb
- status_test.rb
- two_step_verification_test.rb
- updating_organisation_test.rb
- updating_permissions_test.rb
- users_test.rb
- api_authentication_test.rb
- api_users_test.rb
- authorise_application_test.rb
- batch_inviting_users_test.rb
- cookies_security_test.rb
- dashboard_test.rb
- doorkeeper_integration_test.rb
- email_change_test.rb
- event_log_creation_test.rb
- inviting_users_test.rb
- mandate_2sv_for_organisation_test.rb
- password_reset_test.rb
- session_timeout_test.rb
- sign_in_test.rb
- sign_out_test.rb
- two_step_verification_prompt_test.rb
- two_step_verification_test.rb
- updating_permissions_for_apps_with_many_permissions_test.rb
- user_agent_test.rb
- user_locking_test.rb
- user_research_recruitment_banner_test.rb
- user_suspension_test.rb
- volatile_lock_test.rb
- permission_updater_test.rb
- push_user_updates_job_test.rb
- reauth_enforcer_test.rb
- global_prometheus_collector_test.rb
- bulk_organisation_updater_test.rb
- client_test.rb
- zendesk_to_signon_test.rb
- access_tokens_test.rb
- data_hygiene_test.rb
- permissions_test.rb
- sync_kubernetes_secrets_test.rb
- users_test.rb
- code_verifier_test.rb
- expired_not_signed_in_user_deleter_test.rb
- expired_oauth_access_records_deleter_test.rb
- inactive_users_suspender_test.rb
- inactive_users_suspension_reminder_mailing_list_test.rb
- inactive_users_suspension_reminder_test.rb
- organisations_fetcher_test.rb
- roles_test.rb
- signin_permission_granter_test.rb
- sso_push_client_test.rb
- sso_push_credential_test.rb
- sso_push_error_test.rb
- user_parameter_sanitiser_test.rb
- user_permission_migrator_test.rb
- access_grant_test.rb
- access_token_test.rb
- after_successful_authorization_processor_test.rb
- application_test.rb
- .gitkeep
- api_user_test.rb
- batch_invitation_test.rb
- batch_invitation_user_test.rb
- event_log_test.rb
- legacy_users_filter_test.rb
- noisy_batch_invitation_test.rb
- organisation_test.rb
- supported_permission_test.rb
- suspension_test.rb
- two_step_verification_exemption_test.rb
- user_agent_test.rb
- user_application_permission_test.rb
- user_export_presenter_test.rb
- user_mailer_content_test.rb
- user_mailer_test.rb
- user_o_auth_presenter_test.rb
- user_test.rb
- user_update_permission_builder_test.rb
- users_filter_test.rb
- activities_policy_test.rb
- application_policy_test.rb
- emails_policy_test.rb
- organisations_policy_test.rb
- passwords_policy_test.rb
- roles_policy_test.rb
- application_policy_test.rb
- account_page_policy_test.rb
- api_user_policy_test.rb
- application_policy_test.rb
- authorisation_policy_test.rb
- batch_invitation_policy_test.rb
- organisation_policy_scope_test.rb
- organisation_policy_test.rb
- supported_permission_policy_scope_test.rb
- user_policy_scope_test.rb
- user_policy_test.rb
- user_presenter_test.rb
- pact_helper.rb
- user_update_test.rb
- autocomplete_helper.rb
- confirmation_token_helpers.rb
- editing_users_helpers.rb
- email_helpers.rb
- flash_helpers.rb
- granting_access_helpers.rb
- managing_two_sv_helpers.rb
- password_helpers.rb
- policy_helpers.rb
- pundit_helpers.rb
- removing_access_helpers.rb
- token_auth_helpers.rb
- updating_permissions_helpers.rb
- user_account_helpers.rb
- user_helpers.rb
- test_helper.rb
- zxcvbn.js
- .gitkeep
- .agignore
- .dockerignore
- .gitignore
- .govuk_dependabot_merger.yml
- .node-version
- .rubocop.yml
- .ruby-version
- config.ru
- Dockerfile
- Gemfile
- Gemfile.lock
- LICENCE
- package.json
- Procfile
- Procfile.dev
- Rakefile
- README.md
- yarn.lock
# Installation Guide
1. Get the code
git clone https://github.com/alphagov/signon
Downloads the entire project code from GitHub to your computer.
cd signon
Moves into the project folder you just downloaded.
2. Docker
Easy RecommendedPrerequisites
- Git Needed to download the project code from GitHub.
- Docker Desktop Needed to build and run containers. Install it and keep it running in the background.
docker build -t signon .
Builds a runnable image based on the Dockerfile.
docker run -p 8080:80 signon
Runs the built image as an actual container.
Run docker compose ps to check the containers are Up. If the README mentions a port, open http://localhost:PORT in your browser.
3. Node.js
EasyPrerequisites
npm install
Downloads and installs the libraries listed in package.json.
npm start
Starts the development/run server.
After running the command, open the address shown in the terminal (usually something like http://localhost:3000) in your browser.
4. Ruby
EasyPrerequisites
bundle exec rake
Type this command into your terminal and run it.
If bundle install finishes without errors, continue with the run command from the README (e.g. rails server).
Pulled directly from this repo's README.
// repository documentation
Was this content helpful?
(0 ratings)
