Skip to content

Commit 2187deb

Browse files
Merge pull request #226742 from w-azure/winona-update-links
Update Azure Samples links
2 parents 17fb11c + 7219944 commit 2187deb

21 files changed

+149
-129
lines changed

articles/iot-edge/TOC.yml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -339,22 +339,24 @@
339339
- name: Azure IoT samples
340340
items:
341341
- name: C# (.NET)
342-
href: https://github.com/Azure-Samples/azure-iot-samples-csharp
342+
href: https://github.com/Azure/azure-iot-sdk-csharp/tree/main/iothub/device/samples
343+
- name: C
344+
href: https://github.com/Azure/azure-iot-sdk-c/tree/main/iothub_client/samples
343345
- name: Node.js
344-
href: https://azure.microsoft.com/resources/samples/azure-iot-samples-node/
346+
href: https://github.com/Azure/azure-iot-sdk-node/tree/main/device/samples
345347
- name: Java
346-
href: https://github.com/Azure-Samples/azure-iot-samples-java
348+
href: https://github.com/Azure/azure-iot-sdk-java/tree/main/iothub/device/iot-device-samples
347349
- name: Python
348-
href: https://azure.microsoft.com/resources/samples/azure-iot-samples-python/
350+
href: https://github.com/Azure/azure-iot-sdk-python/tree/main/samples
349351
- name: iOS Platform
350-
href: https://azure.microsoft.com/resources/samples/azure-iot-samples-ios/
352+
href: https://github.com/azure-samples/azure-iot-samples-ios/tree/master/
351353
- name: Azure Certified for IoT device catalog
352354
href: https://devicecatalog.azure.com/
353355
- name: Azure IoT Developer Center
354356
href: https://azure.microsoft.com/develop/iot/
355357
- name: Azure Roadmap
356358
href: https://azure.microsoft.com/roadmap/?category=iot
357-
- name: Azure IoT Tools for VS Code
359+
- name: Azure IoT Tools for Visual Studio Code
358360
href: https://marketplace.visualstudio.com/items?itemName=vsciot-vscode.azure-iot-toolkit
359361
- name: Azure IoT Explorer tool
360362
href: https://github.com/Azure/azure-iot-explorer

articles/iot-edge/how-to-create-transparent-gateway.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ If you don't have a device ready, you should create one before continuing with t
6060

6161
All IoT Edge gateways need a device CA certificate installed on them. The IoT Edge security daemon uses the IoT Edge device CA certificate to sign a workload CA certificate, which in turn signs a server certificate for IoT Edge hub. The gateway presents its server certificate to the downstream device during the initiation of the connection. The downstream device checks to make sure that the server certificate is part of a certificate chain that rolls up to the root CA certificate. This process allows the downstream device to confirm that the gateway comes from a trusted source. For more information, see [Understand how Azure IoT Edge uses certificates](iot-edge-certs.md).
6262

63-
![Gateway certificate setup](./media/how-to-create-transparent-gateway/gateway-setup.png)
63+
:::image type="content" source="./media/how-to-create-transparent-gateway/gateway-setup.png" alt-text="Screenshot that shows the gateway certificate setup." lightbox="./media/how-to-create-transparent-gateway/gateway-setup.png":::
6464

6565
The root CA certificate and the device CA certificate (with its private key) need to be present on the IoT Edge gateway device and configured in the IoT Edge config file. Remember that in this case *root CA certificate* means the topmost certificate authority for this IoT Edge scenario. The gateway device CA certificate and the downstream device certificates need to roll up to the same root CA certificate.
6666

@@ -120,6 +120,8 @@ If you don't have your own certificate authority and want to use demo certificat
120120

121121
Now, you need to copy the certificates to the Azure IoT Edge for Linux on Windows virtual machine.
122122

123+
[PowerShell functions reference](reference-iot-edge-for-linux-on-windows-functions.md)
124+
123125
1. Check the certificate meets [format requirements](how-to-manage-device-certificates.md#format-requirements).
124126

125127
1. Copy the certificates to the EFLOW virtual machine to a directory where you have write access. For example, the `/home/iotedge-user` home directory.

articles/iot-edge/how-to-deploy-modules-cli.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ Here's a basic deployment manifest with one module as an example:
115115

116116
You deploy modules to your device by applying the deployment manifest that you configured with the module information.
117117

118-
Change directories into the folder where your deployment manifest is saved. If you used one of the VS Code IoT Edge templates, use the `deployment.json` file in the **config** folder of your solution directory and not the `deployment.template.json` file.
118+
Change directories into the folder where your deployment manifest is saved. If you used one of the Visual Studio Code IoT Edge templates, use the `deployment.json` file in the **config** folder of your solution directory and not the `deployment.template.json` file.
119119

120120
Use the following command to apply the configuration to an IoT Edge device:
121121

articles/iot-edge/how-to-deploy-modules-vscode.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ You deploy modules to your device by applying the deployment manifest that you c
141141

142142
![Select Edge Deployment Manifest](./media/how-to-deploy-modules-vscode/select-deployment-manifest.png)
143143

144-
The results of your deployment are printed in the VS Code output. Successful deployments are applied within a few minutes if the target device is running and connected to the internet.
144+
The results of your deployment are printed in the Visual Studio Code output. Successful deployments are applied within a few minutes if the target device is running and connected to the internet.
145145

146146
## View modules on your device
147147

articles/iot-edge/how-to-manage-device-certificates.md

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -13,21 +13,24 @@ services: iot-edge
1313

1414
[!INCLUDE [iot-edge-version-1.4](includes/iot-edge-version-1.4.md)]
1515

16-
All IoT Edge devices use certificates to create secure connections between the runtime and any modules running on the device. IoT Edge devices functioning as gateways use these same certificates to connect to their downstream devices, too. For more information about the function of the different certificates on an IoT Edge device, see [Understand how Azure IoT Edge uses certificates](iot-edge-certs.md).
16+
All IoT Edge devices use certificates to create secure connections between the runtime and any modules running on the device. IoT Edge devices functioning as gateways use these same certificates to connect to their downstream devices, too.
1717

1818
> [!NOTE]
19-
> The term *root CA* used throughout this article refers to the topmost authority's certificate in the certificate chain for your IoT solution. You do not need to use the certificate root of a syndicated certificate authority, or the root of your organization's certificate authority. In many cases, it is actually an intermediate CA certificate.
19+
> The term *root CA* used throughout this article refers to the topmost authority's certificate in the certificate chain for your IoT solution. You do not need to use the certificate root of a syndicated certificate authority, or the root of your organization's certificate authority. In many cases, it's actually an intermediate CA certificate.
2020
2121
## Prerequisites
2222

23-
* [Understand how Azure IoT Edge uses certificates](iot-edge-certs.md).
23+
* You should be familiar with the concepts in [Understand how Azure IoT Edge uses certificates](iot-edge-certs.md), in particular how IoT Edge uses certificates.
2424

2525
* An IoT Edge device.
26-
If you don't have an IoT Edge device set up, you can create one in an Azure virtual machine. Follow the steps in one of the quickstart articles to [Create a virtual Linux device](quickstart-linux.md) or [Create a virtual Windows device](quickstart.md).
26+
27+
If you don't have an IoT Edge device set up, you can create one in an Azure virtual machine. Follow the steps in one of these quickstart articles to [Create a virtual Linux device](quickstart-linux.md) or [Create a virtual Windows device](quickstart.md).
2728

2829
* Ability to edit the IoT Edge configuration file `config.toml` following the [configuration template](https://github.com/Azure/iotedge/blob/main/edgelet/contrib/config/linux/template.toml).
29-
* If your `config.toml` isn't based on the template, open the [template](https://github.com/Azure/iotedge/blob/main/edgelet/contrib/config/linux/template.toml) and use the commented guidance to add configuration sections following the structure of the template.
30-
* If you have a new IoT Edge installation that hasn't been configured, copy the template to initialize the configuration. Don't use this command if you have an existing configuration. It overwrites the file.
30+
31+
* If your `config.toml` isn't based on the template, open the [template](https://github.com/Azure/iotedge/blob/main/edgelet/contrib/config/linux/template.toml) and use the commented guidance to add configuration sections following the structure of the template.
32+
33+
* If you have a new IoT Edge installation that hasn't been configured, copy the template to initialize the configuration. Don't use this command if you have an existing configuration. It overwrites the file.
3134

3235
```bash
3336
sudo cp /etc/aziot/config.toml.edge.template /etc/aziot/config.toml
@@ -37,10 +40,10 @@ All IoT Edge devices use certificates to create secure connections between the r
3740

3841
> [!TIP]
3942
>
40-
> * A certificate can be encoded in a binary representation called DER, or a textual representation called PEM. The PEM format is a `-----BEGIN CERTIFICATE-----` header followed by the base64-encoded DER followed by a `-----END CERTIFICATE-----` footer.
43+
> * A certificate can be encoded in a binary representation called DER (Distinguished Encoding Rules), or a textual representation called PEM (Privacy Enhanced Mail). The PEM format has a `-----BEGIN CERTIFICATE-----` header followed by the base64-encoded DER followed by an `-----END CERTIFICATE-----` footer.
4144
> * Similar to the certificate, the private key can be encoded in binary DER or textual representation PEM.
42-
> * Because PEM is delineated, it is also possible to construct a PEM that combines both the `CERTIFICATE` and `PRIVATE KEY` sequentially in the same file.
43-
> * Lastly, the certificate and private key can be encoded together in a binary representation called *PKCS#12*, that is encrypted with an optional password.
45+
> * Because PEM is delineated, it's also possible to construct a PEM that combines both the `CERTIFICATE` and `PRIVATE KEY` sequentially in the same file.
46+
> * Lastly, the certificate and private key can be encoded together in a binary representation called *PKCS#12*, that's encrypted with an optional password.
4447
>
4548
> File extensions are arbitrary and you need to run the `file` command or view the file verify the type. In general, files use the following extension conventions:
4649
>
@@ -98,7 +101,7 @@ sudo find /var/aziot/secrets -type f -name "*.*" -exec chmod 600 {} \;
98101
sudo ls -Rla /var/aziot
99102
```
100103

101-
The output of list with correct ownership and permission is similar to the following:
104+
The output of the list with the correct ownership and permission is similar to the following output:
102105

103106
```Output
104107
azureUser@vm:/var/aziot$ sudo ls -Rla /var/aziot
@@ -130,7 +133,7 @@ Using a self-signed certificate authority (CA) certificate as a root of trust wi
130133

131134
1. Get a publicly trusted root CA certificate from a PKI provider.
132135

133-
1. Check the certificate meets [format requirements](#format-requirements).
136+
1. Check that the certificate meets the [format requirements](#format-requirements).
134137

135138
1. Copy the PEM file and give IoT Edge's certificate service access. For example, with `/var/aziot/certs` directory:
136139

@@ -150,12 +153,12 @@ Using a self-signed certificate authority (CA) certificate as a root of trust wi
150153
sudo chmod 644 /var/aziot/certs/root-ca.pem
151154
```
152155

153-
1. In the IoT Edge configuration file `config.toml`, find **Trust bundle cert** section. If the section is missing, you can copy it from the configuration template file.
156+
1. In the IoT Edge configuration file `config.toml`, find the **Trust bundle cert** section. If the section is missing, you can copy it from the configuration template file.
154157

155158
>[!TIP]
156159
>If the config file doesn't exist on your device yet, then use `/etc/aziot/config.toml.edge.template` as a template to create one.
157160
158-
1. Set `trust_bundle_cert` key to the certificate file location.
161+
1. Set the `trust_bundle_cert` key to the certificate file location.
159162

160163
```toml
161164
trust_bundle_cert = "file:///var/aziot/certs/root-ca.pem"
@@ -190,11 +193,11 @@ Installing the certificate to the trust bundle file makes it available to contai
190193

191194
## Import certificate and private key files
192195

193-
IoT Edge can use existing certificate and private key files to authenticate or attest to Azure, issue new module server certificates, and authenticate to EST servers. To install them:
196+
IoT Edge can use existing certificates and private key files to authenticate or attest to Azure, issue new module server certificates, and authenticate to EST servers. To install them:
194197

195198
1. Check the certificate and private key files meet the [format requirements](#format-requirements).
196199

197-
1. Copy the PEM file to the IoT Edge device where IoT Edge modules can have access. For example, `/var/aziot/` directory.
200+
1. Copy the PEM file to the IoT Edge device where IoT Edge modules can have access. For example, the `/var/aziot/` directory.
198201

199202
```bash
200203
# If the certificate and keys directories don't exist, create, set ownership, and set permissions
@@ -464,7 +467,7 @@ This approach requires you to manually update the files as certificate expires.
464467

465468
IoT Edge can interface with an [Enrollment over Secure Transport (EST) server](https://wikipedia.org/wiki/Enrollment_over_Secure_Transport) for automatic certificate issuance and renewal. Using EST is recommended for production as it replaces the need for manual certificate management, which can be risky and error-prone. It can be configured globally and overridden for each certificate type.
466469

467-
In this scenario, the bootstrap certificate and private key are expected to be long-lived and potentially installed on the device during manufacturing. IoT Edge uses the bootstrap credentials to authenticate to the EST server for the initial request to issue an identity certificate for subsequent requests, as well as for authentication to DPS or IoT Hub.
470+
In this scenario, the bootstrap certificate and private key are expected to be long-lived and potentially installed on the device during manufacturing. IoT Edge uses the bootstrap credentials to authenticate to the EST server for the initial request to issue an identity certificate for subsequent requests and for authentication to DPS or IoT Hub.
468471

469472
1. Get access to an EST server. If you don't have an EST server, use one of the following options to start testing:
470473

0 commit comments

Comments
 (0)