I am pretty new to OAuth for public products, i am confused on how Public products do an OAuth to salesforce which do not have a connected App. I understand for any successful authorization we need to have a connected app but for products like Heroku connect, force cli there is no connected app created in a org and when i Authorize connection is successful without a connected app?? i am sorry if i am missing something basic but i am confused on how this can happen.
Any product that authenticates to Salesforce via OAuth must have a connected app defined. However, in order for a connected app to appear in your list of Connected Apps in the Setup menu, it must be installed as part of a managed package. The reason that you see some Salesforce products (e.g. Salesforce1, Dataloader, etc) listed in your org is that their connected apps are part of a managed package that Salesforce automatically installs to your org. Heroku Connect and the Force.com CLI don't appear in the list because they're not part of the automatically-installed package, and they don't have their own managed packages.