/// <summary> /// GetAuthenticationMethods method implmentation /// </summary> public override List <AvailableAuthenticationMethod> GetAuthenticationMethods(AuthenticationContext ctx) { if (!IsInitialized) { throw new Exception("Provider not initialized !"); } List <AvailableAuthenticationMethod> result = GetSessionData(this.Kind, ctx); if (result != null) { return(result); } else { result = new List <AvailableAuthenticationMethod>(); GetAvailableAuthenticationMethodsResponse authMethods = GetAzureAvailableAuthenticationMethods(ctx); foreach (AuthenticationMethod current in authMethods.AuthenticationMethods) { AvailableAuthenticationMethod item = GetAuthenticationMethodProperties(current); if (item.Method != AuthenticationResponseKind.Error) { item.IsDefault = current.IsDefault; result.Add(item); } } if (result.Count > 0) { SaveSessionData(this.Kind, ctx, result); } } return(result); }
/// <summary> /// GetAuthenticationMethods method implmentation /// </summary> public override List <AvailableAuthenticationMethod> GetAuthenticationMethods(AuthenticationContext ctx) { if (!IsInitialized) { throw new Exception("Provider not initialized !"); } List <AvailableAuthenticationMethod> result = GetSessionData(this.Kind, ctx); if (result != null) { return(result); } else { result = new List <AvailableAuthenticationMethod>(); #if !azuretest GetAvailableAuthenticationMethodsResponse authMethods = GetAzureAvailableAuthenticationMethods(ctx); foreach (AuthenticationMethod current in authMethods.AuthenticationMethods) { AvailableAuthenticationMethod item = GetAuthenticationMethodProperties(current); if (item.Method != AuthenticationResponseKind.Error) { item.IsDefault = current.IsDefault; result.Add(item); } } #else AuthenticationMethod current1 = new AuthenticationMethod() { Id = "OneWaySMS", IsDefault = true }; current1.Properties.Add("MobilePhone", "+33 123123456"); AuthenticationMethod current2 = new AuthenticationMethod() { Id = "TwoWaySMS", IsDefault = false }; current2.Properties.Add("MobilePhone", "+33 123123456"); AvailableAuthenticationMethod item1 = GetAuthenticationMethodProperties(current1); item1.IsDefault = current1.IsDefault; result.Add(item1); AvailableAuthenticationMethod item2 = GetAuthenticationMethodProperties(current2); item2.IsDefault = current2.IsDefault; result.Add(item2); #endif if (result.Count > 0) { SaveSessionData(this.Kind, ctx, result); } } return(result); }