Yes, this is possible and I am currently doing this.
I call a service when the user first logs in. This service determines which mashup should be display in the contained mashup widget. The result of this service is a string that is passed into the name property of the contained mashup widget. Upon service completion I refresh the contained mashup.