public async Task <NetworkSecurityGroup> RegisterAsync(RegisterNetworkSecurityGroupRequest request) { Ensure.Object(request, nameof(request)); // Validate the request var id = await db.NetworkSecurityGroups.GetNextScopedIdAsync(request.NetworkId); var nsg = new NetworkSecurityGroup( id: id, name: request.Name, resource: request.Resource ); await db.NetworkSecurityGroups.InsertAsync(nsg); return(nsg); }
public async Task <NetworkSecurityGroup> GetAsync( NetworkInfo network, NetworkInterfaceSecurityGroup networkSecurityGroup) { Ensure.NotNull(network, nameof(network)); Ensure.NotNull(networkSecurityGroup, nameof(networkSecurityGroup)); var region = Locations.Get(network.LocationId); var nsg = await nsgService.FindAsync(ResourceProvider.Aws, networkSecurityGroup.GroupId);; if (nsg == null) { var registerRequest = new RegisterNetworkSecurityGroupRequest( name: networkSecurityGroup.GroupName, networkId: network.Id, resource: ManagedResource.NetworkSecurityGroup(region, networkSecurityGroup.GroupId) ); nsg = await nsgService.RegisterAsync(registerRequest);; } return(nsg); }