---
title: "Share a credential securely"
description: "Send a credential to someone outside the console as a one-time link that expires, with an optional code by email or text message and a passphrase."
url: "https://support.outpostplatform.com/documentation/share-credentials/"
product: "depot"
type: "how-to"
status: "draft"
ai_summary: "How to send a credential from the Outpost console as a link at /s/ that stops working after one view and a set lifetime (1 hour, 24 hours, 7 days, capped by Settings), optionally protected by a confirmation code sent by email or text message and a passphrase, or delivered to the Outpost tray. Every open is recorded. Needs vault:share and access to see the credential."
availability:
  plans: ["home-lab", "essentials", "enterprise", "msp"]
  permission: "vault:share"
  preview: false
source: "https://gitlab.com/outpostplatform/docs/-/edit/main/src/content/docs/documentation/share-credentials.md"
license: "CC BY 4.0"
---

# Share a credential securely

When an end user or a contractor needs a password, send it as a link rather
than in an email or a chat message. The link stops working after it is opened,
or when it expires, whichever comes first, and every open is recorded. This
page shows how to create the link, how to protect it, and what the recipient
sees.

## Before you begin

- You need `vault:share` and access that lets you see the credential. You
  cannot send what you cannot read.
- An administrator can turn sharing off, or lower the limits, under
  **Documentation** > **Settings** on the **Sending a credential** card. Links
  already sent keep working until they expire or are withdrawn.
- When **Ask for a second factor before a reveal** is on in **Settings**,
  creating a link asks for your authenticator code first.
- Outpost does not send the link itself. You copy it and send it the way you
  normally would. Outpost sends only the optional confirmation code.

:::caution
Creating a new link for a credential withdraws any live link for that
credential, so only one link per credential works at a time.
:::

## Create the link

1. Open the credential and select **Send this credential**.
2. In **The link works for**, choose **1 hour**, **24 hours**, or **7 days**.
   If your administrator allows less, the console says the link will stop
   working sooner.
3. Leave **Stop working after the first view** selected, or clear it and enter
   **How many times it can be opened**.
4. Choose what to include: **Include the username**, and **Include the current
   one-time code** if the credential has one. Only the code is sent, never the
   setup secret.
5. To make the recipient prove who they are, enter an email address or a
   mobile number in **Send a confirmation code to**, and choose **Email** or
   **Text message** in **Send it by**. Leave it empty to send the link with no
   second step.
6. Optionally, enter a **Passphrase (optional)**. The recipient types it before
   the value is shown. Tell them the passphrase another way.
7. In **Deliver it**, choose **As a link I copy myself**, or **To the Outpost
   tray on their machine**.
8. Optionally, enter a **Message (optional)** to show the recipient.
9. Select **Create the link**.
10. Copy the link with **Copy the link**. It is not shown again in this dialog.

Text only someone who expects the code. The recipient gets one message from
Outpost and can reply STOP to opt out.

### Deliver to the tray

**To the Outpost tray on their machine** shows the link in the Outpost tray app
on the recipient's endpoint. A tray delivery always needs a confirmation code,
because someone else at the endpoint can see the tray. The credential must
name the person the code goes to. The tray only opens the link in the
browser. It never shows the secret itself.

## What the recipient sees

The link opens a page on your Outpost address under `/s/`.

1. If you asked for a confirmation code, the page asks for the **Code** that
   was sent to them, then **Continue**.
2. The page says **This link works once. Closing this page ends it.** when the
   link allows one view.
3. If you set a passphrase, they enter it in **Passphrase**.
4. They select **Show it** and see the **Username**, **Password**, and
   **Sign-in code** you included, each with **Copy**. **Get the next code**
   fetches a fresh one-time code.

A link that has expired, been used up, or been withdrawn, or a wrong
passphrase, all show the same page: **This link is no longer available**. The
page never reveals which of these happened.

## Track and withdraw a link

The credential's **Links sent** card lists the links sent for it, with their
state (**Live**, **Opened**, **Expired**, **Withdrawn**, or **Deleted**), who
sent each one, when it stops working, and how many times it was opened. To
withdraw a live link, select **Revoke**.

Each open is recorded in the audit log as **Opened from a link**. The audit
entry identifies the recipient by a hash, not by their address. A link holds
no copy of the password: it reads the credential when it is opened. The
link's token, passphrase, and recipient contact details are erased **Keep a
spent link's record for, days** after the link's expiry time, 30 by default.
The record of the link stays, so the audit can still say who opened it.

## Sharing limits

An administrator sets these in **Documentation** > **Settings**, on the
**Sending a credential** card:

| Setting | Default | Range |
| --- | --- | --- |
| **Let technicians send a credential as a one-time link** | On | |
| **A link lives at most, hours** | 168 | 1 to 8,760 |
| **Times a link can be opened, by default** | 1 | 1 to 100 |
| **Make the recipient prove who they are first** | Off | |
| **Keep a spent link's record for, days** | 30 | 0 to 3,650 |

A request for more than the limits is shortened to the limit, and the console
says so, rather than refused. **Times a link can be opened, by default** is
also the most opens a link can allow.

## Verify

After you create the link, the credential's **Links sent** card lists it as
**Live**. Open the link in a private browser window. If it allows one view,
reload it after viewing and confirm the page says **This link is no longer
available**.

## If something goes wrong

| Symptom | Cause | Fix |
| --- | --- | --- |
| **Send this credential** is unavailable. | You lack `vault:share`, or access to see the credential. | Ask an administrator for the permission or for access to the collection. |
| **A tray delivery needs a named person to send the confirmation code to.** | The credential does not name a person. | Deliver it as a link instead. |
| The recipient sees **This link is no longer available** straight away. | The link was already opened, expired, was withdrawn, or the passphrase was wrong. | Create a new link and send it again. |

## Next steps

- [Credentials vault](/documentation/credentials-vault/)
- [Audit logs](/depot/audit-log/)
