Delen via


Aan de slag met private link

Overzicht

In deze handleiding wordt de private link-functie (AOSM) van Azure Operator Service Manager (PL) beschreven voor artefactarchieven die worden gehost op Azure Operator Nexus. Als onderdeel van het AOSM Edge-registerinitiatief maakt PL gebruik van privé-eindpunten van Azure, en de Azure Private Link-service, om veilig backhaul Nexus on-premises artefactopslagverkeer op te slaan. Dit verkeer wordt nooit blootgesteld aan internet, in plaats daarvan uitsluitend via het privénetwerk van Microsoft.

Inleiding

Dit document bevat een beknopte handleiding voor het inschakelen van de private link-functie voor het AOSM-artefactarchief met behulp van AOSM Publisher-API's.

Vereiste machtigingen

Voor de bewerkingen die nodig zijn om een privé-eindpunt te koppelen en te beheren met een Nexus Fabric Controller (NFC) zijn de volgende niet-standaardrolbevoegdheden vereist.

Machtigingen voor het koppelen en beheren van handmatig privé-eindpunt

Privé-eindpunt verwijderen

"Microsoft.HybridNetwork/publishers/artifactStores/removePrivateEndPoints/action"

Keur het privé-eindpunt goed

"Microsoft.HybridNetwork/publishers/artifactStores/approvePrivateEndPoints/action"

Machtigingen voor het koppelen en beheren van een privé-eindpunt met NFC

NFC-privé-eindpunten toevoegen

"Microsoft.HybridNetwork/publishers/artifactStores/addNetworkFabricControllerEndPoints/action"
"Microsoft.ManagedNetworkFabric/networkFabricControllers/joinartifactstore/action"

NFC-privé-eindpunten weergeven

"Microsoft.HybridNetwork/publishers/artifactStores/listNetworkFabricControllerPrivateEndPoints/action"

NFC-privé-eindpunten verwijderen

"Microsoft.HybridNetwork/publishers/artifactStores/deleteNetworkFabricControllerEndPoints/action"
"Microsoft.ManagedNetworkFabric/networkFabricControllers/disjoinartifactstore/action"

Notitie

Wanneer er nieuwe NFC-machtigingen worden geïntroduceerd, worden de aanbevolen rolbevoegdheden bijgewerkt.

Voordat resources veilig kunnen worden geüpload, brengt de volgende reeks bewerkingen een PL-verbinding tot stand met het artefactarchief.

Publisher- en artefactopslag maken

  • Maak een nieuwe uitgeverresource met het identiteitstype ingesteld op SystemAssigned.
    • Als de uitgever al is gemaakt zonder deze eigenschap, gebruikt u een reput-bewerking om bij te werken.
  • Gebruik de nieuwe eigenschap 'backingResourcePublicNetworkAccess' om openbare toegang tot artefactopslag uit te schakelen.
    • De eigenschap wordt voor het eerst toegevoegd in de versie 2024-04-15.
    • Als de ArtifactResource al is gemaakt zonder deze eigenschap, gebruikt u een bronbewerking om bij te werken.

Bicep-voorbeeldscript van uitgever

param location string = resourceGroup().location
param publisherName string
param acrArtifactStoreName string

/* AOSM publisher resource creation
*/
var publisherNameWithLocation = concat(publisherName, uniqueString(resourceGroup().id))
resource publisher 'Microsoft.HybridNetwork/publishers@2023-09-01' = {
 name: publisherNameWithLocation
 location: location
identity: {
 type: 'SystemAssigned' 
 }
 properties: {
 scope: 'Private'
 }
}

/* AOSM artifact store resource creation
*/
resource acrArtifactStore 'Microsoft.HybridNetwork/publishers/artifactStores@2024-04-15' = {
 parent: publisher
 name: acrArtifactStoreName
 location: location
 properties: {
 storeType: 'AzureContainerRegistry'
 backingResourcePublicNetworkAccess: 'Disabled'
 }
 
}

Handmatige eindpuntbewerkingen

Met de volgende bewerkingen kunt u handmatig beheer van een artefactarchief inschakelen zodra de PL tot stand is gebracht.

Privé-eindpunttoegang beheren

Wanneer het artefactarchief is verbonden met het vnet, heeft de gebruiker standaard geen machtigingen voor de ACR, zodat het privé-eindpunt in behandeling is. Met de volgende Azure-restopdrachten en -nettolading kan een gebruiker deze eindpunten goedkeuren, afwijzen en/of vermelden.

Notitie

In deze werkstroom wordt het vnet beheerd door de klant.

Voorbeeld van JSON-nettolading:

{
 "manualPrivateEndPointConnections": [
 {
 "id":"/subscriptions/<subscriptionId>/resourceGroups/<ResourceGroup>/providers/Microsoft.Network/privateEndpoints/peName"
 }
 ]
 }

Voorbeelden van privé-eindpuntopdrachten

# approve private endpoints
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\" } ] }'
# remove private endpoints
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/<ResourceGroup>/providers/Microsoft.Network/privateEndpoints/peName\" } ] }'
# list private endpoints
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 '{}'

Privé-eindpunten toevoegen aan NFC

Met de volgende Azure-restopdrachten kan een gebruiker de koppeling tussen privé-eindpunten, ACR en de door Nexus beheerde vnet's maken, verwijderen en/of vermelden.

Voorbeelden van privé-eindpuntopdrachten

# add nfc private endpoints
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\"}] }'
# list nfc private endpoints
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 '{}'
# delete nfc private endpoints
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\"}] }'