You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/azure-relay/network-security.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: Network security for Azure Relay
3
3
description: This article describes how to use IP firewall rules and private endpoints with Azure Relay.
4
4
ms.topic: conceptual
5
-
ms.date: 06/21/2022
5
+
ms.date: 08/10/2023
6
6
---
7
7
8
8
# Network security for Azure Relay
@@ -20,7 +20,7 @@ By default, Relay namespaces are accessible from internet as long as the request
20
20
21
21
This feature is helpful in scenarios in which Azure Relay should be only accessible from certain well-known sites. Firewall rules enable you to configure rules to accept traffic originating from specific IPv4 addresses. For example, if you use Relay with [Azure Express Route](../expressroute/expressroute-faqs.md#supported-services), you can create a **firewall rule** to allow traffic from only your on-premises infrastructure IP addresses.
22
22
23
-
The IP firewall rules are applied at the Relay namespace level. Therefore, the rules apply to all connections from clients using any supported protocol. Any connection attempt from an IP address that does not match an allowed IP rule on the Relay namespace is rejected as unauthorized. The response does not mention the IP rule. IP filter rules are applied in order, and the first rule that matches the IP address determines the accept or reject action.
23
+
The IP firewall rules are applied at the Relay namespace level. Therefore, the rules apply to all connections from clients using any supported protocol. Any connection attempt from an IP address that doesn't match an allowed IP rule on the Relay namespace is rejected as unauthorized. The response doesn't mention the IP rule. IP filter rules are applied in order, and the first rule that matches the IP address determines the accept or reject action.
24
24
25
25
For more information, see [How to configure IP firewall for a Relay namespace](ip-firewall-virtual-networks.md)
Copy file name to clipboardExpand all lines: articles/azure-relay/relay-hybrid-connections-dotnet-api-overview.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ title: Overview of Azure Relay .NET Standard APIs | Microsoft Docs
3
3
description: This article summarizes some of the key an overview of Azure Relay Hybrid Connections .NET Standard API.
4
4
ms.topic: article
5
5
ms.custom: devx-track-csharp, devx-track-dotnet
6
-
ms.date: 06/21/2022
6
+
ms.date: 08/10/2023
7
7
---
8
8
9
9
# Azure Relay Hybrid Connections .NET Standard API overview
@@ -48,7 +48,7 @@ catch (ArgumentException ae)
48
48
49
49
## Hybrid connection stream
50
50
51
-
The [HybridConnectionStream][HCStream] class is the primary object used to send and receive data from an Azure Relay endpoint, whether you are working with a [HybridConnectionClient][HCClient], or a [HybridConnectionListener][HCListener].
51
+
The [HybridConnectionStream][HCStream] class is the primary object used to send and receive data from an Azure Relay endpoint, whether you're working with a [HybridConnectionClient][HCClient], or a [HybridConnectionListener][HCListener].
52
52
53
53
### Getting a Hybrid connection stream
54
54
@@ -78,7 +78,7 @@ var hybridConnectionStream = await client.CreateConnectionAsync();
78
78
79
79
### Receiving data
80
80
81
-
The [HybridConnectionStream][HCStream] class enables two-way communication. In most cases, you continuously receive from the stream. If you are reading text from the stream, you might also want to use a [StreamReader](/dotnet/api/system.io.streamreader) object, which enables easier parsing of the data. For example, you can read data as text, rather than as `byte[]`.
81
+
The [HybridConnectionStream][HCStream] class enables two-way communication. In most cases, you continuously receive from the stream. If you're reading text from the stream, you might also want to use a [StreamReader](/dotnet/api/system.io.streamreader) object, which enables easier parsing of the data. For example, you can read data as text, rather than as `byte[]`.
82
82
83
83
The following code reads individual lines of text from the stream until a cancellation is requested:
84
84
@@ -105,7 +105,7 @@ while (!cancellationToken.IsCancellationRequested)
105
105
106
106
### Sending data
107
107
108
-
Once you have a connection established, you can send a message to the Relay endpoint. Because the connection object inherits [Stream](/dotnet/api/system.io.stream), send your data as a `byte[]`. The following example shows how to do this:
108
+
Once you have a connection established, you can send a message to the Relay endpoint. Because the connection object inherits [Stream](/dotnet/api/system.io.stream), send your data as a `byte[]`. The following example shows how to do it:
The helper methods are for use with this package, but can also be used by a Node server for enabling web or device clients to create listeners or senders. The server uses these methods by passing them URIs that embed short-lived tokens. These URIs can also be used with common WebSocket stacks that do not support setting HTTP headers for the WebSocket handshake. Embedding authorization tokens into the URI is supported primarily for those library-external usage scenarios.
36
+
The helper methods are for use with this package, but can also be used by a Node server for enabling web or device clients to create listeners or senders. The server uses these methods by passing them URIs that embed short-lived tokens. These URIs can also be used with common WebSocket stacks that don't support setting HTTP headers for the WebSocket handshake. Embedding authorization tokens into the URI is supported primarily for those library-external usage scenarios.
37
37
38
38
#### createRelayListenUri
39
39
@@ -49,7 +49,7 @@ URI can then be used with the relay version of the WebSocketServer class.
49
49
-`token` (optional) - a previously issued Relay access token that is embedded in the listener URI (see the following example).
50
50
-`id` (optional) - a tracking identifier that enables end-to-end diagnostics tracking of requests.
51
51
52
-
The `token` value is optional and should only be used when it is not possible to send HTTP headers along with the WebSocket handshake, as is the case with the W3C WebSocket stack.
52
+
The `token` value is optional and should only be used when it isn't possible to send HTTP headers along with the WebSocket handshake, as is the case with the W3C WebSocket stack.
53
53
54
54
55
55
#### createRelaySendUri
@@ -66,7 +66,7 @@ URI can be used with any WebSocket client.
66
66
-`token` (optional) - a previously issued Relay access token that is embedded in the send URI (see the following example).
67
67
-`id` (optional) - a tracking identifier that enables end-to-end diagnostics tracking of requests.
68
68
69
-
The `token` value is optional and should only be used when it is not possible to send HTTP headers along with the WebSocket handshake, as is the case with the W3C WebSocket stack.
69
+
The `token` value is optional and should only be used when it isn't possible to send HTTP headers along with the WebSocket handshake, as is the case with the W3C WebSocket stack.
70
70
71
71
72
72
#### createRelayToken
@@ -97,7 +97,7 @@ returns the token correctly appended to the input URI.
97
97
98
98
### Class ws.RelayedServer
99
99
100
-
The `hycows.RelayedServer` class is an alternative to the `ws.Server` class that does not listen on the local network, but delegates listening to the Azure Relay service.
100
+
The `hycows.RelayedServer` class is an alternative to the `ws.Server` class that doesn't listen on the local network, but delegates listening to the Azure Relay service.
101
101
102
102
The two classes are mostly contract compatible, meaning that an existing application using the `ws.Server` class can easily be changed to use the relayed version. The main differences are in the constructor and in the available options.
103
103
@@ -114,7 +114,7 @@ var wss = new server(
114
114
});
115
115
```
116
116
117
-
The `RelayedServer` constructor supports a different set of arguments than the `Server`, because it is not a standalone listener, or able to be embedded into an existing HTTP listener framework. There are also fewer options available since the WebSocket management is largely delegated to the Relay service.
117
+
The `RelayedServer` constructor supports a different set of arguments than the `Server`, because it isn't a standalone listener, or able to be embedded into an existing HTTP listener framework. There are also fewer options available since the WebSocket management is largely delegated to the Relay service.
118
118
119
119
Constructor arguments:
120
120
@@ -148,7 +148,7 @@ Emitted when a new WebSocket connection is accepted. The object is of type `ws.W
148
148
function(error)
149
149
```
150
150
151
-
If the underlying server emits an error, it is forwarded here.
151
+
If the underlying server emits an error, it's forwarded here.
0 commit comments