SurrealDB Docs Logo

Enter a search query

->signin()

Signs in to a root, namespace, database or scope user.

Method Syntax
$db->signin([ "namespace" => "test", "database" => "db", "scope" => "scope", // ... other variables ]);

Arguments

PropertiesDescription
usernameREQUIRED FOR ROOT, NAMESPACE & DATABASE

The username of the database user

passwordREQUIRED FOR ROOT, NAMESPACE & DATABASE

The password of the database user

namespaceREQUIRED FOR DATABASE & SCOPE/ACCESS

The namespace to sign in to

databaseREQUIRED FOR SCOPE/ACCESS

The database to sign in to

scope1.x

The scope to sign in to. Also pass any variables used in the scope. Only supported in SurrealDB 1.x

access>=2.x

The access to sign in to. Also pass any variables used in the access. Only supported from SurrealDB 2.x onwards

Example usage

// Authenticate with a root user
$token = $db->signin([
	"username" => "root",
	"password" => "surrealdb",
]);

// Authenticate with a Namespace user
$token = $db->signin([
	"namespace" => "surrealdb",
	"username" => "tobie",
	"password" => "surrealdb",
]);

// Authenticate with a Database user
$token = $db->signin([
	"namespace" => "surrealdb",
	"database" => "docs",
	"username" => "tobie",
	"password" => "surrealdb",
]);

// Authenticate with a Scope user
$token = $db->signin([
	"namespace" => "surrealdb",
	"database" => "docs",
	"scope" => "user",

	// Also pass any properties required by the scope definition
	"email" => "info@surrealdb.com",
	"pass" => "123456",
]);

You can invalidate the authentication for the current connection using the invalidate() method.

On this page

© SurrealDB GitHub Discord Community Cloud Features Releases Install