There may be plenty connections used by a single session - that's very often the point of ETL and data integration. Those connections used in session (or sessions!) may be defined in this session. But a session can use parameter for the connection that will be replaced with some value defined in a parameter file. A parameter file can be defined on the session itself, or it can be defined for a workflow. Or there can be some external utility that stores the configuration and executes the workflow with a generated parameter file that you will not find in the workflow definition at all.
There are some tools that would help you get all the connections for a session or all sessions in a workflow, but deriving the values for the parameters is more difficult. You need to know where they come from in your environment.
Please note that workflows and sessions hold the connection name only - where does it actually connect depends on the connection definition.
In addition, the very same workflow and sessions can be executed with different connection values, e.g. to perform the same set of operations on a different set of sources and/or targets.