Temporary Machines
Create time-bounded machine identities with optional connection guardrails, controlled secret access, and automatic expiration.
Temporary machines are time-bounded identities workloads that should end on a known date. You choose the lifetime and optional connection guardrails before issuing the machine, then approve it and grant only the projects and secrets it needs.
A temporary machine stops authenticating when its lifetime ends. SikkerKey marks it expired and retains its record for 30 days before automatic cleanup.
#How temporary machines work
Stage | What happens |
|---|---|
Define | Choose a name, lifetime, optional description, and optional connection guardrails. |
Bootstrap | Run a single-use command on the target host. Its private key is generated and kept locally. |
Approve | Review the pending registration in the dashboard and approve it. |
Grant access | Add the machine to projects and select the secrets it may read. |
Use | Each signed request must pass the machine’s guardrails and all normal vault, project, secret, and policy checks. |
Expire | Access stops at the configured expiration time, followed by a 30-day retention period. |
The machine lifetime begins when the bootstrap command is successfully redeemed, so the full configured duration is available from registration time.
#Create a temporary machine
Open Machines in the dashboard.
In All Machines, select the plus button.
Select Temp Machine.
Enter a machine name.
Add an optional description explaining the engagement, ticket, person, or workload.
Set the lifetime in months, days, and hours.
Select Continue to configure guardrails.
A temporary machine lifetime must be at least 1 hour and no more than 12 months. The creation screen shows the resulting duration and expected expiration date before you continue.
#Configure guardrails
Guardrails restrict where and when the temporary machine may authenticate. Each guardrail is optional. When several are enabled, the request must satisfy all of them.
Time Window
Use a time window to permit requests only during selected hours and days.
Choose a start and end time.
Select the timezone used to interpret those times.
Choose one or more permitted days of the week.
For a window that crosses midnight, set a start later than the end and include every day on which requests should be accepted.
IP Allowlist
Use the temporary-machine IP Allowlist to restrict requests to specific source addresses or network ranges.
Enter one IPv4 or IPv6 address or CIDR range per line.
An individual address permits one source host.
A CIDR range permits every source address within that network.
For hosts behind NAT, a gateway, or a proxy, enter the public egress address that SikkerKey receives.
Geo
Use Geo to permit requests only when the source IP resolves to one of the selected countries. Search by country name or two-letter country code, then select every permitted country.
Geo access is denied when the source country cannot be resolved. Include an IP allowlist when you need a deterministic rule for fixed infrastructure.
How guardrails combine
Temporary-machine guardrails add to the rest of the access path. A request must also satisfy the vault IP Allowlist, project membership, the explicit secret grant, and any access policy attached to the secret.
Guardrails are attached when the bootstrap command is issued. To use a different guardrail configuration, create and verify a replacement temporary machine, then revoke the previous identity.
#Generate and run the bootstrap command
After configuring guardrails, select Generate machine.
Choose Linux, macOS, or Windows.
Copy the generated command before closing the wizard.
Run the command on the host that will use the temporary identity.
Wait for the command to report that registration succeeded.
Return to Machines and locate the new pending machine.
The bootstrap command is single-use and remains valid for 7 days. The wizard shows the exact token expiration time, and the copied command is cleared from the clipboard after 30 seconds.
Linux and macOS require
curland OpenSSL.Windows requires OpenSSL in
PATHand uses the PowerShell command shown by the wizard.The configured machine name is applied during registration.
If the command is lost, expires, or has already been used, create a new temporary machine command. Treat an unused command as a credential until it is redeemed or expires.
Identity files
Bootstrap creates a private key and public key on the target host. Only the public key is registered with SikkerKey; the private key remains on the host and signs future requests.
Linux and macOS store the identity under
~/.sikkerkey/vaults/{vaultId}/.Windows stores it under
%USERPROFILE%\.sikkerkey\vaults\{vaultId}\.
Bootstrapping another identity for the same vault replaces the identity files on that host. Approve and verify the new registration, then revoke the previous machine record if it is no longer used.
#Approve the temporary machine
Registration creates a pending machine. Pending machines cannot read secrets, even when the bootstrap command was issued by an authorized vault member.
Open Machines.
Find the pending machine by its configured name, machine ID, or registration IP.
Open the row menu.
Select Approve to activate the identity, or Deny to remove the registration.
The lifetime continues to count down while the machine is pending, so approve and configure it promptly.
#Add project and secret access
Approval activates the identity but does not grant any secret access.
Select the project the temporary machine needs.
Open Machines for that project.
Select the plus button, choose the approved temporary machine, and save.
Open the machine’s row menu in the project and select Configure.
Select the secrets the machine may read.
Choose Save.
Project membership and secret grants can be updated throughout the machine’s active lifetime. Removing the machine from a project immediately removes all of its grants in that project. Clearing an individual secret grant removes only that secret’s access.
#Recognize temporary machines in the dashboard
Temporary machines appear in All Machines with an hourglass icon. Hover over the icon to see when the machine expires.
Column | Meaning |
|---|---|
Name | The machine’s editable display name and temporary-machine icon. |
ID | The unique machine ID. Hover over the shortened value to copy the complete ID. |
IP | The source IP recorded when the machine registered. |
Secrets | The number of secrets currently granted to the machine. |
Last Seen | The most recent successful authenticated request. |
Added | The time the machine registered. |
Status | Pending, Approved, Disabled, or Expired. |
Search by name and filter by status, project, last-seen period, or registration date. The Default filter shows pending and active machines. Select All or Disabled to review identities outside the default working set.
#Extend the lifetime
Extend an active temporary machine when approved work needs more time.
Open Machines.
Open the temporary machine’s row menu and select Extend.
Choose the number of months, days, and hours to add.
Add an optional reason, such as a ticket reference or explanation.
Review the current and new expiration times.
Select Extend Machine.
An extension moves the expiration forward. The resulting expiration may be no more than 12 months from the time you extend it. Extend the machine before its current lifetime ends.
The extension screen shows the available headroom under the rolling 12-month limit.
#Review and revert extensions
Open the temporary machine’s row menu and select History.
Open Extensions to review the original and new expiration times, extension reason, and whether an extension was reverted.
Select Revert on the most recent active extension when you want to restore its previous expiration.
Only the most recent extension that still applies can be reverted. Reversion is available only while the previous expiration remains in the future.
The Names tab records renames, and the Audit tab shows the complete machine activity timeline with action, severity, time, and text filters.
#Disable, enable, or revoke
Disable
Disable immediately blocks authenticated requests while preserving the machine identity, project memberships, grants, guardrails, and expiration. The lifetime continues to count down while disabled.
Enable
Enable resumes access for a disabled temporary machine when its expiration is still in the future. The existing grants and guardrails continue to apply.
Revoke
Revoke immediately removes the machine registration, all project memberships, and every secret grant. The identity stored on the host can no longer authenticate.
Use revoke when the engagement finishes early, the host is lost, or its private key may be exposed.
#Expiration and cleanup
At the configured expiration time, SikkerKey rejects further authentication and marks the temporary machine expired. Expired machines remain available for review during a 30-day retention period.
Time | Result |
|---|---|
At expiration | The machine is disabled and can no longer authenticate. |
During the next 30 days | The machine record remains available for status and history review. |
After 30 days | Automatic cleanup removes the machine record, guardrails, extension history, project memberships, and secret grants. |
An expired temporary machine cannot be resumed from the dashboard. Create and configure a replacement identity when access is needed again.
#Control access to temporary machines
Permission | Access provided |
|---|---|
View machines | View machine status, expiration, name history, extension history, and machine audit activity. |
Manage machines | Issue temporary-machine commands and approve, deny, rename, extend, disable, enable, or revoke machines. |
View project machines | View temporary machines attached to a project and their granted-secret counts. |
Manage project machines | Add or remove temporary machines and configure their secret grants in that project. |
Vault owners receive full machine access. Organization members receive these permissions through their vault role and project access.
#Review temporary-machine activity
SikkerKey records the temporary-machine lifecycle in the Audit Log, including:
temporary-machine command creation and registration;
approval, denial, rename, disable, enable, and revocation;
lifetime extensions and extension reversions;
project additions, removals, and secret grant changes;
successful, denied, and policy-blocked secret reads;
authentication and guardrail failures; and
automatic expiration and cleanup after retention.
Open History → Audit from the machine row to focus the Audit Log on one temporary machine.
#Troubleshoot temporary-machine access
Symptom | What to check |
|---|---|
Bootstrap command rejected | Confirm it has not been used and is still within its 7-day validity period. Generate a new command when needed. |
Pending status | Approve the machine before its lifetime ends. |
Machine not listed in a project | Add the approved machine from the project’s Machines page. |
Secret not listed | Configure the machine in that project and grant the secret. |
Guardrail failure | Check the request’s source address, resolved country, current local time, timezone, and permitted day. Review History → Audit for the recorded reason. |
Access denied | Confirm project membership, the explicit grant, project availability, the vault IP Allowlist, and the secret’s access policy. |
Disabled status | Use All or Disabled to find the machine, then enable it if its expiration is still in the future. |
Expired status | Create a replacement temporary machine, approve it, and configure the required project and secret access. |