private AuthRequest GetAuthRequest(SwedishPersonalIdentityNumber?personalIdentityNumber, BankIdLoginOptions loginOptions) { var endUserIp = _bankIdEndUserIpResolver.GetEndUserIp(HttpContext); var personalIdentityNumberString = personalIdentityNumber?.To12DigitString(); var autoStartTokenRequired = string.IsNullOrEmpty(personalIdentityNumberString) ? true : (bool?)null; List <string>?certificatePolicies = null; if (loginOptions.CertificatePolicies != null && loginOptions.CertificatePolicies.Any()) { certificatePolicies = loginOptions.CertificatePolicies; } var authRequestRequirement = new Requirement(certificatePolicies, autoStartTokenRequired, loginOptions.AllowBiometric); return(new AuthRequest(endUserIp, personalIdentityNumberString, authRequestRequirement)); }
private async Task <AuthRequest> GetAuthRequest(PersonalIdentityNumber?personalIdentityNumber, BankIdLoginOptions loginOptions) { var endUserIp = _bankIdEndUserIpResolver.GetEndUserIp(HttpContext); var personalIdentityNumberString = personalIdentityNumber?.To12DigitString(); var tokenStartRequired = string.IsNullOrEmpty(personalIdentityNumberString) ? true : (bool?)null; List <string>?certificatePolicies = null; if (loginOptions.CertificatePolicies != null && loginOptions.CertificatePolicies.Any()) { certificatePolicies = loginOptions.CertificatePolicies; } var authRequestRequirement = new Requirement(certificatePolicies, tokenStartRequired, loginOptions.AllowBiometric); var authRequestContext = new BankIdAuthRequestContext(endUserIp, personalIdentityNumberString, authRequestRequirement); var userData = await _bankIdAuthUserDataResolver.GetUserDataAsync(authRequestContext, HttpContext); return(new AuthRequest(endUserIp, personalIdentityNumberString, authRequestRequirement, userData.UserVisibleData, userData.UserNonVisibleData, userData.UserVisibleDataFormat)); }