Skip to content

Commit 1d928e0

Browse files
authored
Update and rename get-started-private-link.md to get-started-with-private-link.md
updates
1 parent f640a87 commit 1d928e0

File tree

1 file changed

+37
-22
lines changed

1 file changed

+37
-22
lines changed

articles/operator-service-manager/get-started-private-link.md renamed to articles/operator-service-manager/get-started-with-private-link.md

Lines changed: 37 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,27 +11,32 @@ ms.service: azure-operator-service-manager
1111
# Get started with private link
1212

1313
## Overview
14-
Document Version: 0.1 - Privatelink feature for edge artifact store
14+
This guide describes the Azure Operator Service Manager (AOSM) private link (PL) feature for artifact stores hosted on Azure Operator Nexus. As part of the AOSM edge registry initiative, PL uses Azure private endpoints, and Azure private link service, to securely backhaul Nexus on-premise artifact store traffic. This traffic is never exposed to the internet, instead it exclusively traverses Microsoft's private network.
1515

1616
## Introduction
17-
The purpose of this document is to provide a quick start guide to enable ATT ADO development using AOSM Publisher APIs to enable private link feature for AOSM artifact store. The contents of this document will be updated into the azure public docs for AOSM service. We will notify ATT when the public documentation is ready for this feature.
17+
This document provides a quick start guide to enable private link feature for AOSM artifact store using AOSM Publisher APIs.
1818

19-
## Permissions for linking AOSM Artifact Store resource to NFC
20-
In addition to the appropriate permissions on the AOSM resourcs, the role that is linking the AOSM artifact store to NFC should have the below permission.
19+
### Required permissions
20+
Linking the AOSM artifact store resource to a Nexus fabric controller (NFC) requires the common AOSM resource permissions in addition to the following role privilege.
2121

2222
```
2323
Microsoft.ManagedNetworkFabric/networkFabricControllers/write
2424
```
2525

2626
> [!NOTE]
27-
> A more fine-grained permission for NFC is in the works and will be rolled out in the next two weeks that replaces the privileged permission above
27+
> As more fine-grained NFC permissions are introduced, the recommended role privilege will be updated.
2828
29-
## AOSM APIs for setting up privatelink to artifact store
30-
Below is the sequence of operations to be done for Private Link enablement when uploading artifacts.
29+
## Use AOSM APIs to setup private link
30+
Before resources can be uploaded securely, the following sequence of operations establshes a PL connection to the artifact store.
3131

32-
### Create Publisher and AS with Public Access disabled.
33-
* The publisher resource must be created with identity type set to 'SystemAssigned'. If the publisher was created without this property, the publisher can be updated by performing a reput on the publisher.
34-
* To disable the public access on the ACR backed by the artifact store, the new property “backingResourcePublicNetworkAcccess” is used. The property is added in the 2024-04-15 version. 2024-04-15 API version is backwards compatible. Existing ArtifactResource can be used by doing a reput with the new property and API version.
32+
### Create publisher and artifact store
33+
* Create a new publisher resource with identity type set to 'SystemAssigned'.
34+
- If the publisher was already created without this property, use a reput operation to update.
35+
* Use the new propery 'backingResourcePublicNetworkAcccess' to disable artifact store public access.
36+
- The property is first added in the 2024-04-15 version.
37+
- If the ArtifactResource was already created without this property, use a reput operation to update.
38+
39+
#### Sample publisher bicep script
3540

3641
```
3742
param location string = resourceGroup().location
@@ -66,12 +71,18 @@ resource acrArtifactStore 'Microsoft.HybridNetwork/publishers/artifactStores@202
6671
}
6772
```
6873

69-
### Manual endpoint operations
70-
The APIs below allow the user to upload the images to artifact store using a private link. In the upload workflow, the vnet is managed by the customer. When the user creates the private endpoint to connect the ACR managed by Artifact Store to the vnet, the private endpoint will be in the pending state as the user doesn’t have permissions to the ACR. The APIs below expose a way by which the user can approve/reject and list these
71-
connections.
74+
## Manual endpoint operations
75+
The following operations enable manual management of an artifact store once the PL is established.
76+
77+
### Manage private endpoint access
78+
By default, when the artifact store is connected to the vnet, the user won't have permissions to the ACR, and the private endpoint will be in the pending state. The following Azure rest commands and payload enable a user to approve, reject and/or list these endpoint.
7279

80+
> [!NOTE]
81+
> In this workflow, the vnet is managed by the customer.
82+
>
83+
84+
#### Sample JSON payload:
7385
```
74-
Sample JSON body:
7586
{
7687
"manualPrivateEndPointConnections": [
7788
{
@@ -81,29 +92,33 @@ Sample JSON body:
8192
}
8293
```
8394

84-
Sample command using az rest:
85-
95+
#### Sample private endpoint commands
8696
```
8797
# approve private endpoints
8898
az rest --method post --url https://management.azure.com/subscriptions/<Subscription>/resourceGroups/<ResourceGroup>/providers/Microsoft.HybridNetwork/publishers/<Publisher>/artifactStores/<ArtifactStore>/approveprivateendpoints?api-version=2024-04-15 --body '{ \"manualPrivateEndPointConnections\" : [ { \"id\" : \"/subscriptions/<Subscription>/resourceGroups/<ResourceGroup>/providers/Microsoft.Network/privateEndpoints/peName\" } ] }'
89-
99+
```
100+
```
90101
# remove private endpoints
91102
az rest --method post --url https://management.azure.com/subscriptions/<Subscription>/resourceGroups/<ResourceGroup>/providers/Microsoft.HybridNetwork/publishers/<Publisher>/artifactStores/<ArtifactStore>/removeprivateendpoints?api-version=2024-04-15 --body '{ \"manualPrivateEndPointConnections\" : [ { \"id\" : \"/subscriptions/<Subscription>/resourceGroups/<ReourceGroup>/providers/Microsoft.Network/privateEndpoints/peName\" } ] }'
92-
103+
```
104+
```
93105
# list private endpoints
94106
az rest --method post --url https://management.azure.com/subscriptions/<Subscription>resourceGroups/<ResourceGroup>/providers/Microsoft.HybridNetwork/publishers/<Publisher>/artifactStores/<artifactStore>/listPrivateEndPoints?api-version=2024-04-15 --body '{}'
95107
```
96108

97-
### Add Private Link to NFC
98-
The APIs below allow the user to create/remove/list the private endpoint to ACR to the appropriate Nexus managed vnets. Depending on the NC version (provided offline at the subscription scope), the API will perform the actions on the correct Nexus vnet.
109+
### Add private endpoints to NFC
110+
The following Azure rest commands enable a user to create, remove, and/or list the association between private endpoint, ACR, and the Nexus managed vnets.
99111

112+
#### Sample private endpoint commands
100113
```
101114
# add nfc private endpoints
102115
az rest --method post --url https://management.azure.com/subscriptions/<Subscription>/resourceGroups/<ResourceGroup>/providers/Microsoft.HybridNetwork/publishers/<Publisher>/artifactStores/<artifactStore>/addnetworkfabriccontrollerendpoints?apiversion=2024-04-15 --body '{ \"networkFabricControllerIds\":[{\"id\": \"/subscriptions/<Subscription>/resourceGroups/op2lab-nfc-useop1/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/op2labnfc01\"}] }'
103-
116+
```
117+
```
104118
# list nfc private endpoints
105119
az rest --method post --url https://management.azure.com/subscriptions/<Subscription>/resourceGroups/<ResourceGroup>/providers/Microsoft.HybridNetwork/publishers/<Publisher>/artifactStores/<artifactStore>/listnetworkfabriccontrollerprivateendpoints?apiversion=2024-04-15 --body '{}'
106-
120+
```
121+
```
107122
# delete nfc private endpoints
108123
az rest --method post --url https://management.azure.com/subscriptions/<Subscription>/resourceGroups/<ResourceGroup>/providers/Microsoft.HybridNetwork/publishers/<publisher>/artifactStores/<artifactStore>/deletenetworkfabriccontrollerendpoints?api-version=2024-04-15 --body '{ \"networkFabricControllerIds\":[{\"id\": \"/subscriptions/<Subscription>/resourceGroups/op2lab-nfc-useop1/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/op2labnfc01\"}] }'
109124
```

0 commit comments

Comments
 (0)