private async Task <TenantProviderSettings> GetTenantProviderSettings(TenantContext tenant) { var providerSettings = await _providerSettingsRepository .GetProviderSettings(tenant.TenantId, AuthProviderType.Facebook); if (providerSettings == null) { throw new DomainException(ErrorCode.TenantProviderSettingsNotFound, new { tenantCode = tenant.TenantCode, providerType = AuthProviderType.Facebook }); } return(providerSettings); }
private async Task <(bool hasError, RequestResult <AuthorizationData> result)> ValidateTokenWithProviderSettings(TokenInfo tokenInfo, TenantContext tenant) { var providerSettings = await _providerSettingsRepository .GetProviderSettings(tenant.TenantId, AuthProviderType.Google); if (providerSettings == null) { var result = RequestResult <AuthorizationData> .Failure(ErrorCode.TenantProviderSettingsNotFound, new { tenantCode = tenant.TenantCode, providerType = AuthProviderType.Google }); return(true, result); } if (tokenInfo == null || tokenInfo.ClientId != providerSettings.Identifier) { var result = RequestResult <AuthorizationData> .Failure(ErrorCode.InvalidProviderToken, new { tenantCode = tenant.TenantCode, providerType = AuthProviderType.Google }); return(true, result); } return(false, null); }