Eu instanciei uma classe de cache na mão pra fazer isso.
Eu configuro o padrão da minha aplicação como MemCache, mas como o é um cache único, MemCache vc tem a visibilidade do cache para todas as aplicações que estão no servidor, não seria interessânte ter dados como o detalhe de um ítem de venda nele onde uma outra aplicação tenha possibilidade de acessar, mas, pra fragmentos de paginas, e outras coisas que não são dados privados da minha aplicação, ele é um avião.
Então, pros detalhes, eu uso o FileCache instanciado manualmente, onde defino o caminho dos arquivos de cache em subpastas com o id da sessão do usuário.
Pra ficar mais organizado, eu criei parâmetros no config/main.php que definem o caminho base onde meu FileCache vai colocar os arquivos dele, criei uma classe do tipo Factory que lê estes parâmetros, instancia e seta os parâmetros iniciais pra classe, .
Assim, no servidor, ficou os arquivos que uso de cache pros detalhes dentro da pasta da minha aplicação, onde uma outra aplicação não conseguiria acessar (Dependendo da configo do servidor, claro, mas ai já não depende de mim mais).
Pra usar o cache instanciado manualmente é praticamente a mesma coisa, ao inves de usar Yii::app()->cache->get e Yii::app()->cache->set, vc usa $instanciaCache->get e $instanciaCache->set.
[Edit]
to sem os fontes em casa, mas na segunda eu posto aqui os códigos de uso, do Factory e um exemplo da config.
[/Edit]