From 10c4e03ffe2e653b8cf7a474e21d293925ee280b Mon Sep 17 00:00:00 2001 From: Laura Coursen Date: Mon, 7 Mar 2022 08:27:29 -0600 Subject: [PATCH 1/6] Enterprise bug fixes for the week of 2022-02-28 (#25861) --- .../help/business-accounts/remove-admin.png | Bin 17552 -> 62464 bytes .../managing-github-connect.md | 2 ++ ...saml-single-sign-on-for-your-enterprise.md | 2 -- ...le-sign-on-for-enterprise-managed-users.md | 6 +++++- ...-for-enterprise-managed-users-with-okta.md | 2 ++ ...ovisioning-for-enterprise-managed-users.md | 2 ++ ...or-security-settings-in-your-enterprise.md | 2 +- ...viting-people-to-manage-your-enterprise.md | 8 ++++---- .../downgrading-your-github-subscription.md | 7 +++++++ ...io-subscriptions-with-github-enterprise.md | 3 +++ ...owed-ip-addresses-for-your-organization.md | 6 +++--- .../repository-roles-for-an-organization.md | 3 ++- ...ml-single-sign-on-for-your-organization.md | 2 -- content/packages/index.md | 4 ++-- ...ip-allow-lists-example-and-restrictions.md | 2 +- .../cannot-update-existing-saml-settings.md | 5 ----- data/reusables/scim/emu-scim-rate-limit.md | 5 +++++ 17 files changed, 39 insertions(+), 22 deletions(-) delete mode 100644 data/reusables/saml/cannot-update-existing-saml-settings.md create mode 100644 data/reusables/scim/emu-scim-rate-limit.md diff --git a/assets/images/help/business-accounts/remove-admin.png b/assets/images/help/business-accounts/remove-admin.png index 75bf4ab0698312eb8fc5d7b95a0e298b36cfc150..dd06527a29f19b9b99751017fca6f99d384306e4 100644 GIT binary patch literal 62464 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�G?obpj!i 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 #cct0FR^km-J zZ9YcNP&L&04`N&c-JYGNZ+)nZ2st}wUJ&^)5sb~de_Rz~(^1~f{-nB#G_D{9HgQl8 zjhHwnjINRKT;xiI$A5%-wpL!njgwCDXB9iz!brJAVw*qu|A2&^Vjf;T&i^u{m7ZGB za4%40_@n%UT9Q_)dWbq*(`p% zYY{UYL{Fu$N)GIv`_Jdc^;iS%?i;OIJv&qsMu|TdzOD=kW`ofQksm+!`^4~P9}Ksu zzoGwr@TPX8mi|so_Bk;&#bs+-*aV`kv4(kO6dP?T$-H_O8SozYY*MAoJnxtnB(a}U zX0!e}?o0xo8wbC(<0$qk=4u@$%B36l`#7Ie|L9P3Y#i=@Fi8knk0(>FD%Woc#q@RX z8v$ZQ_novgU{Cy+DufNXQCAE)-Ha#DHU_B4V#$qMvo%?91|~5V?!{AWR?G5YR<3uI z+MLU*PVH&%0+nvY*m$b7TjOwUHF>ego$Br!@L8!w;Dqw?qN|R2lhjA_x#vsm|ra^>*vELD90 zisC#+vyD9}m`lMy!_@$KqGTo*l`zB>z{4mKwp14CL~2UFrSp>1T&}rRqb9Nc>i$ge zT!xFoaEFTH$$UAqQ(LmK5;P6m3NET5*C2GQm5yyaR*r6A7SYO*soV-hJ97fav~dng zM4BkHyyR+kH|^If@mL@$;$`A#x``gHhsHdWT3i-Ijy6*nx*bWF1WFRC@$sP-NsA`X zD)JwWul1`u8r2pY=m2}%1Xi;B=Toba{%*6_(l-Sdc~Wcp*j-igc1<&x`apub?0C0i zCq4SN>V(g`Ikwri7z(eVmv%(!O^l1%S}%rnvMp6$os-hLD|BNcZDk))`ewXl%v57| zERY=G9eBDITfe8uDIX3u0f)&z&J6vz%9hG5Glt%dJHnLg_z1vruyRq91tA9}k?xO9 zu{(T!TBhFlYr3=meC*^`nqUi}7R$ zI#w|kb9RfK)}gdGgTssZRCJ$RSE5Kev&|XP963q++9xwKH51?!;w^{*EpXl`6da!! z zx6@DZBHL%(Jp+|-O4|3bZ^d`Np{j4bg;jKRZYPmxBAyGJ=s1%#@gn;U|0(B$z9-yD zuV~sFUL*=heORzzzjyK_Np>{X?irJ&|3e1w8Giy zo#|y$dgJ?<-&eEuTJ{C)m~^$4hv7iT{SkHz`vjqBgHHKB&ZQ$r7^NQIclTHRN8We3 zr!kt;Q@p-U7OsfBAen+X;{M%_JxD-7b6XC*Hf&{sDutF*XzTWjfkCkRuC?nQ8;ihN z93H?Tdikcc5|4gJb(Eul=c5>>v zVEwJk5(Rh5sQ&ZA7G~E0+ddEH=|&8uZ+h}cSr4(u#8l(x=f?^>Efn(T)w*a#pQaR? z2D@D5X1#XEY83;yUxRKphf0a(t+lf%*QFh=F1kkOF}VaLCk&-v`tYnWVx1|NuLj@+ z4^{-pAvsc|X%Ebpv2=PXHM!)Tw1tym19A3D z;3awg58b1;WpM1+)}6kc+`iq-jfvAvN6r0o_6(o!^$Y%i&7YYp&aCYJ` zeZeL*%vB?`_wQ#%2AvuGP6jhveMCdM>!Ee`?ue!cJa4Qmr#Xf{%j^mVI{bmiarBMr zE34E{6^pw$8p2@#i%fM;!cuMjlZ`rR&||YQJYF?hM&riLq*G64Q(mr!>pw4=m~TBd6-D zC}LHyx%+`5Yh*4Eqgce`94ePpOWO8U;8uh{CmRw!resE67FH%EC86iRZOX(h`_51Tz2_pJjT ztB;<1`*Ot@PJ;)dLLRDzs)K@Y%18pp19w=muihDEJ&`+*FM3AT3C`Z6(qZGVDADnz zc>vm=agyUXem)(5aSzu^g4YcVY^TAKEAqJwPIFRb3KGi`iQ1~^@$TD+q(^~Aa@ICd zKFYaS;*4yGRj#$3W)Biip%3HdIv?IAziLp3>d$f|4)* zU!q%Sc}D9r7JNL)!G~p6z!}6v2)euba|(#ZCQ_`Q0m?4|>G(kbIc z@X5$n#LB+X@qxN1YuwJ`Z z^RK}A?Ke@7CyoP43aKmIoCj`(=q|J;Nl!#i(5YewRpf{OHtWHb`I@0Dlx{-avjK!HL7JXAJRhYo$ zc+mTrR7!EqFYo^8xC6*+`4-N4YWy@~r>wk1e(inW_?c{CO(f&4hiB=Y{W>4t0!O-X ztvC{iUf&2P9YrgPF&S@Un@rqNpUV~rw4bwc#Bu2TQTUwZXckUd5*b?Cy47IXxY0&%7HK-daMUl^6 zRB79_Ge1~&S#}iR&^6KPbcG#B^IYmnq9YROk=XJ*QfeY~`}ylZ*;KOzTdS(br1z3l z;)}Vf8B;OiaAlqbExS2S3+i-ko)S?m#PhqM*)E4BS0Sseizl<)RqD*i!?3Np&`L

`)5f7jF^ndnE1Hn?2jNksl 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 JeEHVH{{uyB;_Cna literal 17552 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 Ef^5A%P5=M^ diff --git a/content/admin/configuration/configuring-github-connect/managing-github-connect.md b/content/admin/configuration/configuring-github-connect/managing-github-connect.md index c81bf7b862cc..6989f4d26428 100644 --- a/content/admin/configuration/configuring-github-connect/managing-github-connect.md +++ b/content/admin/configuration/configuring-github-connect/managing-github-connect.md @@ -41,6 +41,8 @@ When you enable {% data variables.product.prodname_github_connect %}, you config To use {% data variables.product.prodname_github_connect %}, you must have an organization or enterprise account on {% data variables.product.prodname_dotcom_the_website %} that uses {% data variables.product.prodname_ghe_cloud %}. You may already have {% data variables.product.prodname_ghe_cloud %} included in your plan. {% data reusables.enterprise.link-to-ghec-trial %} {% ifversion ghes %} +If your organization or enterprise account on {% data variables.product.prodname_dotcom_the_website %} uses IP allow lists, you must add the IP address or network for {% data variables.product.product_location %} to your IP allow list on {% data variables.product.prodname_dotcom_the_website %}. For more information, see "[Managing allowed IP addresses for your organization](/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)" and "[Enforcing policies for security settings in your enterprise](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)" in the {% data variables.product.prodname_ghe_cloud %} documentation. + To configure a connection, your proxy configuration must allow connectivity to `github.com`, `api.github.com`, and `uploads.github.com`. For more information, see "[Configuring an outbound web proxy server](/enterprise/{{ currentVersion }}/admin/guides/installation/configuring-an-outbound-web-proxy-server)." {% endif %} diff --git a/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise.md b/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise.md index 2eecbac189f8..33ea8e4054bd 100644 --- a/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise.md +++ b/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise.md @@ -33,8 +33,6 @@ redirect_from: {% data reusables.saml.about-saml-access-enterprise-account %} For more information, see "[Viewing and managing a user's SAML access to your enterprise account](/admin/user-management/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise)." -{% data reusables.saml.cannot-update-existing-saml-settings %} - {% data reusables.saml.saml-disabled-linked-identities-removed %} {% data reusables.scim.enterprise-account-scim %} diff --git a/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-saml-single-sign-on-for-enterprise-managed-users.md b/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-saml-single-sign-on-for-enterprise-managed-users.md index 3c4a7db83095..15f8466772c3 100644 --- a/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-saml-single-sign-on-for-enterprise-managed-users.md +++ b/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-saml-single-sign-on-for-enterprise-managed-users.md @@ -25,7 +25,11 @@ With {% data variables.product.prodname_emus %}, your enterprise uses SAML SSO t After you configure SAML SSO, we recommend storing your recovery codes so you can recover access to your enterprise in the event that your identity provider is unavailable. -{% data reusables.saml.cannot-update-existing-saml-settings %} +{% note %} + +**Note:** When SAML SSO is enabled, the only setting you can update on {% data variables.product.prodname_dotcom %} for your existing SAML configuration is the SAML certificate. If you need to update the Sign on URL or Issuer, you must first disable SAML SSO and then reconfigure SAML SSO with the new settings. + +{% endnote %} ## Configuring SAML single sign-on for {% data variables.product.prodname_emus %} diff --git a/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md b/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md index 4297458ce26c..2ac54e96d349 100644 --- a/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md +++ b/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md @@ -80,6 +80,8 @@ To configure provisioning, the setup user with the **@SHORT-CODE_admin* After you have configured SAML SSO and provisioning, you will be able provision new users on {% data variables.product.prodname_dotcom_the_website %} by assigning users to the {% data variables.product.prodname_emu_idp_application %} application. +{% data reusables.scim.emu-scim-rate-limit %} + You can also automatically manage organization membership by assigning groups to the application and adding them to the "Push Groups" tab in Okta. When the group is provisioned successfully, it will be available to connect to teams in the enterprise's organizations. For more information about managing teams, see "[Managing team memberships with identity provider groups](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups)." When assigning users, you can use the "Roles" attribute in the {% data variables.product.prodname_emu_idp_application %} application to set a user's role in your enterprise on {% data variables.product.product_name %}. For more information on roles, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/roles-in-an-enterprise)." diff --git a/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-scim-provisioning-for-enterprise-managed-users.md b/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-scim-provisioning-for-enterprise-managed-users.md index 6b785892bf70..e64839136ea7 100644 --- a/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-scim-provisioning-for-enterprise-managed-users.md +++ b/content/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-scim-provisioning-for-enterprise-managed-users.md @@ -56,6 +56,8 @@ To configure provisioning for your {% data variables.product.prodname_emu_enterp After creating your personal access token and storing it securely, you can configure provisioning on your identity provider. +{% data reusables.scim.emu-scim-rate-limit %} + To configure Azure Active Directory to provision users for your {% data variables.product.prodname_emu_enterprise %}, see [Tutorial: Configure GitHub Enterprise Managed User for automatic user provisioning](https://docs.microsoft.com/en-us/azure/active-directory/saas-apps/github-enterprise-managed-user-provisioning-tutorial) in the Azure AD documentation. To configure Okta to provision users for your {% data variables.product.prodname_emu_enterprise %}, see "[Configuring SCIM provisioning for Enterprise Managed Users with Okta](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users-with-okta)." diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md index 69f67199d584..dabe75e51570 100644 --- a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md @@ -69,7 +69,7 @@ You can restrict network traffic to your enterprise on {% data variables.product {% elsif ghec %} -Enterprise owners can restrict access to assets owned by organizations in an enterprise by configuring an allow list for specific IP addresses. {% data reusables.identity-and-permissions.ip-allow-lists-example-and-restrictions %} +Enterprise owners can restrict access to private assets owned by organizations in an enterprise by configuring an allow list for specific IP addresses. {% data reusables.identity-and-permissions.ip-allow-lists-example-and-restrictions %} {% data reusables.identity-and-permissions.ip-allow-lists-cidr-notation %} diff --git a/content/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md b/content/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md index 250b63d8bd85..f4a4b50aab31 100644 --- a/content/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md +++ b/content/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md @@ -47,8 +47,7 @@ If your enterprise uses {% data variables.product.prodname_emus %}, enterprise o {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.people-tab %} -1. In the left sidebar, click **Administrators**. - ![Administrators tab in the left sidebar](/assets/images/help/business-accounts/administrators-tab.png) +{% data reusables.enterprise-accounts.administrators-tab %} 1. Above the list of administrators, click {% ifversion ghec %}**Invite admin**{% elsif ghes %}**Add owner**{% endif %}. {% ifversion ghec %} !["Invite admin" button above the list of enterprise owners](/assets/images/help/business-accounts/invite-admin-button.png) @@ -70,10 +69,11 @@ Only enterprise owners can remove other enterprise administrators from the enter {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.people-tab %} -1. Next to the username of the person you'd like to remove, click {% octicon "gear" aria-label="The Settings gear" %}, then click **Remove owner**{% ifversion ghec %} or **Remove billing manager**{% endif %}. +{% data reusables.enterprise-accounts.administrators-tab %} +1. Next to the username of the person you'd like to remove, click {% octicon "gear" aria-label="The Settings gear" %}, then click {% ifversion ghes %}**Remove owner**{% elsif ghec %}**Convert to member**{% endif %}. {% ifversion ghec %} ![Settings gear with menu option to remove an enterprise administrator](/assets/images/help/business-accounts/remove-admin.png) {% elsif ghes %} ![Settings gear with menu option to remove an enterprise administrator](/assets/images/help/business-accounts/ghes-remove-owner.png) {% endif %} -1. Read the confirmation, then click **Remove owner**{% ifversion ghec %} or **Remove billing manager**{% endif %}. +1. Read the confirmation, then click {% ifversion ghes %}**Remove owner**{% elsif ghec %}**Yes, convert USERNAME to member**{% endif %}. diff --git a/content/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription.md b/content/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription.md index b7d539616b76..4223600d9691 100644 --- a/content/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription.md +++ b/content/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription.md @@ -53,6 +53,13 @@ If you downgrade your organization from {% data variables.product.prodname_team If you downgrade your organization from {% data variables.product.prodname_ghe_cloud %} to {% data variables.product.prodname_team %} or {% data variables.product.prodname_free_team %}, the account will lose access to advanced security, compliance, and deployment controls. {% data reusables.gated-features.more-info %} + +{% note %} + +**Note:** If you're currently trialing {% data variables.product.prodname_ghe_cloud %}, and you don't purchase {% data variables.product.prodname_enterprise %} before the trial ends, your organization will be automatically downgraded to {% data variables.product.prodname_free_team %} or {% data variables.product.prodname_team %}. For more information, see "[Setting up a trial of {% data variables.product.prodname_ghe_cloud %}](/get-started/signing-up-for-github/setting-up-a-trial-of-github-enterprise-cloud#finishing-your-trial)." + +{% endnote %} + {% data reusables.organizations.billing-settings %} 1. Under "Current plan", use the **Edit** drop-down and click the downgrade option you want. ![Downgrade button](/assets/images/help/billing/downgrade-option-button.png) diff --git a/content/billing/managing-licenses-for-visual-studio-subscriptions-with-github-enterprise/setting-up-visual-studio-subscriptions-with-github-enterprise.md b/content/billing/managing-licenses-for-visual-studio-subscriptions-with-github-enterprise/setting-up-visual-studio-subscriptions-with-github-enterprise.md index 6d51a952cec8..cbd795eb3a85 100644 --- a/content/billing/managing-licenses-for-visual-studio-subscriptions-with-github-enterprise/setting-up-visual-studio-subscriptions-with-github-enterprise.md +++ b/content/billing/managing-licenses-for-visual-studio-subscriptions-with-github-enterprise/setting-up-visual-studio-subscriptions-with-github-enterprise.md @@ -16,6 +16,9 @@ shortTitle: Set up This guide shows you how your team can get {% data variables.product.prodname_vs %} subscribers licensed and started with {% data variables.product.prodname_enterprise %}. +If you prefer video, you can watch [Setting up your {% data variables.product.prodname_enterprise %} licenses with {% data variables.product.prodname_vs %} subscriptions](https://www.youtube.com/watch?v=P_zBgp_BE_I) on +Microsoft Visual Studio's YouTube channel. + ## Roles for {% data variables.product.prodname_vss_ghe %} Before setting up {% data variables.product.prodname_vss_ghe %}, it's important to understand the roles for this combined offering. diff --git a/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md b/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md index 2821f7764a96..aceb8f9d7a51 100644 --- a/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md +++ b/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md @@ -1,6 +1,6 @@ --- title: Managing allowed IP addresses for your organization -intro: You can restrict access to your organization's assets by configuring a list of IP addresses that are allowed to connect. +intro: You can restrict access to your organization's private assets by configuring a list of IP addresses that are allowed to connect. product: '{% data reusables.gated-features.allowed-ip-addresses %}' redirect_from: - /github/setting-up-and-managing-organizations-and-teams/managing-allowed-ip-addresses-for-your-organization @@ -19,7 +19,7 @@ Organization owners can manage allowed IP addresses for an organization. ## About allowed IP addresses -You can restrict access to organization assets by configuring an allow list for specific IP addresses. {% data reusables.identity-and-permissions.ip-allow-lists-example-and-restrictions %} +You can restrict access to private organization assets by configuring an allow list for specific IP addresses. {% data reusables.identity-and-permissions.ip-allow-lists-example-and-restrictions %} {% data reusables.identity-and-permissions.ip-allow-lists-cidr-notation %} @@ -27,7 +27,7 @@ You can restrict access to organization assets by configuring an allow list for If you set up an allow list you can also choose to automatically add to your allow list any IP addresses configured for {% data variables.product.prodname_github_apps %} that you install in your organization. The creator of a {% data variables.product.prodname_github_app %} can configure an allow list for their application, specifying the IP addresses at which the application runs. By inheriting their allow list into yours, you avoid connection requests from the application being refused. For more information, see "[Allowing access by {% data variables.product.prodname_github_apps %}](#allowing-access-by-github-apps)." -You can also configure allowed IP addresses for the organizations in an enterprise account. For more information, see "[Enforcing policies for security settings in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise)." +You can also configure allowed IP addresses for the organizations in an enterprise account. For more information, see "[Enforcing policies for security settings in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)." ## Adding an allowed IP address diff --git a/content/organizations/managing-access-to-your-organizations-repositories/repository-roles-for-an-organization.md b/content/organizations/managing-access-to-your-organizations-repositories/repository-roles-for-an-organization.md index 0c7d52b57923..68d129b5ae9f 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/repository-roles-for-an-organization.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/repository-roles-for-an-organization.md @@ -109,11 +109,12 @@ Some of the features listed below are limited to organizations using {% data var | Enable project boards | | | | **X** | **X** | | Configure [pull request merges](/articles/configuring-pull-request-merges) | | | | **X** | **X** | | Configure [a publishing source for {% data variables.product.prodname_pages %}](/articles/configuring-a-publishing-source-for-github-pages) | | | | **X** | **X** | +| [Manage branch protection rules](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule) | | | | | **X** | | [Push to protected branches](/articles/about-protected-branches) | | | | **X** | **X** | +| Merge pull requests on protected branches, even if there are no approving reviews | | | | | **X** | | [Create and edit repository social cards](/articles/customizing-your-repositorys-social-media-preview) | | | | **X** | **X** |{% ifversion fpt or ghec %} | Limit [interactions in a repository](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)| | | | **X** | **X** |{% endif %} | Delete an issue (see "[Deleting an issue](/articles/deleting-an-issue)") | | | | | **X** | -| Merge pull requests on protected branches, even if there are no approving reviews | | | | | **X** | | [Define code owners for a repository](/articles/about-code-owners) | | | | | **X** | | Add a repository to a team (see "[Managing team access to an organization repository](/organizations/managing-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository#giving-a-team-access-to-a-repository)" for details) | | | | | **X** | | [Manage outside collaborator access to a repository](/articles/adding-outside-collaborators-to-repositories-in-your-organization) | | | | | **X** | diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/enabling-and-testing-saml-single-sign-on-for-your-organization.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/enabling-and-testing-saml-single-sign-on-for-your-organization.md index 4c23e7614bf6..5ba478b6a814 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/enabling-and-testing-saml-single-sign-on-for-your-organization.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/enabling-and-testing-saml-single-sign-on-for-your-organization.md @@ -22,8 +22,6 @@ If you enable but don't enforce SAML SSO, organization members who choose not to {% data reusables.saml.saml-disabled-linked-identities-removed %} -{% data reusables.saml.cannot-update-existing-saml-settings %} - ## Enabling and testing SAML single sign-on for your organization Before your enforce SAML SSO in your organization, ensure that you've prepared the organization. For more information, see "[Preparing to enforce SAML single sign-on in your organization](/articles/preparing-to-enforce-saml-single-sign-on-in-your-organization)." diff --git a/content/packages/index.md b/content/packages/index.md index b46d3642e9e2..61174d989b4c 100644 --- a/content/packages/index.md +++ b/content/packages/index.md @@ -12,11 +12,11 @@ featuredLinks: - /packages/learn-github-packages/installing-a-package popular: - /packages/working-with-a-github-packages-registry/working-with-the-npm-registry - - '{% ifversion fpt %}/packages/working-with-a-github-packages-registry/working-with-the-container-registry{% else %}/packages/working-with-a-github-packages-registry/working-with-the-docker-registry{% endif %}' + - '{% ifversion fpt or ghec%}/packages/working-with-a-github-packages-registry/working-with-the-container-registry{% else %}/packages/working-with-a-github-packages-registry/working-with-the-docker-registry{% endif %}' - /packages/learn-github-packages - /packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry guideCards: - - '{% ifversion fpt %}/packages/working-with-a-github-packages-registry/working-with-the-container-registry{% else %}/packages/working-with-a-github-packages-registry/working-with-the-docker-registry{% endif %}' + - '{% ifversion fpt or ghec %}/packages/working-with-a-github-packages-registry/working-with-the-container-registry{% else %}/packages/working-with-a-github-packages-registry/working-with-the-docker-registry{% endif %}' - /packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry changelog: label: packages diff --git a/data/reusables/identity-and-permissions/ip-allow-lists-example-and-restrictions.md b/data/reusables/identity-and-permissions/ip-allow-lists-example-and-restrictions.md index 96f7dd9575ba..b0e648d57c8e 100644 --- a/data/reusables/identity-and-permissions/ip-allow-lists-example-and-restrictions.md +++ b/data/reusables/identity-and-permissions/ip-allow-lists-example-and-restrictions.md @@ -1 +1 @@ -For example, you can allow access from only the IP address of your office network. The allow list for IP addresses will block access via the web, API, and Git from any IP addresses that are not on the allow list. +For example, you can allow access from only the IP address of your office network. The allow list for IP addresses will block access to private resources via the web, API, and Git from any IP addresses that are not on the allow list. diff --git a/data/reusables/saml/cannot-update-existing-saml-settings.md b/data/reusables/saml/cannot-update-existing-saml-settings.md deleted file mode 100644 index 22983550ed57..000000000000 --- a/data/reusables/saml/cannot-update-existing-saml-settings.md +++ /dev/null @@ -1,5 +0,0 @@ -{% note %} - -**Note:** When SAML SSO is enabled, the only setting you can update on {% data variables.product.prodname_dotcom %} for your existing SAML configuration is the SAML certificate. If you need to update the Sign on URL or Issuer, you must first disable SAML SSO and then reconfigure SAML SSO with the new settings. - -{% endnote %} diff --git a/data/reusables/scim/emu-scim-rate-limit.md b/data/reusables/scim/emu-scim-rate-limit.md new file mode 100644 index 000000000000..f6317a754563 --- /dev/null +++ b/data/reusables/scim/emu-scim-rate-limit.md @@ -0,0 +1,5 @@ +{% note %} + +**Note:** To avoid exceeding the rate limit on {% data variables.product.product_name %}, do not assign more than 1,000 users per hour to the IdP application. If you use groups to assign users to the IdP application, do not add more than 100 users to each group per hour. If you exceed these thresholds, attempts to provision users may fail with a "rate limit" error. + +{% endnote %} \ No newline at end of file From 4b1a4afc189cbefb2cdf43c6832afb0a50f16acc Mon Sep 17 00:00:00 2001 From: Emma Makinson Date: Mon, 7 Mar 2022 14:51:29 +0000 Subject: [PATCH 2/6] Adds docs for new tag protection rules feature (#25461) * Adds docs for configuring tag protection rules * Adds beta note * Optimize images * Use correct terminology for permissions Co-authored-by: David Staheli <1767415+davidstaheli@users.noreply.github.com> * Removes public from beta wording Co-authored-by: David Staheli <1767415+davidstaheli@users.noreply.github.com> * Adds ommitted quotation * Add new article to the repositories category * Simplify language Co-authored-by: hubwriter * Link to more information on repository roles Co-authored-by: hubwriter * Clarify what protected tags are Co-authored-by: hubwriter * Specify that repository roles only aid in management of protected tags Co-authored-by: hubwriter * Add table rows for protected tags Co-authored-by: github-actions Co-authored-by: David Staheli <1767415+davidstaheli@users.noreply.github.com> Co-authored-by: hubwriter --- .../repository/add-tag-protection-rule.png | Bin 0 -> 33664 bytes .../repository/new-tag-protection-rule.png | Bin 0 -> 39323 bytes .../repository/set-tag-protection-pattern.png | Bin 0 -> 37165 bytes .../repository-roles-for-an-organization.md | 4 ++- ...om-repository-roles-for-an-organization.md | 2 ++ .../configuring-tag-protection-rules.md | 30 ++++++++++++++++++ .../managing-repository-settings/index.md | 1 + 7 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 assets/images/help/repository/add-tag-protection-rule.png create mode 100644 assets/images/help/repository/new-tag-protection-rule.png create mode 100644 assets/images/help/repository/set-tag-protection-pattern.png create mode 100644 content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules.md diff --git a/assets/images/help/repository/add-tag-protection-rule.png b/assets/images/help/repository/add-tag-protection-rule.png new file mode 100644 index 0000000000000000000000000000000000000000..5b3d4c86035fe3ab10b403ba9b45ba33c07dd1e5 GIT binary patch literal 33664 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 M)Bm&Rs>6f-1Dz&8-v9sr literal 0 HcmV?d00001 diff --git a/assets/images/help/repository/set-tag-protection-pattern.png b/assets/images/help/repository/set-tag-protection-pattern.png new file mode 100644 index 0000000000000000000000000000000000000000..7118b4058a04378d13178625b4255b834e677a31 GIT binary patch literal 37165 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 3.4 or ghae-issue-6337 or ghec %} +| Create tags that match a [tag protection rule](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules) | | | | **X** | **X** | +| Delete tags that match a [tag protection rule](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules) | | | | | **X** |{% endif %} | [Create and edit repository social cards](/articles/customizing-your-repositorys-social-media-preview) | | | | **X** | **X** |{% ifversion fpt or ghec %} | Limit [interactions in a repository](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)| | | | **X** | **X** |{% endif %} | Delete an issue (see "[Deleting an issue](/articles/deleting-an-issue)") | | | | | **X** | diff --git a/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization.md b/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization.md index 4fcd5f4736ea..522f701391c4 100644 --- a/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization.md +++ b/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization.md @@ -84,6 +84,8 @@ You can only choose an additional permission if it's not already included in the - **Set interaction limits**: Temporarily restrict certain users from commenting, opening issues, or creating pull requests in your public repository to enforce a period of limited activity. For more information, see "[Limiting interactions in your repository](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)." - **Set the social preview**: Add an identifying image to your repository that appears on social media platforms when your repository is linked. For more information, see "[Customizing your repository's social media preview](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/customizing-your-repositorys-social-media-preview)." - **Push commits to protected branches**: Push to a branch that is marked as a protected branch. +- **Create protected tags**: Create tags that match a tag protection rule. For more information, see "[Configuring tag protection rules](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules)." +- **Delete protected tags**: Delete tags that match a tag protection rule. For more information, see "[Configuring tag protection rules](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules)." ### Security diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules.md new file mode 100644 index 000000000000..9810559b4228 --- /dev/null +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules.md @@ -0,0 +1,30 @@ +--- +title: Configuring tag protection rules +shortTitle: Configure tag rules +intro: You can configure tag protection rules for your repository to prevent contributors from creating or deleting tags. +versions: + fpt: '*' + ghes: '>3.4' + ghae: 'issue-6337' + ghec: '*' +--- + +{% note %} + +**Note:** Tag protection rules are currently in beta and subject to change. + +{% endnote %} + +When you add a tag protection rule, all tags that match the pattern provided will be protected. Only users with admin or maintain permissions in the repository will be able to create protected tags, and only users with admin permissions in the repository will be able to delete protected tags. For more information, see "[Repository roles for an organization](/organizations/managing-access-to-your-organizations-repositories/repository-roles-for-an-organization#permissions-for-each-role)." + +Additionally, you can create custom repository roles to allow other groups of users to create or delete tags that match tag protection rules. For more information, see "[Managing custom repository roles for an organization](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)." + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.sidebar-settings %} +1. In the "Code and automation" section of the sidebar, click **{% octicon "tag" aria-label="The tag icon" %} Tags**. +1. Click **New rule**. +![New tag protection rule](/assets/images/help/repository/new-tag-protection-rule.png) +1. Under "Tag name pattern", type the pattern of the tags you want to protect. In this example, typing "\*" protects all tags. +![Set tag protection pattern](/assets/images/help/repository/set-tag-protection-pattern.png) +1. Click **Add rule**. +![Add tag protection rule](/assets/images/help/repository/add-tag-protection-rule.png) diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/index.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/index.md index a1acf8fb2980..f58f1de767a4 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/index.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/index.md @@ -17,6 +17,7 @@ children: - /enabling-anonymous-git-read-access-for-a-repository - /about-email-notifications-for-pushes-to-your-repository - /configuring-autolinks-to-reference-external-resources + - /configuring-tag-protection-rules shortTitle: Manage repository settings --- From 7e75b04241682e7b1063befeb8a435d29143dcfa Mon Sep 17 00:00:00 2001 From: Felicity Chapman Date: Mon, 7 Mar 2022 14:56:42 +0000 Subject: [PATCH 3/6] Add size limit for integer properties in SARIF files (#25967) --- .../sarif-support-for-code-scanning.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md b/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md index 88765f488b1a..dc0a1285f3c0 100644 --- a/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md +++ b/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md @@ -114,7 +114,7 @@ Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.pr | Name | Description | |----|----| | `ruleId`| **Optional.** The unique identifier of the rule (`reportingDescriptor.id`). For more information, see the [`reportingDescriptor` object](#reportingdescriptor-object). {% data variables.product.prodname_code_scanning_capc %} uses the rule identifier to filter results by rule on {% data variables.product.prodname_dotcom %}. -| `ruleIndex`| **Optional.** The index of the associated rule (`reportingDescriptor` object) in the tool component `rules` array. For more information, see the [`run` object](#run-object). +| `ruleIndex`| **Optional.** The index of the associated rule (`reportingDescriptor` object) in the tool component `rules` array. For more information, see the [`run` object](#run-object). The allowed range for this property 0 to 2^63 - 1. | `rule`| **Optional.** A reference used to locate the rule (reporting descriptor) for this result. For more information, see the [`reportingDescriptor` object](#reportingdescriptor-object). | `level`| **Optional.** The severity of the result. This level overrides the default severity defined by the rule. {% data variables.product.prodname_code_scanning_capc %} uses the level to filter results by severity on {% data variables.product.prodname_dotcom %}. | `message.text`| **Required.** A message that describes the result. {% data variables.product.prodname_code_scanning_capc %} displays the message text as the title of the result. Only the first sentence of the message will be displayed when visible space is limited. @@ -129,7 +129,7 @@ A location within a programming artifact, such as a file in the repository or a | Name | Description | |----|----| -| `location.id` | **Optional.** A unique identifier that distinguishes this location from all other locations within a single result object. +| `location.id` | **Optional.** A unique identifier that distinguishes this location from all other locations within a single result object. The allowed range for this property 0 to 2^63 - 1. | `location.physicalLocation` | **Required.** Identifies the artifact and region. For more information, see the [`physicalLocation`](#physicallocation-object). | `location.message.text` | **Optional.** A message relevant to the location. From 4e628d6c264e5f69010e7a23ebea8f418a52400c Mon Sep 17 00:00:00 2001 From: Mike Surowiec Date: Mon, 7 Mar 2022 10:19:43 -0600 Subject: [PATCH 4/6] bump timeout, change workflow name so it's grouped with other Azure workflows (#25979) --- ...d-build-deploy-azure.yml => azure-prod-build-deploy.yml} | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename .github/workflows/{prod-build-deploy-azure.yml => azure-prod-build-deploy.yml} (98%) diff --git a/.github/workflows/prod-build-deploy-azure.yml b/.github/workflows/azure-prod-build-deploy.yml similarity index 98% rename from .github/workflows/prod-build-deploy-azure.yml rename to .github/workflows/azure-prod-build-deploy.yml index 14cd2057aaae..2a10b09863bc 100644 --- a/.github/workflows/prod-build-deploy-azure.yml +++ b/.github/workflows/azure-prod-build-deploy.yml @@ -1,4 +1,4 @@ -name: Production (Azure) - Build and Deploy +name: Azure Production - Build and Deploy # **What it does**: Builds and deploys the default branch to production # **Why we have it**: To enable us to deploy the latest to production whenever necessary rather than relying on PR merges. @@ -21,10 +21,10 @@ concurrency: cancel-in-progress: false jobs: - build-and-deploy-prod-azure: + azure-prod-build-and-deploy: if: ${{ github.repository == 'github/docs-internal' }} runs-on: ubuntu-latest - timeout-minutes: 15 + timeout-minutes: 20 environment: name: production url: 'https://docs.github.com' From 9d4b913bdc38e96abdbb92f4b0560311f2d9c07d Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Mon, 7 Mar 2022 11:25:22 -0500 Subject: [PATCH 5/6] language redirects without cache (#25872) * redirect to your preferred language (#25664) * redirect to your preferred language * refactorings * use js-cookies * make sure no cache when language is involved in the redirect * fix tests --- components/page-header/LanguagePicker.tsx | 29 +++++++- lib/get-redirect.js | 11 +-- middleware/detect-language.js | 31 +++++--- middleware/redirects/handle-redirects.js | 33 ++++----- tests/rendering/server.js | 5 +- tests/routing/redirects.js | 90 +++++++++++++++++++++-- tests/unit/get-redirect.js | 14 ++++ 7 files changed, 167 insertions(+), 46 deletions(-) diff --git a/components/page-header/LanguagePicker.tsx b/components/page-header/LanguagePicker.tsx index f4ac20ef6f3e..a98362257b1d 100644 --- a/components/page-header/LanguagePicker.tsx +++ b/components/page-header/LanguagePicker.tsx @@ -1,9 +1,14 @@ import { useRouter } from 'next/router' +import Cookies from 'js-cookie' + import { Link } from 'components/Link' import { useLanguages } from 'components/context/LanguagesContext' import { Picker } from 'components/ui/Picker' import { useTranslation } from 'components/hooks/useTranslation' +// This value is replicated in two places! See middleware/detect-language.js +const PREFERRED_LOCALE_COOKIE_NAME = 'preferredlang' + type Props = { variant?: 'inline' } @@ -22,6 +27,22 @@ export const LanguagePicker = ({ variant }: Props) => { // in a "denormalized" way. const routerPath = router.asPath.split('#')[0] + function rememberPreferredLanguage(code: string) { + try { + Cookies.set(PREFERRED_LOCALE_COOKIE_NAME, code, { + expires: 365, + secure: document.location.protocol !== 'http:', + }) + } catch (err) { + // You can never be too careful because setting a cookie + // can fail. For example, some browser + // extensions disallow all setting of cookies and attempts + // at the `document.cookie` setter could throw. Just swallow + // and move on. + console.warn('Unable to set preferred language cookie', err) + } + } + return ( { text: lang.nativeName || lang.name, selected: lang === selectedLang, item: ( - + { + rememberPreferredLanguage(lang.code) + }} + > {lang.nativeName ? ( <> {lang.nativeName} ( diff --git a/lib/get-redirect.js b/lib/get-redirect.js index d9c5b5ec8103..52810ac88dd0 100644 --- a/lib/get-redirect.js +++ b/lib/get-redirect.js @@ -9,9 +9,9 @@ const nonEnterpriseDefaultVersionPrefix = `/${nonEnterpriseDefaultVersion}` // Return the new URI if there is one, otherwise return undefined. export default function getRedirect(uri, context) { - const { redirects, pages } = context + const { redirects, userLanguage } = context - let language = 'en' + let language = userLanguage || 'en' let withoutLanguage = uri if (languagePrefixRegex.test(uri)) { language = uri.match(languagePrefixRegex)[1] @@ -109,12 +109,7 @@ export default function getRedirect(uri, context) { } if (basicCorrection) { - return ( - getRedirect(basicCorrection, { - redirects, - pages, - }) || basicCorrection - ) + return getRedirect(basicCorrection, context) || basicCorrection } if (withoutLanguage.startsWith('/admin/')) { diff --git a/middleware/detect-language.js b/middleware/detect-language.js index 1d222ede5bd9..9472e8d36c14 100644 --- a/middleware/detect-language.js +++ b/middleware/detect-language.js @@ -1,14 +1,17 @@ -import libLanguages from '../lib/languages.js' +import languages, { languageKeys } from '../lib/languages.js' import parser from 'accept-language-parser' -const languageCodes = Object.keys(libLanguages) const chineseRegions = ['CN', 'HK'] +// This value is replicated in two places! See component. +// Note, the only reason this is exported is to benefit the tests. +export const PREFERRED_LOCALE_COOKIE_NAME = 'preferredlang' + function translationExists(language) { if (language.code === 'zh') { return chineseRegions.includes(language.region) } - return languageCodes.includes(language.code) + return languageKeys.includes(language.code) } function getLanguageCode(language) { @@ -17,33 +20,41 @@ function getLanguageCode(language) { function getUserLanguage(browserLanguages) { try { - let userLanguage = getLanguageCode(browserLanguages[0]) let numTopPreferences = 1 for (let lang = 0; lang < browserLanguages.length; lang++) { // If language has multiple regions, Chrome adds the non-region language to list if (lang > 0 && browserLanguages[lang].code !== browserLanguages[lang - 1].code) numTopPreferences++ if (translationExists(browserLanguages[lang]) && numTopPreferences < 3) { - userLanguage = getLanguageCode(browserLanguages[lang]) - break + return getLanguageCode(browserLanguages[lang]) } } - return userLanguage } catch { return undefined } } +function getUserLanguageFromCookie(req) { + const value = req.cookies[PREFERRED_LOCALE_COOKIE_NAME] + // But if it's a WIP language, reject it. + if (value && languages[value] && !languages[value].wip) { + return value + } +} + // determine language code from a path. Default to en if no valid match export function getLanguageCodeFromPath(path) { const maybeLanguage = (path.split('/')[path.startsWith('/_next/data/') ? 4 : 1] || '').slice(0, 2) - return languageCodes.includes(maybeLanguage) ? maybeLanguage : 'en' + return languageKeys.includes(maybeLanguage) ? maybeLanguage : 'en' } export default function detectLanguage(req, res, next) { req.language = getLanguageCodeFromPath(req.path) // Detecting browser language by user preference - const browserLanguages = parser.parse(req.headers['accept-language']) - req.userLanguage = getUserLanguage(browserLanguages) + req.userLanguage = getUserLanguageFromCookie(req) + if (!req.userLanguage) { + const browserLanguages = parser.parse(req.headers['accept-language']) + req.userLanguage = getUserLanguage(browserLanguages) + } return next() } diff --git a/middleware/redirects/handle-redirects.js b/middleware/redirects/handle-redirects.js index d799f161a564..76c2fb39eeef 100644 --- a/middleware/redirects/handle-redirects.js +++ b/middleware/redirects/handle-redirects.js @@ -1,6 +1,6 @@ import patterns from '../../lib/patterns.js' import { URL } from 'url' -import languages, { pathLanguagePrefixed } from '../../lib/languages.js' +import { pathLanguagePrefixed } from '../../lib/languages.js' import getRedirect from '../../lib/get-redirect.js' import { cacheControlFactory } from '../cache-control.js' @@ -13,16 +13,7 @@ export default function handleRedirects(req, res, next) { // blanket redirects for languageless homepage if (req.path === '/') { - let language = 'en' - - // if set, redirect to user's preferred language translation or else English - if ( - req.context.userLanguage && - languages[req.context.userLanguage] && - !languages[req.context.userLanguage].wip - ) { - language = req.context.userLanguage - } + const language = getLanguage(req) // Undo the cookie setting that CSRF sets. res.removeHeader('set-cookie') @@ -70,17 +61,12 @@ export default function handleRedirects(req, res, next) { // needs to become `/en/authentication/connecting-to-github-with-ssh` const possibleRedirectTo = `/en${req.path}` if (possibleRedirectTo in req.context.pages) { - // As of Jan 2022 we always redirect to `/en` if the URL doesn't - // specify a language. ...except for the root home page (`/`). - // It's unfortunate but that's how it currently works. - // It's tracked in #1145 - // Perhaps a more ideal solution would be to do something similar to - // the code above for `req.path === '/'` where we look at the user - // agent for a header and/or cookie. + const language = getLanguage(req) + // Note, it's important to use `req.url` here and not `req.path` // because the full URL can contain query strings. // E.g. `/foo?json=breadcrumbs` - redirect = `/en${req.url}` + redirect = `/${language}${req.url}` } } @@ -106,12 +92,21 @@ export default function handleRedirects(req, res, next) { // do the redirect if the from-URL already had a language in it if (pathLanguagePrefixed(req.path)) { cacheControl(res) + } else { + noCacheControl(res) } const permanent = usePermanentRedirect(req) return res.redirect(permanent ? 301 : 302, redirect) } +function getLanguage(req, default_ = 'en') { + // req.context.userLanguage, if it truthy, is always a valid supported + // language. It's whatever was in the user's request but filtered + // based on non-WIP languages in lib/languages.js + return req.context.userLanguage || default_ +} + function usePermanentRedirect(req) { // If the redirect was to essentially swap `enterprise-server@latest` // for `enterprise-server@3.x` then, we definitely don't want to diff --git a/tests/rendering/server.js b/tests/rendering/server.js index 63dd51be51fe..7530ecf5278b 100644 --- a/tests/rendering/server.js +++ b/tests/rendering/server.js @@ -632,7 +632,7 @@ describe('server', () => { expect(res.statusCode).toBe(302) expect(res.headers['set-cookie']).toBeUndefined() // no cache control because a language prefix had to be injected - expect(res.headers['cache-control']).toBeUndefined() + expect(res.headers['cache-control']).toBe('private, no-store') }) test('redirects old articles to their slugified URL', async () => { @@ -702,7 +702,8 @@ describe('server', () => { expect(res.statusCode).toBe(302) expect(res.headers.location.startsWith('/en/')).toBe(true) expect(res.headers['set-cookie']).toBeUndefined() - expect(res.headers['cache-control']).toBeUndefined() + // no cache control because a language prefix had to be injected + expect(res.headers['cache-control']).toBe('private, no-store') }) test('redirects that not only injects /en/ should have cache-control', async () => { diff --git a/tests/routing/redirects.js b/tests/routing/redirects.js index 27dd42623bb0..46ecd5c67163 100644 --- a/tests/routing/redirects.js +++ b/tests/routing/redirects.js @@ -2,12 +2,14 @@ import { fileURLToPath } from 'url' import path from 'path' import { isPlainObject } from 'lodash-es' import supertest from 'supertest' +import { jest } from '@jest/globals' + import createApp from '../../lib/app.js' import enterpriseServerReleases from '../../lib/enterprise-server-releases.js' import Page from '../../lib/page.js' import { get } from '../helpers/supertest.js' import versionSatisfiesRange from '../../lib/version-satisfies-range.js' -import { jest } from '@jest/globals' +import { PREFERRED_LOCALE_COOKIE_NAME } from '../../middleware/detect-language.js' const __dirname = path.dirname(fileURLToPath(import.meta.url)) @@ -132,6 +134,28 @@ describe('redirects', () => { expect(res.headers.location).toBe('/ja') expect(res.headers['cache-control']).toBe('private, no-store') }) + test('homepage redirects to preferred language by cookie', async () => { + const res = await get('/', { + headers: { + Cookie: `${PREFERRED_LOCALE_COOKIE_NAME}=ja`, + 'Accept-Language': 'es', // note how this is going to be ignored + }, + }) + expect(res.statusCode).toBe(302) + expect(res.headers.location).toBe('/ja') + expect(res.headers['cache-control']).toBe('private, no-store') + }) + test('homepage redirects to preferred language by cookie if valid', async () => { + const res = await get('/', { + headers: { + Cookie: `${PREFERRED_LOCALE_COOKIE_NAME}=xy`, + 'Accept-Language': 'ja', // note how this is going to be ignored + }, + }) + expect(res.statusCode).toBe(302) + expect(res.headers.location).toBe('/ja') + expect(res.headers['cache-control']).toBe('private, no-store') + }) }) describe('external redirects', () => { @@ -149,14 +173,68 @@ describe('redirects', () => { }) describe('localized redirects', () => { + const redirectFrom = + '/desktop/contributing-to-projects/changing-a-remote-s-url-from-github-desktop' + const redirectTo = + '/desktop/contributing-and-collaborating-using-github-desktop/working-with-your-remote-repository-on-github-or-github-enterprise/changing-a-remotes-url-from-github-desktop' + test('redirect_from for renamed pages', async () => { - const { res } = await get( - '/ja/desktop/contributing-to-projects/changing-a-remote-s-url-from-github-desktop' - ) + const { res } = await get(`/ja${redirectFrom}`) expect(res.statusCode).toBe(301) - const expected = - '/ja/desktop/contributing-and-collaborating-using-github-desktop/working-with-your-remote-repository-on-github-or-github-enterprise/changing-a-remotes-url-from-github-desktop' + const expected = `/ja${redirectTo}` + expect(res.headers.location).toBe(expected) + }) + + test('redirect_from for renamed pages by Accept-Language header', async () => { + const { res } = await get(redirectFrom, { + headers: { + 'Accept-Language': 'ja', + }, + }) + expect(res.statusCode).toBe(302) + const expected = `/ja${redirectTo}` expect(res.headers.location).toBe(expected) + expect(res.headers['cache-control']).toBe('private, no-store') + }) + + test('redirect_from for renamed pages but ignore Accept-Language header if not recognized', async () => { + const { res } = await get(redirectFrom, { + headers: { + // None of these are recognized + 'Accept-Language': 'sv,fr,gr', + }, + }) + expect(res.statusCode).toBe(302) + const expected = `/en${redirectTo}` + expect(res.headers.location).toBe(expected) + expect(res.headers['cache-control']).toBe('private, no-store') + }) + + test('redirect_from for renamed pages but ignore unrecognized Accept-Language header values', async () => { + const { res } = await get(redirectFrom, { + headers: { + // Only the last one is recognized + 'Accept-Language': 'sv,ja', + }, + }) + expect(res.statusCode).toBe(302) + const expected = `/ja${redirectTo}` + expect(res.headers.location).toBe(expected) + expect(res.headers['cache-control']).toBe('private, no-store') + }) + + test('will inject the preferred language from cookie', async () => { + const { res } = await get(redirectFrom, { + headers: { + Cookie: `${PREFERRED_LOCALE_COOKIE_NAME}=ja`, + 'Accept-Language': 'es', // note how this is going to be ignored + }, + }) + // 302 because the redirect depended on cookie + expect(res.statusCode).toBe(302) + const expected = `/ja${redirectTo}` + expect(res.headers.location).toBe(expected) + expect(res.headers['cache-control']).toBe('private, no-store') }) }) diff --git a/tests/unit/get-redirect.js b/tests/unit/get-redirect.js index 5ad969f6edc3..ad425e0be385 100644 --- a/tests/unit/get-redirect.js +++ b/tests/unit/get-redirect.js @@ -148,4 +148,18 @@ describe('getRedirect basics', () => { // it already has the enterprise-server prefix. expect(getRedirect('/enterprise-server/foo', ctx)).toBe(`/en/enterprise-server@${latest}/bar`) }) + + it('should redirect according to the req.context.userLanguage', () => { + const ctx = { + pages: {}, + redirects: { + '/foo': '/bar', + }, + userLanguage: 'ja', + } + expect(getRedirect('/foo', ctx)).toBe(`/ja/bar`) + // falls back to 'en' if it's falsy + ctx.userLanguage = null + expect(getRedirect('/foo', ctx)).toBe(`/en/bar`) + }) }) From f0b7088b758a79929c0a7d30793c2f0727b91d00 Mon Sep 17 00:00:00 2001 From: Chris Gavin Date: Mon, 7 Mar 2022 17:04:12 +0000 Subject: [PATCH 6/6] Make it clear that the SARIF `properties.security-severity` property should be a string. (#25976) --- .../sarif-support-for-code-scanning.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md b/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md index dc0a1285f3c0..1c40c8ccba6b 100644 --- a/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md +++ b/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md @@ -105,7 +105,7 @@ Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.pr | `properties.tags[]` | **Optional.** An array of strings. {% data variables.product.prodname_code_scanning_capc %} uses `tags` to allow you to filter results on {% data variables.product.prodname_dotcom %}. For example, it is possible to filter to all results that have the tag `security`. | `properties.precision` | **Recommended.** A string that indicates how often the results indicated by this rule are true. For example, if a rule has a known high false-positive rate, the precision should be `low`. {% data variables.product.prodname_code_scanning_capc %} orders results by precision on {% data variables.product.prodname_dotcom %} so that the results with the highest `level`, and highest `precision` are shown first. Can be one of: `very-high`, `high`, `medium`, or `low`. {% ifversion fpt or ghes > 3.1 or ghae or ghec %} | `properties.problem.severity` | **Recommended.** A string that indicates the level of severity of any alerts generated by a non-security query. This, with the `properties.precision` property, determines whether the results are displayed by default on {% data variables.product.prodname_dotcom %} so that the results with the highest `problem.severity`, and highest `precision` are shown first. Can be one of: `error`, `warning`, or `recommendation`. -| `properties.security-severity` | **Recommended.** A score that indicates the level of severity, between 0.0 and 10.0, for security queries (`@tags` includes `security`). This, with the `properties.precision` property, determines whether the results are displayed by default on {% data variables.product.prodname_dotcom %} so that the results with the highest `security-severity`, and highest `precision` are shown first. {% data variables.product.prodname_code_scanning_capc %} translates numerical scores as follows: over 9.0 is `critical`, 7.0 to 8.9 is `high`, 4.0 to 6.9 is `medium` and 3.9 or less is `low`. {% endif %} +| `properties.security-severity` | **Recommended.** A string representing a score that indicates the level of severity, between 0.0 and 10.0, for security queries (`@tags` includes `security`). This, with the `properties.precision` property, determines whether the results are displayed by default on {% data variables.product.prodname_dotcom %} so that the results with the highest `security-severity`, and highest `precision` are shown first. {% data variables.product.prodname_code_scanning_capc %} translates numerical scores as follows: over 9.0 is `critical`, 7.0 to 8.9 is `high`, 4.0 to 6.9 is `medium` and 3.9 or less is `low`. {% endif %} ### `result` object