private object RemoveApplicationRegistrationAsync(OperationRunner context)
        {
            AzureClient client = new AzureClient(WizardContext.TokenProvider);

            client.SetLogger(context.Logger);

            AzureApplication application = client.GetApplicationAsync(DataModel.InstallationConfiguration.Azure.FunctionApp.ApplicationRegistrationName).Result;

            if (application == null)
            {
                return(true);
            }

            return(client.DeleteApplicationAsync(application.Id).Result);
        }
Beispiel #2
0
        private object DeployAzureADFunctionAppRegistrationAsync(OperationRunner context)
        {
            AzureClient client = new AzureClient(WizardContext.TokenProvider);

            client.SetLogger(context.Logger);

            AzureApplication application = client.GetApplicationAsync(DataModel.InstallationConfiguration.Azure.FunctionApp.ApplicationRegistrationName).Result;

            if (application != null)
            {
                return(application);
            }

            return(client.CreateApplicationAsync(new AzureApplicationRequestBase()
            {
                DisplayName = DataModel.InstallationConfiguration.Azure.FunctionApp.ApplicationRegistrationName,
                IdentifierUris = new string[]
                {
                    $"https://{DataModel.InstallationConfiguration.Azure.FunctionApp.ApplicationRegistrationName}",
                },
                PasswordCredentials = new AzureApplicationPasswordCredential[]
                {
                    new AzureApplicationPasswordCredential()
                    {
                        StartDateTime = DateTime.Now.ToString("o"),
                        EndDateTime = DateTime.Now.AddYears(1).ToString("o"),
                        SecretText = DataModel.InstallationConfiguration.Azure.FunctionApp.ApplicationRegistrationSecret.Password,
                    },
                },
                RequiredResourceAccess = new AzureApplicationRequiredResourceAccess[]
                {
                    new AzureApplicationRequiredResourceAccess()
                    {
                        ResourceAppId = "00000003-0000-0000-c000-000000000000",
                        ResourceAccess = new ResourceAccess[]
                        {
                            new ResourceAccess()
                            {
                                Id = "e1fe6dd8-ba31-4d61-89e7-88639da4683d",
                                Type = "Scope",
                            },
                        },
                    },
                },
                SignInAudience = "AzureADMyOrg",
            }).Result);
        }