From e0a301917fc047ee4927ab8a09b044357f3c3296 Mon Sep 17 00:00:00 2001 From: Alfred Gedeon Date: Fri, 2 Feb 2024 08:54:20 -0800 Subject: [PATCH 1/3] add windows cert snippet to userguide --- documents/MQTT5_Userguide.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/documents/MQTT5_Userguide.md b/documents/MQTT5_Userguide.md index bbb33b1c..fa97e2f1 100644 --- a/documents/MQTT5_Userguide.md +++ b/documents/MQTT5_Userguide.md @@ -211,6 +211,19 @@ To create a MQTT5 builder configured for this connection, see the following code **Note**: A Cognito identity ID is different from a Cognito identity pool ID and trying to connect with a Cognito identity pool ID will not work. If you are unable to connect, make sure you are passing a Cognito identity ID rather than a Cognito identity pool ID. +#### **Direct MQTT with Windows Certificate Store Method** +A MQTT5 direct connection can be made with mutual TLS with the certificate and private key in the Windows certificate +store, rather than simply being files on disk. To create a MQTT5 builder configured for this connection, see the +following code: + +```python + client = mqtt5_client_builder.mtls_with_windows_cert_store_path( + cert_store_path="", + endpoint="") +``` + +**Note**: Windows Certificate Store connection support is only available on Windows devices. + ### **Adding an HTTP Proxy** No matter what your connection transport or authentication method is, you may connect through an HTTP proxy by adding the http_proxy_options keyword argument to the builder: From 23d62ae012ba50659ba385398a00e0ec059fc643 Mon Sep 17 00:00:00 2001 From: Alfred Gedeon Date: Fri, 2 Feb 2024 13:47:00 -0800 Subject: [PATCH 2/3] Add enntry to table of content, and to pubsub user guide --- documents/MQTT5_Userguide.md | 1 + samples/mqtt5_pubsub.md | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/documents/MQTT5_Userguide.md b/documents/MQTT5_Userguide.md index fa97e2f1..ba32434e 100644 --- a/documents/MQTT5_Userguide.md +++ b/documents/MQTT5_Userguide.md @@ -15,6 +15,7 @@ * [Direct MQTT with PKCS12 Method](#direct-mqtt-with-pkcs12-method) * [MQTT over Websockets with Sigv4 authentication](#mqtt-over-websockets-with-sigv4-authentication) * [MQTT over Websockets with Cognito authentication](#mqtt-over-websockets-with-cognito-authentication) + * [Direct MQTT with Windows Certificate Store Method](#direct-mqtt-with-windows-certificate-store-method) * [Adding an HTTP Proxy](#adding-an-http-proxy) * [Client Lifecycle Management](#client-lifecycle-management) * [Lifecycle Events](#lifecycle-events) diff --git a/samples/mqtt5_pubsub.md b/samples/mqtt5_pubsub.md index 3cac6e13..eb9cbc7a 100644 --- a/samples/mqtt5_pubsub.md +++ b/samples/mqtt5_pubsub.md @@ -82,6 +82,7 @@ All lifecycle events and the callback for publishes received by the MQTT5 Client * [Direct MQTT with PKCS12 Method](#direct-mqtt-with-pkcs12-method) * [MQTT over Websockets with Sigv4 authentication](#mqtt-over-websockets-with-sigv4-authentication) * [MQTT over Websockets with Cognito authentication](#mqtt-over-websockets-with-cognito-authentication) +* [Direct MQTT with Windows Certificate Store Method](#direct-mqtt-with-windows-certificate-store-method) ### HTTP Proxy * [Adding an HTTP Proxy](#adding-an-http-proxy) @@ -171,6 +172,19 @@ To create a MQTT5 builder configured for this connection, see the following code **Note**: A Cognito identity ID is different from a Cognito identity pool ID and trying to connect with a Cognito identity pool ID will not work. If you are unable to connect, make sure you are passing a Cognito identity ID rather than a Cognito identity pool ID. +#### **Direct MQTT with Windows Certificate Store Method** +A MQTT5 direct connection can be made with mutual TLS with the certificate and private key in the Windows certificate +store, rather than simply being files on disk. To create a MQTT5 builder configured for this connection, see the +following code: + +```python + client = mqtt5_client_builder.mtls_with_windows_cert_store_path( + cert_store_path="", + endpoint="") +``` + +**Note**: Windows Certificate Store connection support is only available on Windows devices. + ## **Adding an HTTP Proxy** No matter what your connection transport or authentication method is, you may connect through an HTTP proxy by adding the http_proxy_options keyword argument to the builder: From 98cd61cec40f237949c04ce823053592d94ae539 Mon Sep 17 00:00:00 2001 From: Alfred G <28123637+alfred2g@users.noreply.github.com> Date: Thu, 8 Feb 2024 17:38:56 -0800 Subject: [PATCH 3/3] Update MQTT5_Userguide.md Change java to python --- documents/MQTT5_Userguide.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/documents/MQTT5_Userguide.md b/documents/MQTT5_Userguide.md index ba32434e..20f52236 100644 --- a/documents/MQTT5_Userguide.md +++ b/documents/MQTT5_Userguide.md @@ -27,7 +27,7 @@ ## **Introduction** -This user guide is designed to act as a reference and guide for how to use MQTT5 with the Java SDK. This guide includes code snippets for how to make a MQTT5 client with proper configuration, how to connect to AWS IoT Core, how to perform operations and interact with AWS IoT Core through MQTT5, and some best practices for MQTT5. +This user guide is designed to act as a reference and guide for how to use MQTT5 with the Python SDK. This guide includes code snippets for how to make a MQTT5 client with proper configuration, how to connect to AWS IoT Core, how to perform operations and interact with AWS IoT Core through MQTT5, and some best practices for MQTT5. If you are completely new to MQTT, it is highly recommended to check out the following resources to learn more about MQTT: