It certainly can be done, but it's not quite as simple as "linking databases". You will have to alter the code (specifically, the SQL queries) of one application or the other so that it can use the membership table from the other database/application (assuming that there is no off-the-shelf plugin available to do the job for you), and will also (probably) have to alter the members table in the database you choose to be your identity container so that it contains all of the needed information (additional data fields, ID keys used to get data from other tables, and so forth). Since both applications are FOSS (free and open source software), you can modify either, but SMF is 3-clause BSD-licensed, which may give you more useful options for modifications than e107's GPL license. (In general, too, a full-blown CMS will have a lot "deeper" and more convoluted code than a single-purpose application like a forum, so it may be many times easier to modify the forum's code and the CMS's member table than to do it the other way around.)
It shouldn't be horribly difficult (well, other than figuring out where the developers hid the code you'll need to change, that is — current "best practices" seem to concentrate on somehow "increasing maintainability" by making sure that everything is reached via include() or require() calls going at least ten levels deep). You'll need enough SQL knowledge to know what needs to be in the users table and how to specify a database as well as a table in a query. If you don't have the knowledge yourself (or in-house), it's something you can probably have done quickly and cheaply via one of the many rent-a-code-monkey sites out there.