Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docsp 19001 selinux denials v5.0 #6070

Closed
wants to merge 109 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
109 commits
Select commit Hold shift + click to select a range
afef0e4
execution-stats-fix
Aug 24, 2021
26054f9
DOCS-13584 Add reference that commands fail against system collection…
ianf-mongodb Aug 25, 2021
6493139
DOCS-13896 Added configTime and topologyTime with timestamp fields to…
ianf-mongodb Aug 18, 2021
9510fd6
DOCSP-14117 Timezone datafile update
mungitoperrito Aug 23, 2021
ed7991e
(DOCS-14741): Future-proof patch release warnings
jeff-allen-mongo Aug 18, 2021
660765c
(DOCS-14449): maxCatchUpPercentageBeforeBlockingWrites server parameter
jeff-allen-mongo Aug 18, 2021
fe07d06
(DOCS-14764): Fix typo in 5.0 compat notes
jeff-allen-mongo Aug 27, 2021
de6ef65
DOCS-14440 Update getlast.error in replica set config command REMOVED
ianf-mongodb Aug 26, 2021
84704db
Small release and compat notes refactor
jeff-allen-mongo Aug 27, 2021
b09aee5
Re-add map reduce deprecation
jeff-allen-mongo Aug 27, 2021
6a0801e
DOCS-14290 Mongosh db.currentOp now uses agg stage
ianf-mongodb Aug 23, 2021
1d02085
DOCSP-18309: Remove array restriction on time series
npentrel Aug 30, 2021
7ac1ba8
(DOCSP-18432): Backport DOCSP-17931 to v5.0. (#5755)
corryroot Aug 30, 2021
fc24b8e
DOCSP-18453: Fix timeseries insert bug
npentrel Aug 31, 2021
4c39898
(DOCS-14769): Preparing changelog for 5.0.3
jeff-allen-mongo Aug 31, 2021
65c3259
(DOCS-14770): Prepare changelog for 4.4.9
jeff-allen-mongo Aug 31, 2021
a06be75
DOCS-14394 Add 64-bit integer limit notes to and pages
ianf-mongodb Aug 23, 2021
b80d170
DOCSP-18150 removed blurb on page for 5.0.3 release.
ianf-mongodb Aug 31, 2021
3d40bba
(DOCSP-18425): Add Go to Driver Support for DBRefs table (#5767)
jeff-allen-mongo Aug 31, 2021
b74862d
Fix 'date' ref link target on ttl page
jeff-allen-mongo Sep 1, 2021
4b16e2c
DOCS-13309 short circuit evaluation
Aug 16, 2021
d7adbb9
DOCS-14433 config.transactions read concern disallowed
ianf-mongodb Aug 30, 2021
d206f00
(DOCS-14776): Prepare changelog for 4.0.27
jeff-allen-mongo Sep 2, 2021
6534d7f
(DOCS-14775): Prepare changelog for 4.2.16
jeff-allen-mongo Sep 2, 2021
8120471
(DOCSP-18316): Improve implicit default write concern docs
jeff-allen-mongo Aug 30, 2021
aff1d3f
(DOCS-13376): Add performance warnings for validation
jeff-allen-mongo Sep 2, 2021
e45406e
DOCSP-18504-remove-odd-numbered-release-warning
mungitoperrito Sep 2, 2021
240f4a2
DOCS-13838 Add error message notice to enableReadConcern
ianf-mongodb Aug 27, 2021
ed09d41
(DOCSP-18316): Change implicit write concern example
jeff-allen-mongo Sep 3, 2021
2554a15
DOCS-14765 Add Extra code examples for rs.reconfig()
ianf-mongodb Aug 30, 2021
38178ea
DOCSP-18007: Refactor Enable Access Control page
npentrel Aug 23, 2021
d940628
Fix timeseries example data structure
npentrel Sep 8, 2021
5488358
DOCSP-18008: Refactor authentication page
npentrel Aug 24, 2021
9737724
DOCSP-18009: Refactor Security Users section
npentrel Aug 24, 2021
b8d2ce2
(DOCSP-18602): Backport DOCSP-17931 to v5.0. (#5815)
corryroot Sep 9, 2021
120f781
(DOCS-14786): Add release date for 4.2.16
jeff-allen-mongo Sep 13, 2021
7325048
(DOCS-14785): Add release date for 4.0.27
jeff-allen-mongo Sep 14, 2021
65407cb
DOCS-14790 update type for replSetResizeOplog size param
mungitoperrito Sep 13, 2021
fad920c
DOCS-14757 virtual box not supported with hyper-v
mungitoperrito Sep 7, 2021
de5e636
DOCS-14281 add release notes and update partial index restrictions
ianf-mongodb Sep 14, 2021
a6bd836
(DOCSP-17930): Update getting started page for Atlas
jeff-allen-mongo Aug 19, 2021
ae0b525
DOCS-14804 4.2.17-release notes
ianf-mongodb Sep 17, 2021
9d77215
DOCS-14455 Add references for numHosts targeted in shardingStatistics
ianf-mongodb Sep 8, 2021
b790429
DOCS-14455 Add references for numHosts targeted in shardingStatistics
ianf-mongodb Sep 8, 2021
9ddebce
DOCS-14695-Upgrading language strength with regards to hidden delayed…
ianf-mongodb Sep 20, 2021
8e9e4e3
(DOCS-14803): Clarification for range deletes
jeff-allen-mongo Sep 20, 2021
04f94a4
DOCSP-18514 Added Atlas shoutout to main intro page (#5838)
ianf-mongodb Sep 21, 2021
41e5538
DOCS-14806 Added suggested edit for location of service script refere…
ianf-mongodb Sep 20, 2021
ec706e1
(DOCSP-18484): Fix confusing repl set resync step
jeff-allen-mongo Sep 8, 2021
a0530c5
(DOCS-14807): Add release date for 4.4.9
jeff-allen-mongo Sep 22, 2021
098d150
(DOCS-14808): Add release date for 5.0.3
jeff-allen-mongo Sep 22, 2021
573297e
Fix build errors
jeff-allen-mongo Sep 22, 2021
301fc3b
(DOCSP-18806): Add minor release warnings for 4.4.2-4.4.8, 5.0.0-5.0.2
jeff-allen-mongo Sep 22, 2021
e22a6c7
DOCSP-18660 Remove redundant note from serverStatus
mungitoperrito Sep 22, 2021
3f535ce
DOCS-13871 Add REPL output to serverStatus command (#5874)
ianf-mongodb Sep 24, 2021
2b1f4ce
DOCS-18789 Correcting case sensitivity limitation blurb
ianf-mongodb Sep 23, 2021
25de225
DOCSP-18010: Refactor Authentication mechanisms
npentrel Aug 26, 2021
f7496be
DOCSP-18271: Add list users page
npentrel Aug 26, 2021
c8e4ada
DOCSP-18011: Refactor Enterprise Auth structure
npentrel Sep 3, 2021
ae0e219
DOCS-14609 SBE order projection fields
Sep 20, 2021
015e130
DOCSP-16018 install guide for online audit
mungitoperrito Aug 24, 2021
2161554
(DOCS-14817): Add release date for 4.2.17
jeff-allen-mongo Sep 28, 2021
0858bf0
Docs 14795 update order numeric when possible (#5898)
jmd-mongo Sep 29, 2021
43225b5
DOCS-14828: fix for minSnapshotHistoryWindowInSeconds
npentrel Sep 30, 2021
88afa9e
Refactor Security Checklist
npentrel Sep 29, 2021
58942f1
DOCS-14595 serverStatus output change
ianf-mongodb Sep 30, 2021
1f9e54b
DOCS-14826 readWrite role has changeStream privilege
jmd-mongo Oct 1, 2021
c245c72
DOCS-14681 update typo in range window codeblock
ianf-mongodb Oct 4, 2021
7b7228f
DOCS-14375 add capped collection note to 5.0 changelog
ianf-mongodb Oct 1, 2021
321d79e
DOCSP-14047 add note about mongoshell to page
ianf-mongodb Oct 1, 2021
d3751b3
DOCS-14824: Clarify random part of objectId
npentrel Oct 1, 2021
facf868
DOCS-14452 view in log
Sep 30, 2021
2089bfe
DOCSP-17736 cluster chaining parameter
Sep 24, 2021
f1a6c04
DOCSP-17736 cluster chaining parameter
Sep 24, 2021
2a3136f
(DOCSP-18989): Remove note about mongosh custom app name
jeff-allen-mongo Oct 7, 2021
dea275d
DOCSP-15486 fix build errors
Sep 14, 2021
0b8476f
DOCSP-18892 improved examples for getField
mungitoperrito Oct 1, 2021
2e8e9d5
(DOCS-12321): Document new TLS version logging configuration option
jeff-allen-mongo Oct 6, 2021
fc9f744
(DOCS-14856): v4.4.10 initial changelog
jeff-allen-mongo Oct 8, 2021
4234612
(DOCS-14856): Replace date with 'upcoming' for 4.4.10 notes
jeff-allen-mongo Oct 8, 2021
981c750
DOCS-13868 chunk errors in sharded transactions
Oct 4, 2021
64e21f4
DOCS-14469: Address rename behaviour
npentrel Oct 11, 2021
62d160b
DOCS-14827: $merge and partial indexes
npentrel Oct 8, 2021
f1da46a
DOCSP-18495 link to sharding in agg ebook
mungitoperrito Oct 8, 2021
94591d1
DOCS-14370 primary hangs when setting FCV
Oct 7, 2021
1d2ca84
DOCS-14715 BACKPORT track match expressions
mungitoperrito Oct 5, 2021
4921164
DOCS-14860 BACKPORT contradictory-RHEL-support
mungitoperrito Oct 13, 2021
ffefb1f
DOCSP-19009 remove references to mongosh --gssapiHostName from the ma…
jmd-mongo Oct 8, 2021
dcbe816
(DOCS-14763): Clarify sample agg behavior warning
jeff-allen-mongo Sep 1, 2021
72b6dce
fix mmapv1 typo
jeff-allen-mongo Oct 13, 2021
93886aa
DOCS-14838 dataSize command specify units
Oct 12, 2021
ee7798d
DOCS-14846 non system user ulimit
Oct 11, 2021
aa85c58
DOCS-14771 getUser
Oct 14, 2021
8c99549
DOCSP-19047 Add generic message command syntax example
ianf-mongodb Oct 13, 2021
48d724a
DOCSP-13304 toDate (#6006) (#6007)
jason-price-mongodb Oct 15, 2021
ecd8316
DOCS-14852 update remainingOperationTimeEstimate blurb (#5998)
ianf-mongodb Oct 15, 2021
f60846a
DOCS-14855 reword-sample (#6012) (#6013)
jason-price-mongodb Oct 18, 2021
9d7c39b
DOCS-14556 add additional validate context to validate page (#6020)
ianf-mongodb Oct 20, 2021
ea51b5c
DOCSP-12376 findOneAndUpdate change (#6025) (#6026)
jason-price-mongodb Oct 20, 2021
7ff2272
(DOCSP-18813): Note that change streams cannot leverage indexes
jeff-allen-mongo Oct 13, 2021
57ba985
(DOCS-14868): Add release date for 4.4.10
jeff-allen-mongo Oct 25, 2021
9b2e36c
fix build error on change streams page
jeff-allen-mongo Oct 25, 2021
58248ee
DOCS-14854 findOneAndUpdate sharded (#6039) (#6040)
jason-price-mongodb Oct 25, 2021
1358b68
DOCSP-17690: Add new landing page
npentrel Oct 6, 2021
872fd8d
DOCS-13456 Typo on Hashed Sharding page (#6048) (#6049)
kennethdyer Oct 26, 2021
2210928
DOCS-14890 refactor start of aggregation pipeline page (#6056) (#6057)
jason-price-mongodb Oct 27, 2021
10556e3
DOCS-14228 Clarified updateExisting functionality
ianf-mongodb Oct 18, 2021
10cc97b
DOCS-13479 Add note for out and merge behavior on RS (#6065)
ianf-mongodb Oct 29, 2021
9059b45
DOCSP-19001 SELinux denials
mungitoperrito Oct 21, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions changelogs/generatechangelogs.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ def get_jira_issues(fixVersion):
return issues


def get_issue_structure(config, issues):
def get_issue_structure(config, issues, version):
"""
Group the JIRA issues by component. Structure headings and
subheadings.
Expand Down Expand Up @@ -227,7 +227,7 @@ def main():
config = get_config()

# Generate issue headings based on component config
issue_headings = get_issue_structure(config, issues)
issue_headings = get_issue_structure(config, issues, fixVersion)

# Convert the issue headings into rst
changelog_rst = generate_changelog_rst(config, issue_headings, fixVersion)
Expand Down
4 changes: 4 additions & 0 deletions config/changelog_conf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,9 @@ groups:
"Query":
- Querying
- Query Execution
- Query Language
- Indexing
- Index Maintenance
- Geo
- Text Search
"Write Operations":
Expand Down Expand Up @@ -44,6 +46,7 @@ groups:
- HTTP Console
"Build and Packaging":
- Build
- Build/compile
- Packaging
- Mobile
"Internals":
Expand All @@ -63,6 +66,7 @@ groups:
- Cache and eviction
- Backup
- Checkpoints
- Documentation
"Tools":
- Tools
- All Tools
Expand Down
8 changes: 8 additions & 0 deletions config/redirects
Original file line number Diff line number Diff line change
Expand Up @@ -1879,6 +1879,14 @@ raw: /manual/core/wildcard -> ${base}/manual/core/index-wildcard/

[v5.0-*]: /${version}/reference/read-concern-majority/#disable-read-concern-majority -> ${base}/${version}/reference/read-concern-majority/#primary-secondary-arbiter-replica-sets


#
# Redirects for 5.1 and greater (if pages are removed in 5.0 that used to exist in earlier versions)
#

[v5.0-*]: /${version}/core/core/authentication-mechanisms -> ${base}/${version}/core/authentication


#
# Upgrade / Downgrade redirects
#
Expand Down
1 change: 1 addition & 0 deletions snooty.toml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ toc_landing_pages = [
"/core/security-hardening",
"/core/security-internal-authentication",
"/core/security-ldap",
"/core/security-scram",
"/core/security-transport-encryption",
"/core/security-users",
"/core/security-x.509",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,3 +83,11 @@ From the moment an unsharded collection is sharded until the time the change
stream catches up to the first chunk migration, the ``documentKey`` in the
change stream notification document only includes the ``_id`` of the document,
not the full shard key.

Indexes
-------

Change streams cannot use indexes. MongoDB does not support creating
indexes on the :term:`oplog` collection. Therefore, avoid opening a high
number of :ref:`specifically-targeted <changeStreams-watch-deployment>`
change streams as these can impact server performance.
146 changes: 69 additions & 77 deletions source/administration/security-checklist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ Security Checklist

.. |arrow| unicode:: U+27A4

*Last updated: 2020-03-25*
*Last updated: 2021-09-29*

This documents provides a list of security measures that you should
This document provides a list of security measures that you should
implement to protect your MongoDB installation. The list is not meant
to be exhaustive.

Expand All @@ -20,46 +20,54 @@ Pre-production Checklist/Considerations
|arrow| Enable Access Control and Enforce Authentication
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Enable access control and specify the authentication mechanism.
You can use MongoDB's SCRAM or x.509 authentication mechanism or
integrate with your existing Kerberos/LDAP infrastructure. Authentication
requires that all clients and servers provide valid credentials
before they can connect to the system.
- Enable access control and specify an authentication mechanism.

|
MongoDB Community supports a number of :ref:`authentication mechanisms
<security-authentication-mechanisms>` that clients can use to verify
their identity:

See also:
- :ref:`authentication-scram` (*Default*)
- :ref:`x.509 Certificate Authentication <security-auth-x509>`.

- :doc:`/core/authentication`
- :doc:`/tutorial/enable-authentication`
In addition to the preceding mechanisms, MongoDB Atlas and MongoDB
Enterprise support the following mechanisms:

- :ref:`LDAP proxy authentication <security-auth-ldap>`, and
- :ref:`Kerberos authentication <security-auth-kerberos>`.

These mechanisms allow MongoDB to integrate into your
existing authentication system.

.. seealso::

- :doc:`/core/authentication`
- :doc:`/tutorial/enable-authentication`

.. _security-checklist-role-based-access-control:

|arrow| Configure Role-Based Access Control
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Create a user administrator **first**, then create additional
users. Create a unique MongoDB user for each person/application
that accesses the system.
- Create a :ref:`user administrator <create-user-admin>` **first**, then
create additional users. Create a unique MongoDB user for each
person/application that accesses the system.

- Follow the principle of least privilege. Create roles that define the
exact access rights required by a set of users. Then create
users and assign them only the roles they need to perform their
operations. A user can be a person or a client application.

.. note::

A user can have privileges across different databases. If a user
requires privileges on multiple databases, create a single user
with roles that grant applicable database privileges instead of
creating the user multiple times in different databases.

|

See also:
.. seealso::

- :doc:`/core/authorization`
- :doc:`/tutorial/manage-users-and-roles`
- :doc:`/core/authorization`
- :doc:`/tutorial/manage-users-and-roles`

|arrow| Encrypt Communication (TLS/SSL)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Expand All @@ -72,33 +80,29 @@ Pre-production Checklist/Considerations

.. include:: /includes/fact-tls-libraries.rst

.. note::

.. include:: /includes/fact-tls-1.0.rst
.. seealso::

|

See also: :doc:`/tutorial/configure-ssl`.

.. |binary| replace:: MongoDB
:doc:`/tutorial/configure-ssl`.

|arrow| Encrypt and Protect Data
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Starting with MongoDB Enterprise 3.2, you can encrypt data in
the storage layer with the WiredTiger storage engine's native
:doc:`/core/security-encryption-at-rest`.
- You can encrypt data in the storage layer with the WiredTiger storage
engine's native :doc:`/core/security-encryption-at-rest`.

- If you are not using WiredTiger's encryption at rest, MongoDB
data should be encrypted on each host using file-system, device,
or physical encryption (e.g. dm-crypt). Protect MongoDB data
using file-system permissions. MongoDB data includes data files,
configuration files, auditing logs, and key files.

- Collect logs to a central log store. These logs contain DB
authentication attempts including source IP address.


or physical encryption (for example dm-crypt). You should also protect
MongoDB data using file-system permissions. MongoDB data includes data
files, configuration files, auditing logs, and key files.

- You can use :doc:`/core/security-client-side-encryption` to encrypt
fields in documents application-side prior to transmitting data over
the wire to the server.

- Collect logs to a central log store. These logs contain database
authentication attempts including source IP addresses.

|arrow| Limit Network Exposure
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Expand All @@ -111,47 +115,39 @@ Pre-production Checklist/Considerations
- Allow only trusted clients to access the network interfaces and
ports on which MongoDB instances are available.

.. note::

.. include:: /includes/fact-default-bind-ip-change.rst
.. seealso::

|
- :doc:`/core/security-hardening`

See also:
- the :setting:`net.bindIp` configuration setting

- :doc:`/core/security-hardening`
- the :setting:`security.clusterIpSourceAllowlist` configuration
setting

- the :setting:`net.bindIp` configuration setting

- the :setting:`security.clusterIpSourceAllowlist` configuration
setting

- the :ref:`authenticationRestrictions
<db-createUser-authenticationRestrictions>` field to the
:method:`db.createUser()` command to specify a per-user IP
allow list.
- the :ref:`authenticationRestrictions
<db-createUser-authenticationRestrictions>` field to the
:method:`db.createUser()` command to specify a per-user IP
allow list.


|arrow| Audit System Activity
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Track access and changes to database configurations and data.
`MongoDB Enterprise
<http://www.mongodb.com/products/mongodb-enterprise-advanced?tck=docs_server>`_
<http://www.mongodb.com/products/mongodb-enterprise-advanced?tck=docs_server>`_
includes a system auditing facility that can record
system events (e.g. user operations, connection events) on a
system events (including user operations and connection events) on a
MongoDB instance. These audit records permit forensic analysis
and allow administrators to verify proper controls. You can set
up filters to record specific events, such as authentication
and allow administrators to exercise proper controls. You can set
up filters to record only specific events, such as authentication
events.

|

See also:
.. seealso::

- :doc:`/core/auditing`
- :doc:`/core/auditing`

- :doc:`/tutorial/configure-auditing`
- :doc:`/tutorial/configure-auditing`

|arrow| Run MongoDB with a Dedicated User
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Expand All @@ -160,9 +156,9 @@ Pre-production Checklist/Considerations
account. Ensure that the account has permissions to access data
but no unnecessary permissions.

|
.. seealso::

See also: :doc:`/installation`
:doc:`/installation`

.. _security-checklist-javascript:

Expand All @@ -173,35 +169,32 @@ Pre-production Checklist/Considerations
server-side operations: :dbcommand:`mapReduce`, :query:`$where`,
:group:`$accumulator`, and :expression:`$function`. If you do
not use these operations, disable server-side scripting by using
the :option:`--noscripting <mongod --noscripting>` option on the
command line.
the :option:`--noscripting <mongod --noscripting>` option.

- Keep input validation enabled. MongoDB enables input validation
by default through the :setting:`net.wireObjectCheck` setting.
This ensures that all documents stored by the
:binary:`~bin.mongod` instance are valid :term:`BSON`.

|
.. seealso::

See also: :doc:`/core/security-hardening`
:doc:`/core/security-hardening`

|arrow| Request a Security Technical Implementation Guide (where applicable)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- The Security Technical Implementation Guide (STIG) contains
security guidelines for deployments within the United States
Department of Defense. MongoDB Inc. provides its STIG, upon
request, for situations where it is required. Please `request a
copy <http://www.mongodb.com/lp/contact/stig-requests>`_ for
more information.
`request <http://www.mongodb.com/lp/contact/stig-requests>`_.

|arrow| Consider Security Standards Compliance
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- For applications requiring HIPAA or PCI-DSS compliance, please
refer to the `MongoDB Security Reference Architecture
<https://www.mongodb.com/collateral/mongodb-security-architecture>`_
to learn more about how you can use the key security
to learn more about how you can use MongoDB's key security
capabilities to build compliant application infrastructure.


Expand All @@ -213,15 +206,14 @@ Periodic/Ongoing Production Checks

- Consult the `MongoDB end of life dates
<https://www.mongodb.com/support-policy>`_ and upgrade your
MongoDB installation. In general, try to stay on the latest
MongoDB installation as needed. In general, try to stay on the latest
version.

- Ensure that your information security management system policies
and procedures extend to your MongoDB installation, including
performing the following:

- Periodically apply patches to your machine and review
guidelines.
- Periodically apply patches to your machine.

- Review policy/procedure changes, especially changes to your
network rules to prevent inadvertent MongoDB exposure to the
Expand Down
Loading