My Visualforce page uses a number of outputLabels and selectLists to create the functionality below. Setting the selectList's required attribute makes the select's value required but does not, by design, display the red bar next to the label. This is perfect is it does not lock developers into Salesforce.com's look and feel. However, to actually display the required red bar, you have to add some extra code.
Salesforce JWT Bearer Flow
Implement the JWT Bearer flow with a Salesforce Connected app...