public AuthenticationRequestParameters(
            IServiceBundle serviceBundle,
            ITokenCacheInternal tokenCache,
            AcquireTokenCommonParameters commonParameters,
            RequestContext requestContext)
        {
            _commonParameters = commonParameters;

            Authority = commonParameters.AuthorityOverride == null
                ? Authority.CreateAuthority(serviceBundle.Config.AuthorityInfo)
                : Authority.CreateAuthorityWithOverride(commonParameters.AuthorityOverride, serviceBundle.Config.AuthorityInfo);

            ClientId            = serviceBundle.Config.ClientId;
            CacheSessionManager = new CacheSessionManager(tokenCache, this, serviceBundle.TelemetryManager);
            Scope           = ScopeHelper.CreateSortedSetFromEnumerable(commonParameters.Scopes);
            RedirectUri     = new Uri(serviceBundle.Config.RedirectUri);
            RequestContext  = requestContext;
            IsBrokerEnabled = serviceBundle.Config.IsBrokerEnabled;

            // Set application wide query parameters.
            ExtraQueryParameters = serviceBundle.Config.ExtraQueryParameters ?? new Dictionary <string, string>();

            // Copy in call-specific query parameters.
            if (commonParameters.ExtraQueryParameters != null)
            {
                foreach (KeyValuePair <string, string> kvp in commonParameters.ExtraQueryParameters)
                {
                    ExtraQueryParameters[kvp.Key] = kvp.Value;
                }
            }
        }
示例#2
0
        internal async override Task PreRunAsync()
        {
            IAccount account = await GetAccountFromParamsOrLoginHintAsync(_silentParameters).ConfigureAwait(false);

            AuthenticationRequestParameters.Account = account;

            AuthenticationRequestParameters.Authority = AuthenticationRequestParameters.AuthorityOverride == null
                ? Authority.CreateAuthorityWithTenant(ServiceBundle.Config.AuthorityInfo, account?.HomeAccountId?.TenantId)
                : Authority.CreateAuthorityWithOverride(
                AuthenticationRequestParameters.AuthorityOverride,
                ServiceBundle.Config.AuthorityInfo);
        }