Özel bağlantı kullanmaya başlama
Genel bakış
Bu kılavuzda, Azure Operatör Nexus'ta barındırılan yapıt depoları için Azure Operatör Hizmet Yöneticisi (AOSM) özel bağlantı (PL) özelliği açıklanmaktadır. AOSM uç kayıt defteri girişimi kapsamında PL, Nexus şirket içi yapıt depolama trafiğini güvenli bir şekilde geri almak için Azure özel uç noktalarını ve Azure özel bağlantı hizmetini kullanır. Bu trafik hiçbir zaman İnternet'e sunulmaz, bunun yerine yalnızca Microsoft'un özel ağından geçiş yapılır.
Giriş
Bu belge, AOSM Yayımcı API'lerini kullanarak AOSM yapı deposu için özel bağlantı özelliğini etkinleştirmeye yönelik hızlı bir başlangıç kılavuzu sağlar.
Gerekli izinler
Nexus doku denetleyicisi (NFC) ile özel uç noktayı bağlamak ve yönetmek için gereken işlemler için aşağıdaki beklenmeyen rol ayrıcalıkları gerekir.
El ile özel uç noktayı bağlama ve yönetme izinleri
Özel uç noktayı kaldırma
"Microsoft.HybridNetwork/publishers/artifactStores/removePrivateEndPoints/action"
Özel uç noktayı onayla
"Microsoft.HybridNetwork/publishers/artifactStores/approvePrivateEndPoints/action"
NFC ile özel uç noktayı bağlama ve yönetme izinleri
NFC özel uç noktaları ekleme
"Microsoft.HybridNetwork/publishers/artifactStores/addNetworkFabricControllerEndPoints/action"
"Microsoft.ManagedNetworkFabric/networkFabricControllers/joinartifactstore/action"
NFC özel uç noktalarını listeleme
"Microsoft.HybridNetwork/publishers/artifactStores/listNetworkFabricControllerPrivateEndPoints/action"
NFC özel uç noktalarını silme
"Microsoft.HybridNetwork/publishers/artifactStores/deleteNetworkFabricControllerEndPoints/action"
"Microsoft.ManagedNetworkFabric/networkFabricControllers/disjoinartifactstore/action"
Not
Yeni NFC izinleri kullanıma sunulduğunda, önerilen rol ayrıcalıkları güncelleştirilir.
Özel bağlantı ayarlamak için AOSM API'lerini kullanma
Kaynakların güvenli bir şekilde karşıya yüklenebilmesi için aşağıdaki işlem dizisi yapıt deposuna bir PL bağlantısı kurar.
Yayımcı ve yapıt deposu oluşturma
- Kimlik türü 'SystemAssigned' olarak ayarlanmış yeni bir yayımcı kaynağı oluşturun.
- Yayımcı bu özellik olmadan zaten oluşturulduysa, güncelleştirmek için bir hesaplama işlemi kullanın.
- Yapıt deposu genel erişimini devre dışı bırakmak için 'backingResourcePublicNetworkAcccess' yeni özelliğini kullanın.
- özelliği ilk olarak 2024-04-15 sürümünde eklenir.
- ArtifactResource bu özellik olmadan zaten oluşturulduysa, güncelleştirmek için bir hesaplama işlemi kullanın.
Örnek yayımcı bicep betiği
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'
}
}
El ile uç nokta işlemleri
Aşağıdaki işlemler, PL oluşturulduktan sonra yapıt deposunun el ile yönetilmesini sağlar.
Özel uç nokta erişimini yönetme
Varsayılan olarak, yapıt deposu sanal ağa bağlandığında kullanıcının ACR izinleri yoktur, bu nedenle özel uç nokta bekleme durumunda olur. Aşağıdaki Azure rest komutları ve yükü, kullanıcının bu uç noktaları onaylamasına, reddetmesine ve/veya listelemesine olanak tanır.
Not
Bu iş akışında sanal ağ müşteri tarafından yönetilir.
Örnek JSON yükü:
{
"manualPrivateEndPointConnections": [
{
"id":"/subscriptions/<subscriptionId>/resourceGroups/<ResourceGroup>/providers/Microsoft.Network/privateEndpoints/peName"
}
]
}
Örnek özel uç nokta komutları
# 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/<ReourceGroup>/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 '{}'
NFC'ye özel uç noktalar ekleme
Aşağıdaki Azure rest komutları kullanıcının özel uç nokta, ACR ve Nexus tarafından yönetilen sanal ağlar arasındaki ilişkiyi oluşturmasına, kaldırmasına ve/veya listelemesine olanak tanır.
Örnek özel uç nokta komutları
# 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\"}] }'