Initializing GitHub AE

To get your enterprise ready to use, you can complete the initial configuration of GitHub AE.

In this article

About initialization

Before you can initialize your enterprise, you must purchase GitHub AE. For more information, contact GitHub's Sales team.

After you purchase GitHub AE, we'll ask you to provide an email address and username for the person you want to initialize the enterprise. Your dedicated technical account manager in GitHub Enterprise Support will create an account for the enterprise owner and send the enterprise owner an email to log into GitHub AE and complete the initialization. Make sure the information you provide matches the intended enterprise owner's information in the IdP. For more information about enterprise owners, see "Roles in an enterprise."

Notes:

  • If the initial password for GitHub AE expires before you finish initialization, you can request a password reset at any time from your invitation email.

  • Store the initial username and password for GitHub AE securely in a password manager. If you can't sign into your enterprise because GitHub AE can't communicate with your SAML IdP, you can contact GitHub Support, who can help you access GitHub AE to update the SAML SSO configuration. For more information, see "Receiving help from GitHub Support."

During initialization, the enterprise owner will name your enterprise, configure SAML SSO, create policies for all organizations in your enterprise, and configure a support contact for your users.

Prerequisites

To begin initialization, you will receive an invitation email from GitHub. Before you configure GitHub AE, review the following prerequisites.

  1. To initialize your enterprise, you must have a SAML identity provider (IdP). GitHub AE uses SAML SSO for user authentication. You can centrally manage access to GitHub AE from an IdP that supports the SAML 2.0 standard. To connect your IdP to your enterprise during initialization, you should have your IdP's Entity ID (SSO) URL, Issuer ID URL, and public signing certificate (Base64-encoded). For more information, see "About identity and access management for your enterprise."

    Note: Create and use a dedicated machine user account on your IdP to associate with the first enterprise owner account on GitHub AE. Store the credentials for the user account securely in a password manager.

  2. To make a person an enterprise owner, you must delegate ownership permission in your IdP. Include the administrator attribute in the SAML assertion for the user account on the IdP, with the value of true. For more information about enterprise owners, see "Roles in an enterprise."

Signing in and naming your enterprise

  1. Follow the instructions in your welcome email to reach your enterprise.
  2. Type your credentials under "Change password", then click Change password.
  3. Under "What would you like your enterprise account to be named?", type the enterprise's name, then click Save and continue. "Save and continue" button for naming an enterprise

Connecting your IdP to your enterprise

To configure authentication for GitHub AE, you must provide GitHub AE with the details for your SAML IdP. GitHub recommends using Azure AD as your IdP. For more information, see "Configuring authentication and provisioning with your identity provider."

  1. To the right of "Set up your identity provider", click Configure. "Configure" button for IdP configuration
  2. Under "Sign on URL", copy and paste the URL for your SAML IdP. Text field for SAML IdP's sign-on URL
  3. Under "Issuer", copy and paste the issuer URL for your SAML IdP. Text field for SAML IdP's issuer URL
  4. Under "Public certificate", copy and paste the public certificate for your SAML IdP. Text field for SAML IdP's public certificate
  5. Click Test SAML configuration to ensure that the information you've entered is correct. "Test SAML configuration" button
  6. Click Save. "Save" button for IdP configuration

Setting your enterprise policies

Configuring policies will set limitations for repository and organization management for your enterprise. These can be reconfigured after the initialization process.

  1. To the right of "Set your enterprise policies", click Configure. "Configure" button for policies configuration
  2. Under "Default Repository Permissions", use the drop-down menu and click a default permissions level for repositories in your enterprise. If a person has multiple avenues of access to an organization, either individually, through a team, or as an organization member, the highest permission level overrides any lower permission levels. Optionally, to allow organizations within your enterprise to set their default repository permissions, click No policy Drop-down menu for default repository permissions options
  3. Under "Repository creation", choose whether you want to allow members to create repositories. Optionally, to allow organizations within your enterprise to set permissions, click No policy. "Members can create repositories" button for enterprise policies configuration
  4. Under "Repository forking", choose whether to allow forking of private and internal repositories. Optionally, to allow organizations within your enterprise to set permissions, click No policy Drop-down menu for repository forking permissions options
  5. Under "Repository invitations", choose whether members or organization owners can invite collaborators to repositories. Optionally, to allow organizations within your enterprise to set permissions, click No policy Drop-down menu for repository invitation permissions options
  6. Under "Default repository visibility", use the drop-down menu and click the default visibility setting for new repositories. Drop-down menu for default repository visibility options
  7. Under "Users can create organizations", use the drop-down menu to enable or disable organization creation access for members of the enterprise. Drop-down menu for organization creation permissions options
  8. Under "Force pushes", use the drop-down menu and choose whether to allow or block force pushes. Drop-down menu for force pushes configuration options
  9. Under "Git SSH access", use the drop-down menu and choose whether to enable Git SSH access for all repositories in the enterprise. Drop-down menu for Git SSH access options
  10. Click Save "Save" button for enterprise policies configuration
  11. Optionally, to reset all selections, click "Reset to default policies". Link to reset all default policies

Setting your internal support contact

You can configure the method your users will use to contact your internal support team. This can be reconfigured after the initialization process.

  1. To the right of "Internal support contact", click Configure. "Configure" button for internal support contact configuration
  2. Under "Internal support contact", select the method for users of your enterprise to contact support, through a URL or an e-mail address. Then, type the support contact information. Text field for internal support contact URL
  3. Click Save. "Save" button for enterprise support contact configuration

Setting your email settings

Once this is initialized, you can reconfigure any settings after the initialization process. For more information, see "Configuring email for notifications."

  1. To the right of "Configure email settings", click Configure. "Configure" button for email settings configuration

  2. Select Enable email. This will enable both outbound and inbound email, however, for inbound email to work you will also need to configure your DNS settings. For more information, see "Configuring DNS and firewall settings to allow incoming emails." "Enable" checkbox for email settings configuration

  3. Complete your email server settings:

    • In the Server address field, type the address of your SMTP server.
    • In the Port field, type the port that your SMTP server uses to send email.
    • In the Domain field, type the domain name that your SMTP server will send with a HELO response, if any.
    • In the Authentication dropdown, choose the type of encryption used by your SMTP server.
    • In the No-reply email address field, type the email address to use in the From and To fields for all notification emails.
  4. If you want to discard all incoming emails that are addressed to the no-reply email address, select Discard email addressed to the no-reply email address. "Discard" checkbox for email settings configuration

  5. Click Test email settings. "Test email settings" button for email settings configuration

  6. Under "Send test email to," type the email address where you want to send a test email, then click Send test email. "Send test email" button for email settings configuration

  7. Click Save. "Save" button for enterprise support contact configuration

Did this doc help you?Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

Or, learn how to contribute.