Nous pouvons le faire avec Microsoft.Azure.Management.Fluent et Microsoft.Azure.Management.ResourceManager.Fluent, plus d'informations détaillées sur la bibliothèque, s'il vous plaît se référer à packages.config. Nous pourrions également obtenir plus demo code du github. Avant de coder, nous devons enregistrer une application Azure AD et lui assigner un rôle correspondant. Pour plus de détails, veuillez vous reporter au document. Ensuite, nous pouvons obtenir le clientId, la clé (clé secrète) et le locataire de l'application Azure AD. Après cela, nous pourrions créer le format suivant Auth file avec
subscription=########-####-####-####-############
client=########-####-####-####-############
tenant=########-####-####-####-############
key=XXXXXXXXXXXXXXXX
managementURI=https\://management.core.windows.net/
baseURL=https\://management.azure.com/
authURL=https\://login.windows.net/
graphURL=https\://graph.windows.net/
Code de démonstration:
var credFile = @"File Path"; // example: c:\tom\auth.txt
var resourceGroup = "resource group";
var azureSQLServer = "Azure sql server name"; //just name of the Azure sql server such as tomdemo
var firewallRull = "firewall rull name";//such as myFirewallRull
var firewallRuleIPAddress = "x.x.x.x";//your Ip address
var credentials = SdkContext.AzureCredentialsFactory.FromFile(credFile);
var azure = Azure
.Configure()
.WithLogLevel(HttpLoggingDelegatingHandler.Level.Basic)
.Authenticate(credentials)
.WithDefaultSubscription();
var sqlServer = azure.SqlServers.GetByResourceGroup(resourceGroup, azureSQLServer);
var newFirewallRule = sqlServer.FirewallRules.Define(firewallRull)
.WithIPAddress(firewallRuleIPAddress)
.Create();
packages.config
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.Azure.KeyVault.Core" version="1.0.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.AppService.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Batch.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Cdn.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Compute.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.ContainerInstance.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.ContainerRegistry.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.CosmosDB.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Dns.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Graph.RBAC.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.KeyVault.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Network.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Redis.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.ResourceManager.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Search.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.ServiceBus.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Sql.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.Storage.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Azure.Management.TrafficManager.Fluent" version="1.3.0" targetFramework="net461" />
<package id="Microsoft.Data.Edm" version="5.8.2" targetFramework="net461" />
<package id="Microsoft.Data.OData" version="5.8.2" targetFramework="net461" />
<package id="Microsoft.Data.Services.Client" version="5.8.2" targetFramework="net461" />
<package id="Microsoft.IdentityModel.Clients.ActiveDirectory" version="2.28.3" targetFramework="net461" />
<package id="Microsoft.Rest.ClientRuntime" version="2.3.9" targetFramework="net461" />
<package id="Microsoft.Rest.ClientRuntime.Azure" version="3.3.10" targetFramework="net461" />
<package id="Microsoft.Rest.ClientRuntime.Azure.Authentication" version="2.3.1" targetFramework="net461" />
<package id="Newtonsoft.Json" version="6.0.8" targetFramework="net461" />
<package id="System.ComponentModel.EventBasedAsync" version="4.0.11" targetFramework="net461" />
<package id="System.Dynamic.Runtime" version="4.0.0" targetFramework="net461" />
<package id="System.Linq.Queryable" version="4.0.0" targetFramework="net461" />
<package id="System.Net.Requests" version="4.0.11" targetFramework="net461" />
<package id="System.Spatial" version="5.8.2" targetFramework="net461" />
<package id="WindowsAzure.Storage" version="8.1.4" targetFramework="net461" />
</packages>
Avez-vous une mise à jour sur ce fil? Si c'est utile, veuillez le marquer afin d'aider plus de communautés ayant le même problème à chercher facilement. –