People on a simple work visa (not necessarily a green card holder) pay taxes in US. To pay taxes and get some benefits, they need SSN.. An Indian colleague of mine had SSN without having a green card.. He got his card years later..
==================================================
https://www.thebalancecareers.com/how-to-get-a-social-security-number-for-non-us-citizens-2064264
What is a Social Security Number?
A social security number is a nine-digit identification number given to U.S. Citizens, permanent residents,
and non-immigrant working residents.
Social Security numbers are needed to work, collect Social Security benefits and pensions, and in order to be eligible for other social services.
There are three different types of social security cards:
1. The most common type issued has the person’s name and social security number. This type is typically given to U.S. citizens and legal permanent residents.
2.
The second is designated for temporary workers or those in non-immigrant status. They are valid for employment “with DHS authorization” and can be used to satisfy I-9 eligibility requirements.
3.
The last type is issued for tax purposes and cannot be used with the I-9 form or toward employment.
Eligibility for a Social Security Number
Temporary workers and those in non-immigrant visa status who are authorized to work in the United States by the Department of Homeland Security (DHS) can get a Social Security number (SSN).
Social Security numbers are used to report wages to the government and to determine a person’s eligibility for Social Security benefits.
A Social Security number is needed to work and to collect Social Security benefits.
Only non-citizens authorized to work in the US are eligible for a Social Security number. Those on a non-employment based temporary visa (like ESTA) without work authorization are unable to apply for one.