Beispiel #1
0
 public GraphService(IOptions <GraphOptions> config)
 {
     _config    = config.Value;
     _client    = GetServiceClient().Result;
     _aadClient = GetAadServiceClient();
     _aadToken  = GetAccessToken(_config.AadResource).Result;
 }
Beispiel #2
0
        private AAD.ActiveDirectoryClient GetAadServiceClient()
        {
            var root       = new Uri(_config.AadResource);
            var tenantRoot = new Uri(root, _config.TenantId);
            var client     = new AAD.ActiveDirectoryClient(tenantRoot, async() => await GetAccessToken(_config.AadResource));

            return(client);
        }
        /// <summary>
        /// Gets the active directory C# client, initialized for the proper tenant.
        /// </summary>
        public GraphClient.ActiveDirectoryClient GetActiveDirectoryClient()
        {
            if (_activeDirectoryClient != null)
            { // Already initialized
                return(_activeDirectoryClient);
            }

            // else. Initialize and return
            string domain = !string.IsNullOrWhiteSpace(_forCustomerTenant) ?
                            _forCustomerTenant : Constants.CSP_TENANT_NAME;

            Uri servicePointUri = new Uri(Constants.GRAPH_RESOURCE_URL);
            Uri serviceRoot     = new Uri(servicePointUri, domain);

            _activeDirectoryClient = new GraphClient.ActiveDirectoryClient(serviceRoot,
                                                                           async() => (await GetADTokenForRequests(_forCustomerTenant)).AccessToken);

            return(_activeDirectoryClient);
        }
        /// <summary>
        /// Gets the active directory C# client, initialized for the proper tenant.
        /// </summary>   
        public GraphClient.ActiveDirectoryClient GetActiveDirectoryClient()
        {
            if (_activeDirectoryClient != null)
            { // Already initialized
                return _activeDirectoryClient;
            }

            // else. Initialize and return
            string domain = !string.IsNullOrWhiteSpace(_forCustomerTenant) ? 
                _forCustomerTenant : Constants.CSP_TENANT_NAME;

            Uri servicePointUri = new Uri(Constants.GRAPH_RESOURCE_URL);
            Uri serviceRoot = new Uri(servicePointUri, domain);

            _activeDirectoryClient = new GraphClient.ActiveDirectoryClient(serviceRoot,
                    async () => (await GetADTokenForRequests(_forCustomerTenant)).AccessToken);

            return _activeDirectoryClient;
        }
Beispiel #5
0
        public static async Task <List <SubscribedSku> > GetCustomerSubscribedSkus(
            PartnerSdkModels.Customers.Customer customer)
        {
            AzureADGraphApiHelper azureADGraphApiHelper = new AzureADGraphApiHelper(customer.Id);

            GraphClient.ActiveDirectoryClient activeDirectoryClient = azureADGraphApiHelper.GetActiveDirectoryClient();

            GraphClient.Extensions.IPagedCollection <GraphClient.ISubscribedSku> subscribedSkus = await activeDirectoryClient.SubscribedSkus.ExecuteAsync();

            List <SubscribedSku> result = new List <SubscribedSku>();

            do
            {
                foreach (GraphClient.ISubscribedSku subscribedSku in subscribedSkus.CurrentPage.ToList())
                {
                    result.Add(SubscribedSkuMapper.MapFromSource(subscribedSku));
                }

                subscribedSkus = await subscribedSkus.GetNextPageAsync();
            }while (subscribedSkus != null && subscribedSkus.MorePagesAvailable);

            return(result);
        }