doc: various updates (#60)
* document specifying org on invite * replace all reference to out of date menu option * document naming tokens * update create organization * document 2fa enforcement (Heavily inspired by https://docs.github.com/en/organizations/keeping-your-organization-secure/requiring-two-factor-authentication-in-your-organization) Co-authored-by: Edward Thomson <ethomson@github.com>
Myles Borins committed
Jan 13, 2022 at 12:22 UTC
12b2c01e8100c242e60d6a51d825ead85c686438
29 files changed
+114
-48
content/getting-started/managing-your-npm-user-account/managing-your-profile-settings.mdx
+2
-2
@@ -23,9 +23,9 @@ From the web, you can change the following user profile settings:
23
24
<>{shared['user-login'].image}</>
25
26
-2. <>{shared['profile-settings'].text}</>
26
+2. <>{shared['account-settings'].text}</>
27
28
- <>{shared['profile-settings'].image}</>
28
+ <>{shared['account-settings'].image}</>
29
30
## Managing user account profile settings from the command line
31
content/getting-started/setting-up-your-npm-user-account/configuring-two-factor-authentication.mdx
+2
-2
@@ -62,9 +62,9 @@ If you have 2FA enabled, you can remove it from your profile settings page.
62
63
<>{shared['user-login'].image}</>
64
65
-2. <>{shared['profile-settings'].text}</>
65
+2. <>{shared['account-settings'].text}</>
66
67
- <>{shared['profile-settings'].image}</>
67
+ <>{shared['account-settings'].image}</>
68
69
3. On the profile settings page, under "Two-Factor Authentication", click **Modify 2FA**.
70
content/integrations/integrating-npm-with-external-services/creating-and-viewing-access-tokens.mdx
+6
-4
@@ -13,11 +13,13 @@ You can [create](#creating-access-tokens) and [view](#viewing-access-tokens) acc
13
14
<Screenshot src="/integrations/integrating-npm-with-external-services/tokens-profile.png" alt="Screenshot of the account menu with the tokens link selected" />
15
16
-2. Click **Create New Token**.
16
+2. Click **Generate New Token**.
17
18
<Screenshot src="/integrations/integrating-npm-with-external-services/create-token.png" alt="Screenshot of the create new token button" />
19
20
-3. Select the type of access token:
20
+3. (Optional) Name your token
21
+
22
+4. Select the type of access token:
23
24
- **Read-only**: a read-only token can only be used to download packages from the registry. It will have permission to read any private package that you have access to. This is recommended for automation and workflows where you are installing packages, but not publishing new ones.
25
@@ -27,9 +29,9 @@ You can [create](#creating-access-tokens) and [view](#viewing-access-tokens) acc
29
30
<Screenshot src="/integrations/integrating-npm-with-external-services/token-level-select.png" alt="Screenshot of the access level selection" />
31
30
-4. Click **Generate Token**.
32
+5. Click **Generate Token**.
33
32
-5. Copy the token from the top of page.
34
+6. Copy the token from the top of page.
35
36
### Creating tokens with the CLI
37
content/organizations/creating-and-managing-organizations/creating-an-organization.mdx
+1
-1
@@ -30,7 +30,7 @@ Any npm user can create an organization to manage contributor access to packages
30
31
<>{shared['billing-organization-plans'].image}</>
32
33
-5. (Optional) On the organization invitation page, type the npm username or email address of a person you would like to add to your organization as a member, then click **Invite**.
33
+5. (Optional) On the organization invitation page, type the npm username or email address of a person you would like to add to your organization as a member and select a team to invite them to, then click **Invite**.
34
35
<Screenshot src="/organizations/creating-and-managing-organizations/create-invite.png" alt="Screenshot showing the invitation options for a new organization" />
36
content/organizations/creating-and-managing-organizations/requiring-two-factor-authentication-in-your-organization.mdx
new
+62
@@ -0,0 +1,62 @@
1
+---
2
+title: Requiring two-factor authentication in your organization
3
+redirect_from:
4
+ - /requiring-two-factor-authentication-in-your-organization
5
+---
6
+import shared from '../../../src/shared.js'
7
+
8
+Organization owners can require organization members to enable two-factor authentication for their personal accounts, making it harder for malicious actors to access an organization's packages and settings
9
+
10
+## About two-factor authentication for organizations
11
+
12
+Two-factor authentication (2FA) is an extra layer of security used when logging into websites or apps. You can require all members in your organization to enable two-factor authentication on npm. For more information about two-factor authentication, see ["Configuring two-factor authentication."][configure-2fa].
13
+
14
+<Note>
15
+
16
+**Note:**
17
+ * When you require use of two-factor authentication for your organization, members who do not use 2FA will be removed from the organization and lose access to its packages. You can add them back to the organization if they enable two-factor authentication.
18
+ * An organization owner cannot opt-in to requiring 2FA for an organization if they do not have 2FA enabled on their account.
19
+ * If you are the member of an organization that requires 2FA you will not be able to disable 2FA until you leave that organization.
20
+
21
+</Note>
22
+
23
+## Prerequisites
24
+
25
+Before you can require organization members to use two-factor authentication, you must enable two-factor authentication for your account on npm. For more information, see ["Configuring two-factor authentication."][configure-2fa].
26
+
27
+Before you require use of two-factor authentication, we recommend notifying organization members and asking them to set up 2FA for their accounts. You can see if members already use 2Fa in the organizations members page.
28
+
29
+## Requiring two-factor authentication in your organization
30
+
31
+
32
+1. <>{shared['user-login'].text}</>
33
+
34
+ <>{shared['user-login'].image}</>
35
+
36
+2. <>{shared['account-settings'].text}</>
37
+
38
+ <>{shared['account-settings'].image}</>
39
+
40
+3. <>{shared['organization-selection'].text}</>
41
+
42
+ <>{shared['organization-selection'].image}</>
43
+
44
+4. <>{shared['organization-members-tab'].text}</>
45
+
46
+ <>{shared['organization-members-tab'].image}</>
47
+
48
+5. Click the **Enable 2FA Enforcement** button.
49
+
50
+ <Screenshot src="/organizations/requiring-two-factor-authentication-in-your-organization/enable-2fa.png" alt="Screenshot of the enforce 2fa button" />
51
+
52
+6. If prompted, read the information about members who will be removed from the organization. Type your organization's name to confirm the change, then click Remove members & require two-factor authentication.
53
+
54
+ <Screenshot src="/organizations/requiring-two-factor-authentication-in-your-organization/removal-confirmation.png" alt="Screenshot of the removal confirmation prompt" />
55
+
56
+7. If any members are removed from the organization, we recommend sending them an invitation that can reinstate their former privileges and access to your organization. They must enable two-factor authentication before they can accept your invitation.
57
+
58
+## Helping removed members and outside collaborators rejoin your organization
59
+
60
+If any members are removed from the organization when you enable required use of two-factor authentication, they'll receive an email notifying them that they've been removed. They should then enable 2FA for their personal account, and contact an organization owner to request access to your organization.
61
+
62
+[configure-2fa]: configuring-two-factor-authentication
content/organizations/managing-organization-members/adding-members-to-your-organization.mdx
+5
-5
@@ -22,9 +22,9 @@ If you have a [paid organization][paid-org], as part of an npm Teams plan, you w
22
23
<>{shared['user-login'].image}</>
24
25
-2. <>{shared['profile-settings'].text}</>
25
+2. <>{shared['account-settings'].text}</>
26
27
- <>{shared['profile-settings'].image}</>
27
+ <>{shared['account-settings'].image}</>
28
29
3. <>{shared['organization-selection'].text}</>
30
@@ -38,7 +38,7 @@ If you have a [paid organization][paid-org], as part of an npm Teams plan, you w
38
39
<Screenshot src="/organizations/managing-organization-members/invite-members-button.png" alt="Screenshot of the invite members button" />
40
41
-6. In the "Username or email" field, type the username or email address of the person you wish to invite.
41
+6. In the "Username or email" field, type the username or email address of the person you wish to invite. Optionally you can select a specific team to invite the member to.
42
43
<Screenshot src="/organizations/managing-organization-members/username-or-email-field.png" alt="Screenshot of the username or email field" />
44
@@ -54,9 +54,9 @@ As an organization owner, if you've made a mistake in inviting someone to your o
54
55
<>{shared['user-login'].image}</>
56
57
-2. <>{shared['profile-settings'].text}</>
57
+2. <>{shared['account-settings'].text}</>
58
59
- <>{shared['profile-settings'].image}</>
59
+ <>{shared['account-settings'].image}</>
60
61
3. <>{shared['organization-selection'].text}</>
62
content/organizations/managing-organization-members/managing-organization-permissions.mdx
+2
-2
@@ -11,9 +11,9 @@ As an organization owner, you can change the role of any member of your organiza
11
12
<>{shared['user-login'].image}</>
13
14
-2. <>{shared['profile-settings'].text}</>
14
+2. <>{shared['account-settings'].text}</>
15
16
- <>{shared['profile-settings'].image}</>
16
+ <>{shared['account-settings'].image}</>
17
18
3. <>{shared['organization-selection'].text}</>
19
content/organizations/managing-organization-members/removing-members-from-your-organization.mdx
+2
-2
@@ -19,9 +19,9 @@ If you remove a member from an npm Teams subscription (a paid organization), the
19
20
<>{shared['user-login'].image}</>
21
22
-2. <>{shared['profile-settings'].text}</>
22
+2. <>{shared['account-settings'].text}</>
23
24
- <>{shared['profile-settings'].image}</>
24
+ <>{shared['account-settings'].image}</>
25
26
3. <>{shared['organization-selection'].text}</>
27
content/organizations/managing-teams/adding-organization-members-to-teams.mdx
+2
-2
@@ -17,9 +17,9 @@ As an organization owner or team admin, you can add organization members to team
17
18
<>{shared['user-login'].image}</>
19
20
-2. <>{shared['profile-settings'].text}</>
20
+2. <>{shared['account-settings'].text}</>
21
22
- <>{shared['profile-settings'].image}</>
22
+ <>{shared['account-settings'].image}</>
23
24
3. <>{shared['organization-selection'].text}</>
25
content/organizations/managing-teams/creating-teams.mdx
+2
-2
@@ -15,9 +15,9 @@ As an organization owner or team admin, you can create teams to manage access to
15
16
<>{shared['user-login'].image}</>
17
18
-2. <>{shared['profile-settings'].text}</>
18
+2. <>{shared['account-settings'].text}</>
19
20
- <>{shared['profile-settings'].image}</>
20
+ <>{shared['account-settings'].image}</>
21
22
3. <>{shared['organization-selection'].text}</>
23
content/organizations/managing-teams/managing-team-access-to-organization-packages.mdx
+6
-6
@@ -16,9 +16,9 @@ As an organization owner or team admin, you can add or remove package access to
16
17
<>{shared['user-login'].image}</>
18
19
-2. <>{shared['profile-settings'].text}</>
19
+2. <>{shared['account-settings'].text}</>
20
21
- <>{shared['profile-settings'].image}</>
21
+ <>{shared['account-settings'].image}</>
22
23
3. <>{shared['organization-selection'].text}</>
24
@@ -63,9 +63,9 @@ For more information, see "[npm-access][access-cli]".
63
64
<>{shared['user-login'].image}</>
65
66
-2. <>{shared['profile-settings'].text}</>
66
+2. <>{shared['account-settings'].text}</>
67
68
- <>{shared['profile-settings'].image}</>
68
+ <>{shared['account-settings'].image}</>
69
70
3. <>{shared['organization-selection'].text}</>
71
@@ -101,9 +101,9 @@ For more information, see "[npm-access][access-cli]".
101
102
<>{shared['user-login'].image}</>
103
104
-2. <>{shared['profile-settings'].text}</>
104
+2. <>{shared['account-settings'].text}</>
105
106
- <>{shared['profile-settings'].image}</>
106
+ <>{shared['account-settings'].image}</>
107
108
3. <>{shared['organization-selection'].text}</>
109
content/organizations/managing-teams/removing-organization-members-from-teams.mdx
+2
-2
@@ -11,9 +11,9 @@ As an organization owner or team admin, you can remove organization members from
11
12
<>{shared['user-login'].image}</>
13
14
-2. <>{shared['profile-settings'].text}</>
14
+2. <>{shared['account-settings'].text}</>
15
16
- <>{shared['profile-settings'].image}</>
16
+ <>{shared['account-settings'].image}</>
17
18
3. <>{shared['organization-selection'].text}</>
19
content/organizations/managing-teams/removing-teams.mdx
+2
-2
@@ -13,9 +13,9 @@ As an organization owner or team admin, you can remove teams that no longer need
13
14
<>{shared['user-login'].image}</>
15
16
-2. <>{shared['profile-settings'].text}</>
16
+2. <>{shared['account-settings'].text}</>
17
18
- <>{shared['profile-settings'].image}</>
18
+ <>{shared['account-settings'].image}</>
19
20
3. <>{shared['organization-selection'].text}</>
21
content/organizations/paying-for-your-organization/downgrading-to-a-free-organization-plan.mdx
+2
-2
@@ -19,9 +19,9 @@ If you are a subscriber to the npm Teams product (you have a paid organization)
19
20
<>{shared['user-login'].image}</>
21
22
-2. <>{shared['profile-settings'].text}</>
22
+2. <>{shared['account-settings'].text}</>
23
24
- <>{shared['profile-settings'].image}</>
24
+ <>{shared['account-settings'].image}</>
25
26
3. In the left sidebar, click the name of the organization you want to downgrade.
27
content/organizations/paying-for-your-organization/updating-organization-billing-settings.mdx
+4
-4
@@ -23,9 +23,9 @@ As an owner of an npm Teams subscription, a paid organization plan, you can upda
23
24
<>{shared['user-login'].image}</>
25
26
-2. <>{shared['profile-settings'].text}</>
26
+2. <>{shared['account-settings'].text}</>
27
28
- <>{shared['profile-settings'].image}</>
28
+ <>{shared['account-settings'].image}</>
29
30
3. In the left sidebar, click the name of the organization whose credit card information you want to change.
31
@@ -73,9 +73,9 @@ As an organization owner, you can update the email address used for receipts, an
73
74
<>{shared['user-login'].image}</>
75
76
-2. <>{shared['profile-settings'].text}</>
76
+2. <>{shared['account-settings'].text}</>
77
78
- <>{shared['profile-settings'].image}</>
78
+ <>{shared['account-settings'].image}</>
79
80
3. In the left sidebar, click the name of the organization whose billing receipt information you want to change.
81
content/organizations/paying-for-your-organization/upgrading-to-a-paid-organization-plan.mdx
+2
-2
@@ -23,9 +23,9 @@ Newly added members to an organization are always billed during the next billing
23
24
<>{shared['user-login'].image}</>
25
26
-2. <>{shared['profile-settings'].text}</>
26
+2. <>{shared['account-settings'].text}</>
27
28
- <>{shared['profile-settings'].image}</>
28
+ <>{shared['account-settings'].image}</>
29
30
3. In the left sidebar, click the name of the organization you want to upgrade.
31
content/organizations/paying-for-your-organization/viewing-downloading-and-emailing-receipts-for-your-organization.mdx
+6
-6
@@ -19,9 +19,9 @@ As an organization owner, you can view, download, and email receipts for the com
19
20
<>{shared['user-login'].image}</>
21
22
-2. <>{shared['profile-settings'].text}</>
22
+2. <>{shared['account-settings'].text}</>
23
24
- <>{shared['profile-settings'].image}</>
24
+ <>{shared['account-settings'].image}</>
25
26
3. In the left sidebar, click the name of the organization whose billing receipts you want to view.
27
@@ -47,9 +47,9 @@ As an organization owner, you can view, download, and email receipts for the com
47
48
<>{shared['user-login'].image}</>
49
50
-2. <>{shared['profile-settings'].text}</>
50
+2. <>{shared['account-settings'].text}</>
51
52
- <>{shared['profile-settings'].image}</>
52
+ <>{shared['account-settings'].image}</>
53
54
3. In the left sidebar, click the name of the organization whose billing receipts you want to download.
55
@@ -77,9 +77,9 @@ As an organization owner, you can view, download, and email receipts for the com
77
78
<>{shared['user-login'].image}</>
79
80
-2. <>{shared['profile-settings'].text}</>
80
+2. <>{shared['account-settings'].text}</>
81
82
- <>{shared['profile-settings'].image}</>
82
+ <>{shared['account-settings'].image}</>
83
84
3. In the left sidebar, click the name of the organization whose billing receipts you want to email.
85
src/gatsby-theme-doctornpm/nav.yml
+2
@@ -186,6 +186,8 @@
186
url: /creating-an-organization
187
- title: Converting your user account to an organization
188
url: /converting-your-user-account-to-an-organization
189
+ - title: Requiring two-factor authentication in your organization
190
+ url: /requiring-two-factor-authentication-in-your-organization
191
- title: Renaming an organization
192
url: /renaming-an-organization
193
- title: Deleting an organization
src/shared.js
+2
-2
@@ -142,8 +142,8 @@ const shared = {
142
143
/* Organizations */
144
'organization-create': {
145
- 'text': (<>In the upper right corner of the page, click your profile picture, then click <strong>Create an Organization</strong>.</>),
146
- 'image': (<Screenshot src="/shared/organization-create.png" alt="Screenshot of the create an organization dropdown menu" />),
145
+ 'text': (<>In the upper right corner of the page, click your profile picture, then click <strong>Add an Organization</strong>.</>),
146
+ 'image': (<Screenshot src="/shared/organization-create.png" alt="Screenshot of the add an organization dropdown menu" />),
147
},
148
'organization-selection': {
149
'text': (<>In the left sidebar, click the name of your organization.</>),
static/integrations/integrating-npm-with-external-services/create-token.png
Binary files a/static/integrations/integrating-npm-with-external-services/create-token.png and b/static/integrations/integrating-npm-with-external-services/create-token.png differ
static/integrations/integrating-npm-with-external-services/token-level-select.png
Binary files a/static/integrations/integrating-npm-with-external-services/token-level-select.png and b/static/integrations/integrating-npm-with-external-services/token-level-select.png differ
static/organizations/creating-and-managing-organizations/create-confirm.png
Binary files a/static/organizations/creating-and-managing-organizations/create-confirm.png and b/static/organizations/creating-and-managing-organizations/create-confirm.png differ
static/organizations/creating-and-managing-organizations/create-invite.png
Binary files a/static/organizations/creating-and-managing-organizations/create-invite.png and b/static/organizations/creating-and-managing-organizations/create-invite.png differ
static/organizations/managing-organization-members/invite-members-button.png
Binary files a/static/organizations/managing-organization-members/invite-members-button.png and b/static/organizations/managing-organization-members/invite-members-button.png differ
static/organizations/managing-organization-members/username-or-email-field.png
Binary files a/static/organizations/managing-organization-members/username-or-email-field.png and b/static/organizations/managing-organization-members/username-or-email-field.png differ
static/organizations/requiring-two-factor-authentication-in-your-organization/enable-2fa.png
Binary files /dev/null and b/static/organizations/requiring-two-factor-authentication-in-your-organization/enable-2fa.png differ
static/organizations/requiring-two-factor-authentication-in-your-organization/removal-confirmation.png
Binary files /dev/null and b/static/organizations/requiring-two-factor-authentication-in-your-organization/removal-confirmation.png differ
static/shared/billing-plan-selection.png
Binary files a/static/shared/billing-plan-selection.png and b/static/shared/billing-plan-selection.png differ
static/shared/organization-create.png
Binary files a/static/shared/organization-create.png and b/static/shared/organization-create.png differ