You could pass your credentials directly to query:
<?php
$cluster = new CouchbaseCluster('couchbase://localhost');
$bucket = $cluster->openBucket('test1', 'secret1');
$query = CouchbaseN1qlQuery::fromString('SELECT * FROM `test1` UNION SELECT * FROM `test2`');
$query->options['creds'] = [
['user' => 'test1', 'pass' => 'secret1'],
['user' => 'test2', 'pass' => 'secret2']
];
$res = $bucket->query($query);