Ejemplo n.º 1
0
        private string GetLaunchUrl(BankIdSupportedDevice device, LaunchUrlRequest request)
        {
            var prefix      = GetPrefixPart(device);
            var queryString = GetQueryStringPart(device, request);

            return($"{prefix}{queryString}");
        }
Ejemplo n.º 2
0
 private static string GetRedirectUrl(BankIdSupportedDevice device, LaunchUrlRequest request)
 {
     // Only use redirect url for iOS as recommended in BankID Guidelines 3.1.2
     return(device.DeviceOs == BankIdSupportedDeviceOs.Ios
         ? GetIOsBrowserSpecificRedirectUrl(device, request.RedirectUrl)
         : NullRedirectUrl);
 }
Ejemplo n.º 3
0
 private static string GetRedirectUrl(BankIdSupportedDevice device, LaunchUrlRequest request)
 {
     // Only use redirect url for iOS as recommended in BankID Guidelines 3.1.2
     return(device.IsIos
         ? request.RedirectUrl
         : "null");
 }
        public string GetLaunchUrl(BankIdSupportedDevice device, LaunchUrlRequest request)
        {
            if (device.DeviceOs == BankIdSupportedDeviceOs.Ios)
            {
                return(request.RedirectUrl);
            }

            return("#");
        }
Ejemplo n.º 5
0
        public BankIdLaunchInfo GetLaunchInfo(LaunchUrlRequest request, HttpContext httpContext)
        {
            var detectedDevice = _bankIdSupportedDeviceDetector.Detect(httpContext.Request.Headers[UserAgentHeaderName]);
            var deviceMightRequireUserInteractionToLaunch = GetDeviceMightRequireUserInteractionToLaunchBankIdApp(detectedDevice);
            var deviceWillReloadPageOnReturn = GetDeviceWillReloadPageOnReturnFromBankIdApp(detectedDevice);

            var launchUrl = GetLaunchUrl(detectedDevice, request);

            return(new BankIdLaunchInfo(launchUrl, deviceMightRequireUserInteractionToLaunch, deviceWillReloadPageOnReturn));
        }
Ejemplo n.º 6
0
        private string GetQueryStringPart(BankIdSupportedDevice device, LaunchUrlRequest request)
        {
            var queryStringParams = new Dictionary <string, string>();

            if (!string.IsNullOrWhiteSpace(request.AutoStartToken))
            {
                queryStringParams.Add("autostarttoken", request.AutoStartToken);
            }

            if (!string.IsNullOrWhiteSpace(request.RelyingPartyReference))
            {
                queryStringParams.Add("rpref", Base64Encode(request.RelyingPartyReference));
            }

            queryStringParams.Add("redirect", GetRedirectUrl(device, request));

            return(GetQueryString(queryStringParams));
        }
 public BankIdLaunchInfo GetLaunchInfo(LaunchUrlRequest request, HttpContext httpContext)
 {
     // Always stay on same page, without reloading, in simulated mode
     return(new BankIdLaunchInfo("#", false, false));
 }
 public BankIdLaunchInfo GetLaunchInfo(LaunchUrlRequest request, HttpContext httpContext)
 {
     // Always redirect back without user interaction in simulated mode
     return(new BankIdLaunchInfo(request.RedirectUrl, false, false));
 }