Finally, in order to interact with the functionality of databases, you must first retrieve the details of the instance itself. To do this, you must substitute {instanceId} for your instance’s ID:

$instance = $service->instance('{instanceId}');

Creating users

Database users exist at the Instance level, but can be associated with a specific Database. They are represented by the OpenCloud\Database\Resource\User class.

// New instance of OpenCloud\Database\Resource\User
$user = $instance->user();

// Send to API
    'name'      => 'Alice',
    'password'  => 'fooBar'
    'databases' => array('production')

Deleting a user


The root user

By default, Cloud Databases does not enable the root user. In most cases, the root user is not needed, and having one can leave you open to security violations. However, if you do want to enable access to the root user:

$rootUser = $instance->enableRootUser();

This returns a regular User object with the name attribute set to root and the password attribute set to an auto-generated password.

Check if root user is enabled

// true for yes, false for no

Grant database access

To grant access to one or more databases, you can run:

$user = $instance->user('{userName}');
$user->grantDbAccess(['{dbName1}', '{dbName2}']);