Uniquely identify a specific client

I have a remote computer running which will connect to my meteor application and then subscribe to a set of data. I want to pull some data specific to that client, but I am not sure how to save that data. Basically:

Meteor.publishComposite('client_info', function () {
  return {
    find: function () {
      return Clients.find(/** ??? */);
    },
    children: [{
      find: function (client) {
        // more data limited to ONLY this client.
      }
    }]
  }
});

How can one uniquely identify clients connecting to your application?

There is a way to use the this.connection.id property inside a meteor method declaration. That id is unique per client.

The simpler way is to store an owner field on all the documents the user can access. Then publish only those documents, but I’m guessing you have a more complicated use case ?

This is a related question :