Betting it’s based on stereotypical appearance and language, not checking IDs.
A more charitable approach might be to charge an extra fee for foreign credit cards - that way you get to effectively upcharge tourists, while encouraging conversion to and payment by local currency, additionally saving yourself transaction fees in the process.
It's kind of reductionist to take that environment and that culture and just default to "giving the white guy the expensive menu is racism." You'd have to do that to probably 1500 people before you hit the person who has actually immigrated as opposed to a tourist.
It's an interesting dilemma. Personally, I prefer the version of price discrimination where you introduce high-margin premium value-adds that people can opt in or out of - alcohol or steak/lobster at a restaurant, rooms with views or additional packages at hotels, table service, etc, which can allow wealthier customers to subsidize less wealthy ones without necessarily compromising the core service. Though that's still a bummer when adding a view to a room is prohibitively expensive for something that cost the hotel nothing more to provide, and you feel like either you're getting screwed or you'll always have an alleyway view from your hotel.