コード例 #1
0
 public static DeletedConfigurationStoreCollection GetDeletedConfigurationStores(this SubscriptionResource subscriptionResource)
 {
     return(GetExtensionClient(subscriptionResource).GetDeletedConfigurationStores());
 }
コード例 #2
0
        public static async Task <Response <CheckNameAvailabilityResult> > CheckEventHubNameAvailabilityAsync(this SubscriptionResource subscriptionResource, CheckNameAvailabilityOptions options, CancellationToken cancellationToken = default)
        {
            Argument.AssertNotNull(options, nameof(options));

            return(await GetExtensionClient(subscriptionResource).CheckEventHubNameAvailabilityAsync(options, cancellationToken).ConfigureAwait(false));
        }
コード例 #3
0
 public static AsyncPageable <AvailableCluster> GetAvailableClusterRegionClustersAsync(this SubscriptionResource subscriptionResource, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetAvailableClusterRegionClustersAsync(cancellationToken));
 }
コード例 #4
0
 public static AsyncPageable <OrderResource> GetOrderResourcesAsync(this SubscriptionResource subscriptionResource, string skipToken = null, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetOrderResourcesAsync(skipToken, cancellationToken));
 }
コード例 #5
0
 public static Pageable <AddressResource> GetAddressResources(this SubscriptionResource subscriptionResource, string filter = null, string skipToken = null, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetAddressResources(filter, skipToken, cancellationToken));
 }
コード例 #6
0
 public static Pageable <ScalingPlanResource> GetScalingPlans(this SubscriptionResource subscriptionResource, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetScalingPlans(cancellationToken));
 }
コード例 #7
0
        public static Pageable <ProductConfiguration> GetConfigurations(this SubscriptionResource subscriptionResource, ConfigurationsRequest configurationsRequest, string skipToken = null, CancellationToken cancellationToken = default)
        {
            Argument.AssertNotNull(configurationsRequest, nameof(configurationsRequest));

            return(GetExtensionClient(subscriptionResource).GetConfigurations(configurationsRequest, skipToken, cancellationToken));
        }
コード例 #8
0
        public async Task NetworkSecurityGroupApiTest()
        {
            SubscriptionResource subscription = await ArmClient.GetDefaultSubscriptionAsync();

            string resourceGroupName = Recording.GenerateAssetName("csmrg");

            string location      = TestEnvironment.Location;
            var    resourceGroup = await CreateResourceGroup(resourceGroupName);

            string networkSecurityGroupName = Recording.GenerateAssetName("azsmnet");
            var    networkSecurityGroup     = new NetworkSecurityGroupData()
            {
                Location = location,
            };

            // Put Nsg
            var networkSecurityGroupCollection = resourceGroup.GetNetworkSecurityGroups();
            var putNsgResponseOperation        = await networkSecurityGroupCollection.CreateOrUpdateAsync(WaitUntil.Completed, networkSecurityGroupName, networkSecurityGroup);

            Response <NetworkSecurityGroupResource> putNsgResponse = await putNsgResponseOperation.WaitForCompletionAsync();;

            Assert.AreEqual("Succeeded", putNsgResponse.Value.Data.ProvisioningState.ToString());

            // Get NSG
            Response <NetworkSecurityGroupResource> getNsgResponse = await networkSecurityGroupCollection.GetAsync(networkSecurityGroupName);

            Assert.AreEqual(networkSecurityGroupName, getNsgResponse.Value.Data.Name);
            Assert.NotNull(getNsgResponse.Value.Data.ResourceGuid);
            Assert.AreEqual(6, getNsgResponse.Value.Data.DefaultSecurityRules.Count);
            Assert.AreEqual("AllowVnetInBound", getNsgResponse.Value.Data.DefaultSecurityRules[0].Name);
            Assert.AreEqual("AllowAzureLoadBalancerInBound", getNsgResponse.Value.Data.DefaultSecurityRules[1].Name);
            Assert.AreEqual("DenyAllInBound", getNsgResponse.Value.Data.DefaultSecurityRules[2].Name);
            Assert.AreEqual("AllowVnetOutBound", getNsgResponse.Value.Data.DefaultSecurityRules[3].Name);
            Assert.AreEqual("AllowInternetOutBound", getNsgResponse.Value.Data.DefaultSecurityRules[4].Name);
            Assert.AreEqual("DenyAllOutBound", getNsgResponse.Value.Data.DefaultSecurityRules[5].Name);

            // Verify a default security rule
            Assert.AreEqual(SecurityRuleAccess.Allow, getNsgResponse.Value.Data.DefaultSecurityRules[0].Access);
            Assert.AreEqual("Allow inbound traffic from all VMs in VNET", getNsgResponse.Value.Data.DefaultSecurityRules[0].Description);
            Assert.AreEqual("VirtualNetwork", getNsgResponse.Value.Data.DefaultSecurityRules[0].DestinationAddressPrefix);
            Assert.AreEqual("*", getNsgResponse.Value.Data.DefaultSecurityRules[0].DestinationPortRange);
            Assert.AreEqual(SecurityRuleDirection.Inbound, getNsgResponse.Value.Data.DefaultSecurityRules[0].Direction);
            Assert.AreEqual(65000, getNsgResponse.Value.Data.DefaultSecurityRules[0].Priority);
            Assert.AreEqual(SecurityRuleProtocol.Asterisk, getNsgResponse.Value.Data.DefaultSecurityRules[0].Protocol);
            Assert.AreEqual("Succeeded", getNsgResponse.Value.Data.DefaultSecurityRules[0].ProvisioningState.ToString());
            Assert.AreEqual("VirtualNetwork", getNsgResponse.Value.Data.DefaultSecurityRules[0].SourceAddressPrefix);
            Assert.AreEqual("*", getNsgResponse.Value.Data.DefaultSecurityRules[0].SourcePortRange);

            // List NSG
            AsyncPageable <NetworkSecurityGroupResource> listNsgResponseAP = networkSecurityGroupCollection.GetAllAsync();
            List <NetworkSecurityGroupResource>          listNsgResponse   = await listNsgResponseAP.ToEnumerableAsync();

            Assert.AreEqual(networkSecurityGroupName, listNsgResponse.First().Data.Name);
            Assert.AreEqual(6, listNsgResponse.First().Data.DefaultSecurityRules.Count);
            Assert.AreEqual("AllowVnetInBound", listNsgResponse.First().Data.DefaultSecurityRules[0].Name);
            Assert.AreEqual("AllowAzureLoadBalancerInBound", listNsgResponse.First().Data.DefaultSecurityRules[1].Name);
            Assert.AreEqual("DenyAllInBound", listNsgResponse.First().Data.DefaultSecurityRules[2].Name);
            Assert.AreEqual("AllowVnetOutBound", listNsgResponse.First().Data.DefaultSecurityRules[3].Name);
            Assert.AreEqual("AllowInternetOutBound", listNsgResponse.First().Data.DefaultSecurityRules[4].Name);
            Assert.AreEqual("DenyAllOutBound", listNsgResponse.First().Data.DefaultSecurityRules[5].Name);
            Assert.AreEqual(getNsgResponse.Value.Data.Etag, listNsgResponse.First().Data.Etag);

            // List NSG in a subscription
            AsyncPageable <NetworkSecurityGroupResource> listNsgSubsciptionResponseAP = subscription.GetNetworkSecurityGroupsAsync();
            List <NetworkSecurityGroupResource>          listNsgSubsciptionResponse   = await listNsgSubsciptionResponseAP.ToEnumerableAsync();

            Assert.IsNotEmpty(listNsgSubsciptionResponse);

            // Delete NSG
            await putNsgResponse.Value.DeleteAsync(WaitUntil.Completed);

            // List NSG
            listNsgResponseAP = networkSecurityGroupCollection.GetAllAsync();
            listNsgResponse   = await listNsgResponseAP.ToEnumerableAsync();

            Assert.IsEmpty(listNsgResponse);
        }
コード例 #9
0
        public static async Task <Response <CdnNameAvailabilityResult> > CheckCdnNameAvailabilityWithSubscriptionAsync(this SubscriptionResource subscriptionResource, CdnNameAvailabilityContent content, CancellationToken cancellationToken = default)
        {
            Argument.AssertNotNull(content, nameof(content));

            return(await GetExtensionClient(subscriptionResource).CheckCdnNameAvailabilityWithSubscriptionAsync(content, cancellationToken).ConfigureAwait(false));
        }
コード例 #10
0
 public static Pageable <ManagedGrafanaResource> GetManagedGrafanas(this SubscriptionResource subscriptionResource, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetManagedGrafanas(cancellationToken));
 }
コード例 #11
0
        public async Task NetworkSecurityGroupWithRulesApiTest()
        {
            SubscriptionResource subscription = await ArmClient.GetDefaultSubscriptionAsync();

            string resourceGroupName = Recording.GenerateAssetName("csmrg");

            string location      = TestEnvironment.Location;
            var    resourceGroup = await CreateResourceGroup(resourceGroupName);

            string networkSecurityGroupName = Recording.GenerateAssetName("azsmnet");
            string securityRule1            = Recording.GenerateAssetName("azsmnet");
            string securityRule2            = Recording.GenerateAssetName("azsmnet");

            string destinationPortRange = "123-3500";

            var networkSecurityGroup = new NetworkSecurityGroupData()
            {
                Location      = location,
                SecurityRules =
                {
                    new SecurityRuleData()
                    {
                        Name        = securityRule1,
                        Access      = SecurityRuleAccess.Allow,
                        Description = "Test security rule",
                        DestinationAddressPrefix = "*",
                        DestinationPortRange     = destinationPortRange,
                        Direction           = SecurityRuleDirection.Inbound,
                        Priority            = 500,
                        Protocol            = SecurityRuleProtocol.Tcp,
                        SourceAddressPrefix = "*",
                        SourcePortRange     = "655"
                    }
                }
            };

            // Put Nsg
            var networkSecurityGroupCollection = resourceGroup.GetNetworkSecurityGroups();
            var putNsgResponseOperation        = await networkSecurityGroupCollection.CreateOrUpdateAsync(WaitUntil.Completed, networkSecurityGroupName, networkSecurityGroup);

            Response <NetworkSecurityGroupResource> putNsgResponse = await putNsgResponseOperation.WaitForCompletionAsync();;

            Assert.AreEqual("Succeeded", putNsgResponse.Value.Data.ProvisioningState.ToString());

            // Get NSG
            Response <NetworkSecurityGroupResource> getNsgResponse = await networkSecurityGroupCollection.GetAsync(networkSecurityGroupName);

            Assert.AreEqual(networkSecurityGroupName, getNsgResponse.Value.Data.Name);
            Assert.AreEqual(6, getNsgResponse.Value.Data.DefaultSecurityRules.Count);
            Assert.AreEqual("AllowVnetInBound", getNsgResponse.Value.Data.DefaultSecurityRules[0].Name);
            Assert.AreEqual("AllowAzureLoadBalancerInBound", getNsgResponse.Value.Data.DefaultSecurityRules[1].Name);
            Assert.AreEqual("DenyAllInBound", getNsgResponse.Value.Data.DefaultSecurityRules[2].Name);
            Assert.AreEqual("AllowVnetOutBound", getNsgResponse.Value.Data.DefaultSecurityRules[3].Name);
            Assert.AreEqual("AllowInternetOutBound", getNsgResponse.Value.Data.DefaultSecurityRules[4].Name);
            Assert.AreEqual("DenyAllOutBound", getNsgResponse.Value.Data.DefaultSecurityRules[5].Name);

            // Verify the security rule
            Assert.AreEqual(SecurityRuleAccess.Allow, getNsgResponse.Value.Data.SecurityRules[0].Access);
            Assert.AreEqual("Test security rule", getNsgResponse.Value.Data.SecurityRules[0].Description);
            Assert.AreEqual("*", getNsgResponse.Value.Data.SecurityRules[0].DestinationAddressPrefix);
            Assert.AreEqual(destinationPortRange, getNsgResponse.Value.Data.SecurityRules[0].DestinationPortRange);
            Assert.AreEqual(SecurityRuleDirection.Inbound, getNsgResponse.Value.Data.SecurityRules[0].Direction);
            Assert.AreEqual(500, getNsgResponse.Value.Data.SecurityRules[0].Priority);
            Assert.AreEqual(SecurityRuleProtocol.Tcp, getNsgResponse.Value.Data.SecurityRules[0].Protocol);
            Assert.AreEqual("Succeeded", getNsgResponse.Value.Data.SecurityRules[0].ProvisioningState.ToString());
            Assert.AreEqual("*", getNsgResponse.Value.Data.SecurityRules[0].SourceAddressPrefix);
            Assert.AreEqual("655", getNsgResponse.Value.Data.SecurityRules[0].SourcePortRange);

            // List NSG
            AsyncPageable <NetworkSecurityGroupResource> listNsgResponseAP = networkSecurityGroupCollection.GetAllAsync();
            List <NetworkSecurityGroupResource>          listNsgResponse   = await listNsgResponseAP.ToEnumerableAsync();

            Has.One.EqualTo(listNsgResponse);
            Assert.AreEqual(networkSecurityGroupName, listNsgResponse.First().Data.Name);
            Assert.AreEqual(6, listNsgResponse.First().Data.DefaultSecurityRules.Count);
            Assert.AreEqual("AllowVnetInBound", listNsgResponse.First().Data.DefaultSecurityRules[0].Name);
            Assert.AreEqual("AllowAzureLoadBalancerInBound", listNsgResponse.First().Data.DefaultSecurityRules[1].Name);
            Assert.AreEqual("DenyAllInBound", listNsgResponse.First().Data.DefaultSecurityRules[2].Name);
            Assert.AreEqual("AllowVnetOutBound", listNsgResponse.First().Data.DefaultSecurityRules[3].Name);
            Assert.AreEqual("AllowInternetOutBound", listNsgResponse.First().Data.DefaultSecurityRules[4].Name);
            Assert.AreEqual("DenyAllOutBound", listNsgResponse.First().Data.DefaultSecurityRules[5].Name);
            Assert.AreEqual(getNsgResponse.Value.Data.Etag, listNsgResponse.First().Data.Etag);

            // List NSG in a subscription
            AsyncPageable <NetworkSecurityGroupResource> listNsgSubsciptionResponseAP = subscription.GetNetworkSecurityGroupsAsync();
            List <NetworkSecurityGroupResource>          listNsgSubsciptionResponse   = await listNsgSubsciptionResponseAP.ToEnumerableAsync();

            Assert.IsNotEmpty(listNsgSubsciptionResponse);

            // Add a new security rule
            var securityRule = new SecurityRuleData()
            {
                Name        = securityRule2,
                Access      = SecurityRuleAccess.Deny,
                Description = "Test outbound security rule",
                DestinationAddressPrefix = "*",
                DestinationPortRange     = destinationPortRange,
                Direction           = SecurityRuleDirection.Outbound,
                Priority            = 501,
                Protocol            = SecurityRuleProtocol.Udp,
                SourceAddressPrefix = "*",
                SourcePortRange     = "656",
            };

            networkSecurityGroup.SecurityRules.Add(securityRule);

            putNsgResponseOperation = await networkSecurityGroupCollection.CreateOrUpdateAsync(WaitUntil.Completed, networkSecurityGroupName, networkSecurityGroup);

            await putNsgResponseOperation.WaitForCompletionAsync();;

            // Get NSG
            getNsgResponse = await networkSecurityGroupCollection.GetAsync(networkSecurityGroupName);

            // Verify the security rule
            Assert.AreEqual(SecurityRuleAccess.Deny, getNsgResponse.Value.Data.SecurityRules[1].Access);
            Assert.AreEqual("Test outbound security rule", getNsgResponse.Value.Data.SecurityRules[1].Description);
            Assert.AreEqual("*", getNsgResponse.Value.Data.SecurityRules[1].DestinationAddressPrefix);
            Assert.AreEqual(destinationPortRange, getNsgResponse.Value.Data.SecurityRules[1].DestinationPortRange);
            Assert.AreEqual(SecurityRuleDirection.Outbound, getNsgResponse.Value.Data.SecurityRules[1].Direction);
            Assert.AreEqual(501, getNsgResponse.Value.Data.SecurityRules[1].Priority);
            Assert.AreEqual(SecurityRuleProtocol.Udp, getNsgResponse.Value.Data.SecurityRules[1].Protocol);
            Assert.AreEqual("Succeeded", getNsgResponse.Value.Data.SecurityRules[1].ProvisioningState.ToString());
            Assert.AreEqual("*", getNsgResponse.Value.Data.SecurityRules[1].SourceAddressPrefix);
            Assert.AreEqual("656", getNsgResponse.Value.Data.SecurityRules[1].SourcePortRange);

            // List Default Security Groups
            AsyncPageable <DefaultSecurityRuleResource> listDefaultSecurityGroupsAP = getNsgResponse.Value.GetDefaultSecurityRules().GetAllAsync();
            List <DefaultSecurityRuleResource>          listDefaultSecurityGroups   = await listDefaultSecurityGroupsAP.ToEnumerableAsync();

            Assert.IsNotEmpty(listDefaultSecurityGroups);

            // Get Defaul Security Group
            // TODO: ADO 5975
            //Response<SecurityRuleData> getDefaultSecurityGroups = await getNsgResponse.Value.GetDefaultSecurityRuleAsync();
            //Assert.AreEqual(listDefaultSecurityGroups.First().Name, getDefaultSecurityGroups.Value.Name);

            // Delete NSG
            await putNsgResponse.Value.DeleteAsync(WaitUntil.Completed);

            // List NSG
            listNsgResponseAP = networkSecurityGroupCollection.GetAllAsync();
            listNsgResponse   = await listNsgResponseAP.ToEnumerableAsync();

            Assert.IsEmpty(listNsgResponse);
        }
コード例 #12
0
 public static Pageable <ConfigurationStoreResource> GetConfigurationStores(this SubscriptionResource subscriptionResource, string skipToken = null, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetConfigurationStores(skipToken, cancellationToken));
 }
コード例 #13
0
 public static Response <DeletedConfigurationStoreResource> GetDeletedConfigurationStore(this SubscriptionResource subscriptionResource, string location, string configStoreName, CancellationToken cancellationToken = default)
 {
     return(subscriptionResource.GetDeletedConfigurationStores().Get(location, configStoreName, cancellationToken));
 }
コード例 #14
0
 public static async Task <Response <DeletedConfigurationStoreResource> > GetDeletedConfigurationStoreAsync(this SubscriptionResource subscriptionResource, string location, string configStoreName, CancellationToken cancellationToken = default)
 {
     return(await subscriptionResource.GetDeletedConfigurationStores().GetAsync(location, configStoreName, cancellationToken).ConfigureAwait(false));
 }
コード例 #15
0
 public static Pageable <HostPoolResource> GetHostPools(this SubscriptionResource subscriptionResource, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetHostPools(cancellationToken));
 }
コード例 #16
0
        public static Response <CdnNameAvailabilityResult> CheckCdnNameAvailabilityWithSubscription(this SubscriptionResource subscriptionResource, CdnNameAvailabilityContent content, CancellationToken cancellationToken = default)
        {
            Argument.AssertNotNull(content, nameof(content));

            return(GetExtensionClient(subscriptionResource).CheckCdnNameAvailabilityWithSubscription(content, cancellationToken));
        }
コード例 #17
0
 public static Pageable <VirtualWorkspaceResource> GetVirtualWorkspaces(this SubscriptionResource subscriptionResource, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetVirtualWorkspaces(cancellationToken));
 }
コード例 #18
0
        public static async Task <Response <ValidateProbeResult> > ValidateProbeAsync(this SubscriptionResource subscriptionResource, ValidateProbeContent content, CancellationToken cancellationToken = default)
        {
            Argument.AssertNotNull(content, nameof(content));

            return(await GetExtensionClient(subscriptionResource).ValidateProbeAsync(content, cancellationToken).ConfigureAwait(false));
        }
コード例 #19
0
 public static AsyncPageable <VirtualApplicationGroupResource> GetVirtualApplicationGroupsAsync(this SubscriptionResource subscriptionResource, string filter = null, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetVirtualApplicationGroupsAsync(filter, cancellationToken));
 }
コード例 #20
0
        public static Response <ValidateProbeResult> ValidateProbe(this SubscriptionResource subscriptionResource, ValidateProbeContent content, CancellationToken cancellationToken = default)
        {
            Argument.AssertNotNull(content, nameof(content));

            return(GetExtensionClient(subscriptionResource).ValidateProbe(content, cancellationToken));
        }
コード例 #21
0
 public static Pageable <ProductFamiliesMetadataDetails> GetProductFamiliesMetadata(this SubscriptionResource subscriptionResource, string skipToken = null, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetProductFamiliesMetadata(skipToken, cancellationToken));
 }
コード例 #22
0
 public static AsyncPageable <ResourceUsage> GetResourceUsagesAsync(this SubscriptionResource subscriptionResource, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetResourceUsagesAsync(cancellationToken));
 }
コード例 #23
0
 public static Pageable <OrderItemResource> GetOrderItemResources(this SubscriptionResource subscriptionResource, string filter = null, string expand = null, string skipToken = null, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetOrderItemResources(filter, expand, skipToken, cancellationToken));
 }
コード例 #24
0
 public static Pageable <ManagedRuleSetDefinition> GetManagedRuleSets(this SubscriptionResource subscriptionResource, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetManagedRuleSets(cancellationToken));
 }
コード例 #25
0
        public static Pageable <ProductFamily> GetProductFamilies(this SubscriptionResource subscriptionResource, ProductFamiliesRequest productFamiliesRequest, string expand = null, string skipToken = null, CancellationToken cancellationToken = default)
        {
            Argument.AssertNotNull(productFamiliesRequest, nameof(productFamiliesRequest));

            return(GetExtensionClient(subscriptionResource).GetProductFamilies(productFamiliesRequest, expand, skipToken, cancellationToken));
        }
コード例 #26
0
 public async Task CreateCommonClient()
 {
     Client = GetArmClient();
     DefaultSubscription = await Client.GetDefaultSubscriptionAsync().ConfigureAwait(false);
 }
コード例 #27
0
        public static Response <CheckNameAvailabilityResult> CheckEventHubNameAvailability(this SubscriptionResource subscriptionResource, CheckNameAvailabilityOptions options, CancellationToken cancellationToken = default)
        {
            Argument.AssertNotNull(options, nameof(options));

            return(GetExtensionClient(subscriptionResource).CheckEventHubNameAvailability(options, cancellationToken));
        }
コード例 #28
0
 public virtual SubscriptionResource GetSubscriptionResource(ResourceIdentifier id)
 {
     SubscriptionResource.ValidateResourceId(id);
     return(new SubscriptionResource(this, id));
 }
コード例 #29
0
 public static Pageable <EventHubClusterResource> GetEventHubClusters(this SubscriptionResource subscriptionResource, CancellationToken cancellationToken = default)
 {
     return(GetExtensionClient(subscriptionResource).GetEventHubClusters(cancellationToken));
 }
コード例 #30
0
        public static Response <NameAvailabilityStatus> CheckAppConfigurationNameAvailability(this SubscriptionResource subscriptionResource, CheckNameAvailabilityContent content, CancellationToken cancellationToken = default)
        {
            Argument.AssertNotNull(content, nameof(content));

            return(GetExtensionClient(subscriptionResource).CheckAppConfigurationNameAvailability(content, cancellationToken));
        }