public override Request CreateRequest()
        {
            this.Client.VerifyHasProvisioningInfo();

            AppProvisioningInfo provInfo = this.Client.State.ProvisioningInfo;

            Request request = new Request("CreateAuthenticatedSessionToken", 2, null);

            request.IsAnonymous  = true;
            request.Header.AppId = provInfo.AppIdInstance;
            request.Body.Data    = new CASTRequestParams(provInfo, this.Client.Cryptographer);

            return(request);
        }
示例#2
0
        public override Request CreateRequest()
        {
            this.Client.VerifyHasProvisioningInfo();

            AppProvisioningInfo provInfo          = this.Client.State.ProvisioningInfo;
            CASTRequestParams   castRequestParams = new CASTRequestParams(provInfo, this.Client.Cryptographer);

            Request request = new Request("CreateAuthenticationTokensWithTicket", 1, null);

            request.IsAnonymous  = true;
            request.Header.AppId = provInfo.AppIdInstance;
            request.Body.Data    = new object[]
            {
                m_msaTicket,
                castRequestParams
            };

            return(request);
        }
示例#3
0
        public string UrlForAppProvision()
        {
            m_client.VerifyHasProvisioningInfo();

            AppProvisioningInfo provInfo = m_client.State.ProvisioningInfo;
            AppInfo             appInfo  = m_client.AppInfo;

            string qs = string.Format(
                "appid={0}&appCreationToken={1}&instanceName={2}&ismra=true",
                appInfo.MasterAppId,
                Uri.EscapeDataString(provInfo.AppCreationToken),
                Uri.EscapeDataString(appInfo.InstanceName));

            if (m_client.AppInfo.IsMultiInstanceAware)
            {
                qs += "&aib=true";
            }

            return(UrlForTarget(Targets.CreateApplication, qs));
        }
示例#4
0
        public async Task UpdateProvisioningInfoAsync(CancellationToken cancelToken)
        {
            AppProvisioningInfo provInfo = null;

            if (UseOnlineAuthModel)
            {
                await EnsureUserIdentityAsync(cancelToken, HBIAuthPolicy);

                provInfo = await m_serviceMethods.CreateApplicationAsync(m_userIdentity.Tickets[0], m_appInfo, cancelToken);
            }
            else
            {
                provInfo = await m_serviceMethods.GetAppProvisioningInfoAsync(cancelToken);
            }

            lock (m_state)
            {
                m_state.ProvisioningInfo = provInfo;
                SaveState();
            }
        }