public void KustoDatabasePrincipalsTests() { using (MockContext context = MockContext.Start(this.GetType())) { var testBase = new KustoTestBase(context); //create cluster var createdCluster = testBase.client.Clusters.CreateOrUpdate(testBase.rgName, testBase.clusterName, testBase.cluster); //create database var createdDb = testBase.client.Databases.CreateOrUpdate(testBase.rgName, createdCluster.Name, testBase.databaseName, testBase.database); //create principals list var databasePrincipalListRequest = new DatabasePrincipalListRequest(testBase.databasePrincipals); var principalsResult = testBase.client.Databases.AddPrincipals(testBase.rgName, testBase.clusterName, testBase.databaseName, databasePrincipalListRequest); VerifyPrincipalsExists(principalsResult.Value, testBase.databasePrincipal); // get principals list var principalsList = testBase.client.Databases.ListPrincipals(testBase.rgName, testBase.clusterName, testBase.databaseName); VerifyPrincipalsExists(principalsList, testBase.databasePrincipal); //delete principals principalsResult = testBase.client.Databases.RemovePrincipals(testBase.rgName, testBase.clusterName, testBase.databaseName, databasePrincipalListRequest); VerifyPrincipalsDontExist(principalsResult.Value, testBase.databasePrincipal); //delete database testBase.client.Databases.Delete(testBase.rgName, testBase.clusterName, testBase.databaseName); //delete cluster testBase.client.Clusters.Delete(testBase.rgName, testBase.clusterName); } }
/// <summary> /// Remove Database principals permissions. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='resourceGroupName'> /// The name of the resource group containing the Kusto cluster. /// </param> /// <param name='clusterName'> /// The name of the Kusto cluster. /// </param> /// <param name='databaseName'> /// The name of the database in the Kusto cluster. /// </param> /// <param name='databasePrincipalsToRemove'> /// List of database principals to remove. /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <DatabasePrincipalListResult> RemovePrincipalsAsync(this IDatabasesOperations operations, string resourceGroupName, string clusterName, string databaseName, DatabasePrincipalListRequest databasePrincipalsToRemove, CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.RemovePrincipalsWithHttpMessagesAsync(resourceGroupName, clusterName, databaseName, databasePrincipalsToRemove, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// Remove Database principals permissions. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='resourceGroupName'> /// The name of the resource group containing the Kusto cluster. /// </param> /// <param name='clusterName'> /// The name of the Kusto cluster. /// </param> /// <param name='databaseName'> /// The name of the database in the Kusto cluster. /// </param> /// <param name='databasePrincipalsToRemove'> /// List of database principals to remove. /// </param> public static DatabasePrincipalListResult RemovePrincipals(this IDatabasesOperations operations, string resourceGroupName, string clusterName, string databaseName, DatabasePrincipalListRequest databasePrincipalsToRemove) { return(operations.RemovePrincipalsAsync(resourceGroupName, clusterName, databaseName, databasePrincipalsToRemove).GetAwaiter().GetResult()); }