logo

Accounts, security and licensing

Your server speaks TLS only, arrives with one admin account that is yours, and is hardened to Perforce's strongest password level. This page covers connecting for the first time, the accounts you will find on the server, the settings we apply, and what licensing means for backups and restores.

Connect for the first time

You need three things: the address and fingerprint from the Project source control card (or the ready email), and the dsl_admin password from the email. See Your connection details.

  1. Point the client at your server

    macOS / Linux
    export P4PORT=ssl:p4.starfall.northwind.example.com:1666
    export P4USER=dsl_admin
    

    The ssl: prefix is required. Hosted servers have no plaintext port; a connection without ssl: is refused.

  2. Trust the certificate, by checking the fingerprint

    p4 trust
    

    p4 trust prints the fingerprint the server presented and asks whether to trust it. Compare it, character for character, with the Fingerprint row on the connection card:

    Expected fingerprint
    AB:12:6D:4F:90:C3:E8:71:2A:55:BD:04:7E:39:F1:C8:6B:2D:A0:14
    

    If they match, answer yes. For scripts and build machines, pass the fingerprint you expect instead of answering a prompt:

    p4 trust -i AB:12:6D:4F:90:C3:E8:71:2A:55:BD:04:7E:39:F1:C8:6B:2D:A0:14
    
  3. Sign in and change the admin password

    p4 login
    

    Enter the password from the email. The server requires dsl_admin to change its password at first sign-in; when Perforce tells you the password must be changed, set a new one:

    p4 passwd
    

    The server runs at Perforce security level 4, so the new password must be strong: at least eight characters using a mix of character classes (for example upper and lower case plus digits or punctuation). Then sign in again and confirm:

    p4 login\np4 info
    

    Now delete the email, as it asks.

P4V and P4Admin

The same three values go into Perforce's graphical tools.

Values for P4V's Open Connection dialog
P4V fieldValue
Serverssl:p4.starfall.northwind.example.com:1666
Userdsl_admin
WorkspaceLeave empty the first time; create one after signing in.
  • In P4V, open Connection → Open Connection, enter the values above and confirm. P4V shows the server's certificate fingerprint and asks whether to trust it: compare it with your connection card exactly as you would on the command line.
  • Enter the emailed password. P4V then prompts you to set a new password, for the same reason as above.
  • P4V's Swarm integration finds your Swarm server automatically; the platform publishes its address on the server for that purpose.
  • P4Admin connects the same way. Use it to manage users, groups and permissions; see Add users and workspaces.

For the tools themselves, Perforce's own documentation is the reference; this guide covers only what is specific to a hosted server.

Helix Swarm

Every hosted server comes with Helix Swarm for code review. Its address is on the connection card as Swarm Server and follows a fixed pattern: your server label with -swarm appended.

Swarm address
https://p4-swarm.starfall.northwind.example.com
  • Swarm requires sign-in. Use your Perforce username and password; there are no separate Swarm accounts.
  • Reviews, comments and Swarm projects are stored inside Perforce, so they are included in your backups.
  • During a migration, Swarm is deliberately offline until you finalize. See Bring an existing server across.

Add users and workspaces

There is no user-management page in the app. You administer users, groups and permissions with the standard Perforce tools, signed in as dsl_admin. A new server starts with an empty depot, so the first steps are usually a depot layout, a user and a workspace:

p4 user -f alice         # opens the user spec: set FullName and Email
p4 passwd alice          # give them an initial password to change
p4 protect               # add a line such as:  write user alice * //depot/...
p4 client alice-ws       # a workspace for them, or let them create their own

Perforce's documentation covers the spec formats and the protections table. Two things are specific to a hosted server: do not remove or demote the platform accounts listed below, and remember every standard user you create occupies a licensed seat.

Accounts on your server

Accounts present on a hosted Perforce server
AccountTypeOwnerPurpose
dsl_adminstandard, superYouYour administrator. The password is emailed once and must be changed at first sign-in.
dsl_superstandard, superDev Stream LabsProvisioning, failover and support recovery. Do not delete or demote.
dsl_replicaserviceDev Stream LabsReplication to the standby server. Do not delete or demote.
swarmserviceDev Stream LabsHelix Swarm's service account. Do not delete.
dsl_buildstandard, read-onlyDev Stream LabsThe account build machines sync with when Build on check-in is used. It can read; it never submits. Do not change its permissions.

On a server you migrated in, your existing users and their passwords are carried over, and dsl_admin is added to your existing protections table as a super user rather than replacing it.

Security defaults

Security settings applied to every hosted server
SettingWhat it means for you
TLS onlyClients must use ssl:. There is no plaintext port to fall back to.
Certificate fingerprint publishedShown on the connection card and in the ready email, so every client can pin it with p4 trust.
security=4Perforce's strongest built-in level: strong passwords, ticket-based authentication, and no password-in-config shortcuts.
Forced first password changedsl_admin cannot keep the emailed password.
Standby serverA replica keeps a live copy for failover.
Platform backupsWe keep our own backups of your server, separately from anything you pull through Backup & export.
Read-only build accessBuild machines sync with dsl_build, which has read access only.

Licensing

Two things about licensing are worth knowing before you need them.

  • Your license never leaves the server. Backups and exports exclude the Perforce license file. A server you restore from a backup runs unlicensed until you install a license into its P4ROOT, and unlicensed Perforce allows two users and five workspaces. Keep a copy of your license where you keep your backups. See Restore from a backup.
  • Standard users consume seats. Every standard user you create, including a build account on a server you host yourself, counts against the license. Service accounts do not.

Something out of date or unclear? Email [email protected].