Skip to content

Commit f3f2ac3

Browse files
authored
SPEC-1575 Rename MONGODB-IAM to MONGODB-AWS (#742)
1 parent 4893324 commit f3f2ac3

File tree

1 file changed

+20
-17
lines changed

1 file changed

+20
-17
lines changed

source/auth/auth.rst

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ Drivers SHOULD contain a type called `MongoCredential`. It SHOULD contain some o
7474

7575
username (string)
7676
* Applies to all mechanisms.
77-
* Optional for MONGODB-X509 and MONGODB-IAM.
77+
* Optional for MONGODB-X509 and MONGODB-AWS.
7878
source (string)
7979
* Applies to all mechanisms.
8080
* Always '$external' for GSSAPI and MONGODB-X509.
@@ -709,17 +709,17 @@ mechanism
709709
mechanism_properties
710710
MUST NOT be specified.
711711

712-
MONGODB-IAM
712+
MONGODB-AWS
713713
~~~~~~~~~~~
714714

715715
:since: 4.4
716716

717-
MONGODB-IAM authenticates using AWS IAM credentials (an access key ID and a secret access key), `temporary IAM credentials <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html>`_ obtained from an
717+
MONGODB-AWS authenticates using AWS IAM credentials (an access key ID and a secret access key), `temporary AWS IAM credentials <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html>`_ obtained from an
718718
`AWS Security Token Service (STS) <https://docs.aws.amazon.com/STS/latest/APIReference/Welcome.html>`_
719719
`Assume Role <https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html>`_ request,
720-
or temporary IAM credentials assigned to an `EC2 instance <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html>`_ or ECS task. Temporary credentials, in addition to an access key ID and a secret access key, includes a security (or session) token.
720+
or temporary AWS IAM credentials assigned to an `EC2 instance <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html>`_ or ECS task. Temporary credentials, in addition to an access key ID and a secret access key, includes a security (or session) token.
721721

722-
MONGODB-IAM requires that a client create a randomly generated nonce. It is
722+
MONGODB-AWS requires that a client create a randomly generated nonce. It is
723723
imperative, for security sake, that this be as secure and truly random as possible.
724724

725725
All messages between MongoDB clients and servers are sent as BSON V1.1 Objects in the payload field of saslStart and saslContinue.
@@ -752,7 +752,7 @@ Drivers must also validate that the host is greater than 0 and less than or equa
752752
`RFC 1035 <https://tools.ietf.org/html/rfc1035>`_. Drivers MUST reject FQDN names with empty labels, e.g., "abc..def", and error on any
753753
additional fields. Drivers MUST respond to the server's message with an ``authorization header`` and a ``date``.
754754

755-
As an example, given a client nonce value of "dzw1U2IwSEtgaWI0IUxZMVJqc2xuQzNCcUxBc05wZjI=", a MONGODB-IAM conversation decoded from
755+
As an example, given a client nonce value of "dzw1U2IwSEtgaWI0IUxZMVJqc2xuQzNCcUxBc05wZjI=", a MONGODB-AWS conversation decoded from
756756
BSON to JSON would appear as follows:
757757

758758
Client First
@@ -793,7 +793,7 @@ Client First
793793
794794
{
795795
"saslStart" : 1,
796-
"mechanism" : "MONGODB-IAM",
796+
"mechanism" : "MONGODB-AWS"
797797
"payload" : new BinData(0, "NAAAAAVyACAAAAAAWj0lSjp8M0BMKGU+QVAzRSpWfk0hJigqO1V+b0FaVz4QcABuAAAAAA==")
798798
}
799799
|
@@ -880,16 +880,16 @@ first us-east-1
880880
`````````````````````````````
881881

882882
username
883-
MAY be specified. The non-sensitive IAM access key.
883+
MAY be specified. The non-sensitive AWS access key.
884884

885885
source
886886
MUST be "$external". Defaults to ``$external``.
887887

888888
password
889-
MAY be specified. The sensitive IAM secret key.
889+
MAY be specified. The sensitive AWS secret key.
890890

891891
mechanism
892-
MUST be "MONGODB-IAM"
892+
MUST be "MONGODB-AWS"
893893

894894
mechanism_properties
895895
AWS_SESSION_TOKEN
@@ -898,21 +898,21 @@ mechanism_properties
898898

899899
Obtaining Credentials
900900
`````````````````````
901-
Drivers will need IAM credentials (an access key and a secret access key) to complete the steps in the `Signature Version 4 Signing Process
901+
Drivers will need AWS IAM credentials (an access key and a secret access key) to complete the steps in the `Signature Version 4 Signing Process
902902
<https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html?shortFooter=true>`_. If a username and password are provided drivers
903-
MUST use these for the IAM access key and IAM secret key, respectively. If a username is provided without a password (or vice-versa) drivers
904-
MUST raise an error. An example URI for authentication with MONGODB-IAM using IAM credentials is as follows:
903+
MUST use these for the AWS IAM access key and AWS IAM secret key, respectively. If a username is provided without a password (or vice-versa) drivers
904+
MUST raise an error. An example URI for authentication with MONGODB-AWS using AWS IAM credentials is as follows:
905905

906906
.. code:: javascript
907907
908-
"mongodb://<access_key>:<secret_key>@mongodb.example.com/?authMechanism=MONGODB-IAM"
908+
"mongodb://<access_key>:<secret_key>@mongodb.example.com/?authMechanism=MONGODB-AWS"
909909
|
910910
Users MAY have obtained temporary credentials through an `AssumeRole <https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html>`_
911911
request. If so, then in addition to a username and password, users MAY also provide an ``AWS_SESSION_TOKEN`` as a ``mechanism_property``.
912912

913913
.. code:: javascript
914914
915-
"mongodb://<access_key>:<secret_key>@mongodb.example.com/?authMechanism=MONGODB-IAM&authMechanismProperties=AWS_SESSION_TOKEN:<security_token>"
915+
"mongodb://<access_key>:<secret_key>@mongodb.example.com/?authMechanism=MONGODB-AWS&authMechanismProperties=AWS_SESSION_TOKEN:<security_token>"
916916
|
917917
If a username and password are not provided, drivers MUST query a link-local AWS address for temporary credentials.
918918
If temporary credentials cannot be obtained then drivers MUST fail authentication and raise an error. Drivers SHOULD
@@ -977,14 +977,14 @@ Auth Related Options
977977
--------------------
978978

979979
authMechanism
980-
MONGODB-CR, MONGODB-X509, GSSAPI, PLAIN, SCRAM-SHA-1, SCRAM-SHA-256, MONGODB-IAM
980+
MONGODB-CR, MONGODB-X509, GSSAPI, PLAIN, SCRAM-SHA-1, SCRAM-SHA-256, MONGODB-AWS
981981

982982
Sets the Mechanism property on the MongoCredential. When not set, the default will be one of SCRAM-SHA-256, SCRAM-SHA-1 or MONGODB-CR, following the auth spec default mechanism rules.
983983

984984
authSource
985985
Sets the Source property on the MongoCredential.
986986

987-
For GSSAPI, MONGODB-X509 and MONGODB-IAM authMechanisms the authSource defaults to ``$external``.
987+
For GSSAPI, MONGODB-X509 and MONGODB-AWS authMechanisms the authSource defaults to ``$external``.
988988
For PLAIN the authSource defaults to the database name if supplied on the connection string or ``$external``.
989989
For MONGODB-CR, SCRAM-SHA-1 and SCRAM-SHA-256 authMechanisms, the authSource defaults to the database name if supplied on the connection string or ``admin``.
990990

@@ -1193,6 +1193,9 @@ Q: Why does SCRAM sometimes SASLprep and sometimes not?
11931193
Version History
11941194
===============
11951195

1196+
Version 1.10.1 Changes
1197+
* Rename MONGODB-IAM to MONGODB-AWS
1198+
11961199
Version 1.10.0 Changes
11971200
* Support shorter SCRAM conversation starting in version 4.4 of the server.
11981201

0 commit comments

Comments
 (0)