ComplexType is empty WSDL

I don't think it has anything to do with AWS, since AWS never access your database directly, only via ActiveRecord. When the schema type is generated for your model class, ActiveRecord::Base.columns method is used to obtain names and types of elements that comprise your model. So you should look for the solution to your problem in ActiveRecord internals.

Fair enough. Can you run in the console the following

$ User.columns.each{|c| puts "#{c.name} #{c.type.inspect}"}; nil

and post here the results?

Thanks.

Can you use a View in SQL Server with a different name that just maps directly to the Users table?

Ok, that's the problem. ActiveRecord doesn't discover table columns correctly. You should open a ticket for ActiveRecord with this particular example attached.