Skip to content

Commit e5de191

Browse files
Merge pull request #247924 from spelluru/relayfreshness08102
freshness review of Relay articles
2 parents 737d970 + 0c39db6 commit e5de191

9 files changed

+55
-56
lines changed

articles/azure-relay/authenticate-application.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Authenticate from an application - Azure Relay
33
description: This article provides information about authenticating an application with Azure Active Directory to access Azure Relay resources.
44
ms.topic: article
5-
ms.date: 07/22/2022
5+
ms.date: 08/10/2023
66
---
77

88
# Authenticate and authorize an application with Azure Active Directory to access Azure Relay entities
@@ -30,7 +30,7 @@ For step-by-step instructions to register your application with Azure AD, see [Q
3030
> Make note of the **Directory (tenant) ID** and the **Application (client) ID**. You will need these values to run the sample application.
3131
3232
### Create a client secret
33-
The application needs a client secret to prove its identity when requesting a token. In the same article linked above, see the [Add a client secret](../active-directory/develop/quickstart-register-app.md#add-a-client-secret) section to create a client secret.
33+
The application needs a client secret to prove its identity when requesting a token. In the same article linked earlier, see the [Add a client secret](../active-directory/develop/quickstart-register-app.md#add-a-client-secret) section to create a client secret.
3434

3535
> [!IMPORTANT]
3636
> Make note of the **Client Secret**. You will need it to run the sample application.
@@ -44,22 +44,22 @@ Assign one of the Azure Relay roles to the application's service principal at th
4444
1. Run the application locally on your computer per the instructions from the [README article](https://github.com/Azure/azure-relay/tree/master/samples/hybrid-connections/dotnet/rolebasedaccesscontrol#rolebasedaccesscontrol-hybrid-connection-sample).
4545

4646
> [!NOTE]
47-
> Follow the same steps above to run the [sample console application for WCF Relay](https://github.com/Azure/azure-relay/tree/master/samples/wcf-relay/RoleBasedAccessControl).
47+
> Follow the same steps to run the [sample console application for WCF Relay](https://github.com/Azure/azure-relay/tree/master/samples/wcf-relay/RoleBasedAccessControl).
4848
4949
#### Highlighted code from the sample
5050
Here's the code from the sample that shows how to use Azure AD authentication to connect to the Azure Relay service.
5151

5252
1. Create a [TokenProvider](/dotnet/api/microsoft.azure.relay.tokenprovider) object by using the `TokenProvider.CreateAzureActiveDirectoryTokenProvider` method.
5353

54-
If you haven't already created an app registration, see the [Register your application with Azure AD](#register-your-application-with-an-azure-ad-tenant) section to create it and then create a client secret as mentioned in the [Create a client secret](#create-a-client-secret) section.
54+
If you haven't already created an app registration, see the [Register your application with Azure AD](#register-your-application-with-an-azure-ad-tenant) section to create it, and then create a client secret as mentioned in the [Create a client secret](#create-a-client-secret) section.
5555

5656
If you want to use an existing app registration, follow these instructions to get **Application (client) ID** and **Directory (tenant) ID**.
5757

5858
1. Sign in to the [Azure portal](https://portal.azure.com).
5959
1. Search for and select **Azure Active Directory** using the search bar at the top.
6060
1. On the **Azure Active Directory** page, select **App registrations** in the **Manage** section on the left menu.
6161
1. Select your app registration.
62-
1. On the page for your app registration, you will see the values for **Application (client) ID** and **Directory (tenant) ID**.
62+
1. On the page for your app registration, you see the values for **Application (client) ID** and **Directory (tenant) ID**.
6363

6464
To get the **client secret**, follow these steps:
6565
1. On the page your app registration, select **Certificates & secrets** on the left menu.

articles/azure-relay/authenticate-managed-identity.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,18 +36,18 @@ The following section uses a simple application that runs under a managed identi
3636
1. Run RoleBasedAccessControl.exe on the Azure VM as per instructions from the [README document](https://github.com/Azure/azure-relay/tree/master/samples/hybrid-connections/dotnet/rolebasedaccesscontrol#rolebasedaccesscontrol-hybrid-connection-sample).
3737

3838
> [!NOTE]
39-
> Follow the same steps above to run the [console application for WCF Relays](https://github.com/Azure/azure-relay/tree/master/samples/wcf-relay/RoleBasedAccessControl).
39+
> Follow the same steps to run the [console application for WCF Relays](https://github.com/Azure/azure-relay/tree/master/samples/wcf-relay/RoleBasedAccessControl).
4040
4141
#### Highlighted code from the sample
4242
Here's the code from the sample that shows how to use Azure AD authentication to connect to the Azure Relay service.
4343

4444
1. Create a [TokenProvider](/dotnet/api/microsoft.azure.relay.tokenprovider) object by using the `TokenProvider.CreateManagedIdentityTokenProvider` method.
4545

46-
- If you are using a **system-assigned managed identity:**
46+
- If you're using a **system-assigned managed identity:**
4747
```csharp
4848
TokenProvider.CreateManagedIdentityTokenProvider();
4949
```
50-
- If you are using a **user-assigned managed identity**, get the **Client ID** for the user-assigned identity from the **Managed Identity** page in the Azure portal. For instructions, see [List user-assigned managed identities](../active-directory/managed-identities-azure-resources/how-manage-user-assigned-managed-identities.md?pivots=identity-mi-methods-azp#list-user-assigned-managed-identities).
50+
- If you're using a **user-assigned managed identity**, get the **Client ID** for the user-assigned identity from the **Managed Identity** page in the Azure portal. For instructions, see [List user-assigned managed identities](../active-directory/managed-identities-azure-resources/how-manage-user-assigned-managed-identities.md?pivots=identity-mi-methods-azp#list-user-assigned-managed-identities).
5151
```csharp
5252
var managedCredential = new ManagedIdentityCredential(clientId);
5353
tokenProvider = TokenProvider.CreateManagedIdentityTokenProvider(managedCredential);
@@ -70,7 +70,7 @@ Here's the code from the sample that shows how to use Azure AD authentication to
7070
- WCF Relay: [.NET](https://github.com/Azure/azure-relay/tree/master/samples/wcf-relay/RoleBasedAccessControl)
7171
7272
## Next steps
73-
To learn more about Azure Relay, see the following topics.
73+
To learn more about Azure Relay, see the following articles.
7474
- [What is Relay?](relay-what-is-it.md)
7575
- [Get started with Azure Relay Hybrid connections WebSockets](relay-hybrid-connections-dotnet-get-started.md)
7676
- [Get stated with Azure Relay Hybrid connections HTTP requests](relay-hybrid-connections-http-requests-dotnet-get-started.md)

articles/azure-relay/relay-api-overview.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Azure Relay API overview | Microsoft Docs
33
description: This article provides an overview of available Azure Relay APIs (.NET Standard, .NET Framework, Node.js, etc.)
44
ms.topic: article
55
ms.custom: devx-track-dotnet
6-
ms.date: 06/21/2022
6+
ms.date: 08/10/2023
77
---
88

99
# Available Relay APIs
@@ -44,7 +44,7 @@ Hybrid Connections with ASP.NET Core for web services.
4444

4545
#### Node.js
4646

47-
The Hybrid Connections modules listed in the table above replace or amend
47+
The Hybrid Connections modules replace or amend
4848
existing Node.js modules with alternative implementations that listen on
4949
the Azure Relay service instead of the local networking stack.
5050

articles/azure-relay/relay-authentication-and-authorization.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Azure Relay authentication and authorization | Microsoft Docs
33
description: This article provides an overview of Shared Access Signature (SAS) authentication with the Azure Relay service.
44
ms.topic: article
5-
ms.date: 07/22/2022
5+
ms.date: 08/10/2023
66
---
77

88
# Azure Relay authentication and authorization

articles/azure-relay/relay-exceptions.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Azure Relay exceptions and how to resolve them | Microsoft Docs
33
description: List of Azure Relay exceptions and suggested actions you can take to help resolve them.
44
ms.topic: article
5-
ms.date: 06/21/2022
5+
ms.date: 08/10/2023
66
---
77
# Azure Relay exceptions
88

@@ -31,20 +31,20 @@ The following table lists messaging exception types and their causes. It also no
3131

3232
| **Exception type** | **Description** | **Suggested action** | **Note on automatic or immediate retry** |
3333
| --- | --- | --- | --- |
34-
| [Timeout](/dotnet/api/system.timeoutexception) |The server did not respond to the requested operation within the specified time, which is controlled by [OperationTimeout](/dotnet/api/microsoft.servicebus.messaging.messagingfactorysettings.operationtimeout). The server might have completed the requested operation. This can happen due to network or other infrastructure delays. |Check the system state for consistency, and then retry, if necessary. See [TimeoutException](#timeoutexception). |Retry might help in some cases; add retry logic to code. |
35-
| [Invalid Operation](/dotnet/api/system.invalidoperationexception) |The requested user operation is not allowed within the server or service. See the exception message for details. |Check the code and the documentation. Make sure that the requested operation is valid. |Retry will not help. |
36-
| [Operation Canceled](/dotnet/api/system.operationcanceledexception) |An attempt is made to invoke an operation on an object that has already been closed, aborted, or disposed. In rare cases, the ambient transaction is already disposed. |Check the code and make sure it does not invoke operations on a disposed object. |Retry will not help. |
37-
| [Unauthorized Access](/dotnet/api/system.unauthorizedaccessexception) |The [TokenProvider](/dotnet/api/microsoft.servicebus.tokenprovider) object could not acquire a token, the token is invalid, or the token does not contain the claims required to perform the operation. |Make sure that the token provider is created with the correct values. Check the configuration of the Access Control service. |Retry might help in some cases; add retry logic to code. |
38-
| [Argument Exception](/dotnet/api/system.argumentexception),<br /> [Argument Null](/dotnet/api/system.argumentnullexception),<br />[Argument Out Of Range](/dotnet/api/system.argumentoutofrangeexception) |One or more of the following has occurred:<br />One or more arguments supplied to the method are invalid.<br /> The URI supplied to [NamespaceManager](/dotnet/api/microsoft.servicebus.namespacemanager) or [Create](/dotnet/api/microsoft.servicebus.messaging.messagingfactory.create) contains one or more path segments.<br />The URI scheme supplied to [NamespaceManager](/dotnet/api/microsoft.servicebus.namespacemanager) or [Create](/dotnet/api/microsoft.servicebus.messaging.messagingfactory.create) is invalid. <br />The property value is larger than 32 KB. |Check the calling code and make sure the arguments are correct. |Retry will not help. |
39-
| [Server Busy](/dotnet/api/microsoft.servicebus.messaging.serverbusyexception) |Service is not able to process the request at this time. |The client can wait for a period of time, then retry the operation. |The client might retry after a specific interval. If a retry results in a different exception, check the retry behavior of that exception. |
34+
| [Timeout](/dotnet/api/system.timeoutexception) |The server didn't respond to the requested operation within the specified time, which is controlled by [OperationTimeout](/dotnet/api/microsoft.servicebus.messaging.messagingfactorysettings.operationtimeout). The server might have completed the requested operation. It can happen due to network or other infrastructure delays. |Check the system state for consistency, and then retry, if necessary. See [TimeoutException](#timeoutexception). |Retry might help in some cases; add retry logic to code. |
35+
| [Invalid Operation](/dotnet/api/system.invalidoperationexception) |The requested user operation isn't allowed within the server or service. See the exception message for details. |Check the code and the documentation. Make sure that the requested operation is valid. |Retry doesn't help. |
36+
| [Operation Canceled](/dotnet/api/system.operationcanceledexception) |An attempt is made to invoke an operation on an object that has already been closed, aborted, or disposed. In rare cases, the ambient transaction is already disposed. |Check the code and make sure it doesn't invoke operations on a disposed object. |Retry doesn't help. |
37+
| [Unauthorized Access](/dotnet/api/system.unauthorizedaccessexception) |The [TokenProvider](/dotnet/api/microsoft.servicebus.tokenprovider) object couldn't acquire a token, the token is invalid, or the token doesn't contain the claims required to perform the operation. |Make sure that the token provider is created with the correct values. Check the configuration of the Access Control service. |Retry might help in some cases; add retry logic to code. |
38+
| [Argument Exception](/dotnet/api/system.argumentexception),<br /> [Argument Null](/dotnet/api/system.argumentnullexception),<br />[Argument Out Of Range](/dotnet/api/system.argumentoutofrangeexception) |One or more of the following has occurred:<br />One or more arguments supplied to the method are invalid.<br /> The URI supplied to [NamespaceManager](/dotnet/api/microsoft.servicebus.namespacemanager) or [Create](/dotnet/api/microsoft.servicebus.messaging.messagingfactory.create) contains one or more path segments.<br />The URI scheme supplied to [NamespaceManager](/dotnet/api/microsoft.servicebus.namespacemanager) or [Create](/dotnet/api/microsoft.servicebus.messaging.messagingfactory.create) is invalid. <br />The property value is larger than 32 KB. |Check the calling code and make sure the arguments are correct. |Retry doesn't help. |
39+
| [Server Busy](/dotnet/api/microsoft.servicebus.messaging.serverbusyexception) |Service isn't able to process the request at this time. |The client can wait for a period of time, then retry the operation. |The client might retry after a specific interval. If a retry results in a different exception, check the retry behavior of that exception. |
4040
| [Quota Exceeded](/dotnet/api/microsoft.servicebus.messaging.quotaexceededexception) |The messaging entity has reached its maximum allowable size. |Create space in the entity by receiving messages from the entity or its subqueues. See [QuotaExceededException](#quotaexceededexception). |Retry might help if messages have been removed in the meantime. |
41-
| [Message Size Exceeded](/dotnet/api/microsoft.servicebus.messaging.messagesizeexceededexception) |A message payload exceeds the 256-KB limit. Note that the 256-KB limit is the total message size. The total message size can include system properties and any Microsoft .NET overhead. |Reduce the size of the message payload, then retry the operation. |Retry will not help. |
41+
| [Message Size Exceeded](/dotnet/api/microsoft.servicebus.messaging.messagesizeexceededexception) |A message payload exceeds the 256-KB limit. Note that the 256-KB limit is the total message size. The total message size can include system properties and any Microsoft .NET overhead. |Reduce the size of the message payload, then retry the operation. |Retry doesn't help. |
4242

4343
## QuotaExceededException
4444

4545
[QuotaExceededException](/dotnet/api/microsoft.servicebus.messaging.quotaexceededexception) indicates that a quota for a specific entity has been exceeded.
4646

47-
For Relay, this exception wraps the [System.ServiceModel.QuotaExceededException](/dotnet/api/system.servicemodel.quotaexceededexception), which indicates that the maximum number of listeners has been exceeded for this endpoint. This is indicated in the **MaximumListenersPerEndpoint** value of the exception message.
47+
For Relay, this exception wraps the [System.ServiceModel.QuotaExceededException](/dotnet/api/system.servicemodel.quotaexceededexception), which indicates that the maximum number of listeners has been exceeded for this endpoint. It's indicated in the **MaximumListenersPerEndpoint** value of the exception message.
4848

4949
## TimeoutException
5050
A [TimeoutException](/dotnet/api/system.timeoutexception) indicates that a user-initiated operation is taking longer than the operation timeout.
@@ -71,7 +71,7 @@ There are two common causes for this error:
7171
The operation timeout might be too small for the operational condition. The default value for the operation timeout in the client SDK is 60 seconds. Check to see whether the value in your code is set to something too small. Note that CPU usage and the condition of the network can affect the time it takes for an operation to complete. It's a good idea not to set the operation timeout to a very small value.
7272
* **Transient service error**
7373

74-
Occasionally, the Relay service might experience delays in processing requests. This might happen, for example, during periods of high traffic. If this occurs, retry your operation after a delay, until the operation is successful. If the same operation continues to fail after multiple attempts, check the [Azure service status site](https://azure.microsoft.com/status/) to see if there are known service outages.
74+
Occasionally, the Relay service might experience delays in processing requests. It might happen, for example, during periods of high traffic. If it occurs, retry your operation after a delay, until the operation is successful. If the same operation continues to fail after multiple attempts, check the [Azure service status site](https://azure.microsoft.com/status/) to see if there are known service outages.
7575

7676
## Next steps
7777
* [Azure Relay FAQs](relay-faq.yml)

0 commit comments

Comments
 (0)