> the user decides to use 2FA volunarily...
Yes. Casa design was driven by this principle among others. We found that most sites, be they social networks, e-wallets, etc. start with user+password and encourage people to use 2fa but they simply don't force it. We followed that generic "standard" approach.
There are some hints in the UI that invite users to enroll credentials, and you can make it more blatant by using the `2fa_requisite` [flag](https://gluu.org/docs/casa/administration/2fa-basics/#forcing-users-to-enroll-a-specific-credential-before-2fa-is-available) on some authn mechanisms so the options to enroll appear more "up-front".
> I think it would be beneficial to allow ...
> Whether or not it's a good idea to rely
These 2 kind of go hand-in-hand. If you onboard an external provider that you consider trustworthy, I wouldn't care about second factor because probably that practice takes place there already (at the provider). Successful logins coming from there can be deemed safe.
When unsure about trustworthiness, this is more critical and forcing 2FA to happen sounds like a better idea. However this conflicts severely with the current design: only "local" users (ie. who have a password in the local Gluu database) can enroll credentials and have 2FA; "conversion to local" takes place when using the "Set a password" menu item in Casa. Ignoring this inconvenience, there is also some likelihood the external provider already applies some form of strong authentication before the users lands Casa, and undergoing 2FA twice for users would be confusing.
As I see it, one should not integrate external providers when the resource you are trying to give access to is highly sensitive. For instance I don't think online banking apps, Amazon, Paypal, and the like would ever allow such thing. From my experience with 2FA in the last years I've found that a one-size-fits-all approach to strong authentication doesn't seem to exist. Things get complicated too easily, so we kind of favor simplicity. Add to it the fact that composable authentication flows are a utopia, and Gluu is not an exception.
Probably step-up authentication (user prompted to present a credential when attempting to perform a sensitive action inside an app) is a better strategy, however, it is beyond the scope of Casa. There are no plans to support this feature in Gluu in the short term.