---
title: "Sådan deler du API-nøgler sikkert | LinkPilot-bloggen"
url: https://uselinkpilot.com/da/blog/how-to-share-api-keys-securely
description: "Indsæt aldrig en API-nøgle i chat eller e-mail. Send et engangslink, der krypteres i din browser og slettes efter én åbning, og roter nøgler, du har indsat."
lang: da
---

Sikkerhed (https://uselinkpilot.com/da/blog/category/security)

# Sådan deler du API-nøgler sikkert

Indsæt aldrig en API-nøgle i chat eller e-mail. Send et engangslink, der krypteres i din browser og slettes efter én åbning, og roter nøgler, du har indsat.

W. Miller (https://uselinkpilot.com/da/author/w-miller)26. maj 2026 · Opdateret 22. oktober 2026 · Om LinkPilot (https://uselinkpilot.com/da/about)

Indsæt aldrig en API-nøgle i en chat eller en e-mail. Send den som et hemmeligt engangslink (https://uselinkpilot.com/da/tools/free-secret-link-generator): nøglen krypteres i din browser, dekrypteringsnøglen bliver i den del af linket, der står efter #, og den gemte kopi destrueres, når linket er åbnet én gang. Roter derefter alle nøgler, der allerede er indsat i klartekst.

Resten af guiden går i detaljer: hvorfor de oplagte kanaler svigter, den præcise fremgangsmåde ved overdragelsen, hvad du gør, når en nøgle alligevel lækker, og hvornår et engangslink er det forkerte værktøj.

## Hvorfor er det usikkert at sende en API-nøgle i Slack eller via e-mail?

Fordi begge gemmer beskeden, så længe noget som helst beholder den, og undervejs kopierer den til alle enheder og alle eksporter.

- **Begge kan gennemsøges for altid.** En nøgle, der blev delt i 2023, kan blive kilden til din næste sikkerhedshændelse. Angribere, der kommer ind i en virksomheds chat eller postkasse, søger rutinemæssigt efter netop de tegnfølger, som API-nøgler ligner: `sk_live`, `AKIA`, `ghp_`, `Bearer`.
- **Begge synkroniserer overalt.** Telefoner, private bærbare og tablets er enheder, som dine sikkerhedskontroller ikke dækker, og som din politik for fjernsletning ikke kan nå.
- **Begge bliver eksporteret.** Compliancegennemgange, juridisk bevisindsamling og eksport af arbejdsområder laver alle kopier af historikken. Hver eksport er endnu et sted, nøglen findes.
- **Begge overlever, når folk forlader virksomheden.** Konsulentens opgave slutter, men DM-tråden med din Stripe-nøgle bliver liggende.

Lægger du en hemmelighed i et af værktøjerne, accepterer du, at den findes overalt, hvor beskeden ender, så længe noget beholder den. Ingen af systemerne er bygget til at glemme.

## Før du deler: gør nøglen mindre

Den bedste overdragelse er en, hvor nøglen næsten ikke betyder noget. Før du opretter noget, så giv nøglen så få rettigheder som muligt allerede ved kilden:

- **Afgræns den.** Stripes begrænsede nøgler (https://docs.stripe.com/keys), GitHubs finmaskede personlige adgangstokens (https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens) og AWS IAM-politikker, der er afgrænset til bestemte handlinger og ressourcer: de fleste seriøse udbydere lader dig lave en nøgle, der kun kan den ene ting, modtageren har brug for.
- **Vælg skrivebeskyttet**, medmindre modtageren reelt skal kunne skrive.
- **Sæt udløb hos udbyderen**, hvor platformen understøtter det (GitHubs finmaskede PAT'er, midlertidige AWS-loginoplysninger via STS (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)). Så har selv en lækket nøgle en holdbarhed, uanset hvad du gør senere i forløbet.
- **Navngiv den efter modtageren** (`vendor-x-readonly`), så du om et halvt år kan se med ét blik, om den skal tilbagekaldes, i stedet for at skulle grave i historikken som en arkæolog.

En afgrænset, skrivebeskyttet nøgle med udløb gør det værst tænkelige læk fra en sikkerhedshændelse til en irritation.

## Sådan foregår overdragelsen

1. **Opret nøglen i kildesystemet** (AWS, Stripe, dit eget API) med de færrest mulige rettigheder, som beskrevet ovenfor.
2. **Indsæt den i et hemmeligt engangslink** med Slet efter læsning slået til og det korteste udløb, der passer: 1 time er den korteste forudindstilling, derefter kommer 24 timer og 7 dage, og på Pro kan du vælge en dato og et klokkeslæt selv. Linket skal leve lige længe nok til selve overdragelsen og ikke længere.
3. **Tilføj en adgangssætning, og send den via en anden kanal**: linket via e-mail, adgangssætningen via sms eller en DM i Slack. I LinkPilot er adgangssætning, selvvalgt udløb og revisionsloggen Pro-funktioner til 29 $ om måneden. Lækker den ene kanal, har angriberen stadig kun halvdelen af puslespillet. (LinkPilot hasher adgangssætningen med SHA-256 i browseren, før den sendes. Selve adgangssætningen når aldrig serverens database eller logfiler, og der er en grænse på 5 forsøg pr. IP-adresse pr. minut.)
4. **Send linket.**
5. **Bekræft via en anden kanal, at modtageren har hentet nøglen**, og tjek revisionsloggen: én visning, på det forventede tidspunkt og fra det forventede sted. Det er din kvittering.

Bliver linket ikke åbnet, før det udløber, så tilbagekald det, og send et nyt. Forlæng det ikke, og genbrug det ikke.

## Eksempel: sådan overdrager du en begrænset Stripe-nøgle

```bash
# generate a restricted key with the minimum needed scopes
stripe api_keys create \
  --restricted \
  --display-name "vendor-x-readonly"

# pipe the resulting key into a LinkPilot secret
curl -X POST https://api.uselinkpilot.com/v1/secrets \
  -H "Authorization: Bearer $LP_KEY" \
  -d 'payload=sk_restricted_…' \
  -d 'expires_in=3600' \
  -d 'burn_after_read=true'
```

Det oplever modtageren: Når linket åbnes, vises en side med en Vis-knap, ikke nøglen. Forhåndsvisningsbots og e-mailscannere, der henter URL'en på forhånd, får kun metadata, fordi en visning kun registreres ved det bevidste klik på Vis og aldrig ved en `GET`. Når modtageren klikker på Vis (og indtaster adgangssætningen, hvis der er en), ser modtageren nøglen præcis én gang. Derefter overskrives det gemte indhold, og linket returnerer HTTP 410. Selv hvis e-mailen bliver videresendt rundt i hele virksomheden, kan kun den første, der åbnede linket, nogensinde have læst nøglen, og revisionsloggen viser dig, hvem det var.

## Hvilken kanal til hvilken overdragelse

| Situation | Anbefalet metode | Bemærkninger |
| --- | --- | --- |
| Kollega i samme lokale eller i et opkald | Engangslink med 1 times udløb (den korteste forudindstilling) | Adgangssætning er valgfri, da du kan bekræfte modtagelsen med det samme |
| Kollega, der arbejder et andet sted | Engangslink + adgangssætning via en anden kanal | 1 times udløb |
| Konsulent eller bureau | Afgrænset nøgle + engangslink + adgangssætning | Navngiv nøglen efter dem, og sæt tilbagekaldelsen i kalenderen til opgavens afslutning |
| Kunde, der skal have sin egen nøgle | Engangslink fra din app eller dit supportforløb | 24 timers udløb; bed kunden om at gemme nøglen med det samme |
| CI/CD-pipeline eller tjeneste | Platformens hemmelighedslager (Actions secrets, Vault, ASM) | Aldrig et link: maskiner laver ikke overdragelser |
| Hele teamet med løbende adgang | Boks i en adgangskodeadministrator | Det er opbevaring og adgangsstyring, ikke en overdragelse |

## Hvad skal du gøre, hvis en API-nøgle lækker?

Betragt den som kompromitteret, og roter den hos udbyderen. At slette beskeden hjælper ikke. Det gælder enhver nøgle, der har været i en chatbesked, en e-mail, et skærmbillede, et git-commit eller et offentligt opslag på en paste-tjeneste. I denne rækkefølge:

1. **Udsted den nye nøgle først**, hvis udbyderen tillader to aktive nøgler. Så undgår du nedetid for de legitime brugere af nøglen.
2. **Tilbagekald den lækkede nøgle hos udbyderen.** Det er det eneste trin, der faktisk stopper eksponeringen. At slette beskeden i Slack gør det ikke.
3. **Overdrag den nye nøgle på den rigtige måde**: engangslink, adgangssætning og kort udløb, som beskrevet ovenfor.
4. **Tjek udbyderens brugslog** for den lækkede nøgle i perioden mellem læk og tilbagekaldelse. Uventede kald betyder, at det nu er en sikkerhedshændelse og ikke bare en oprydning.
5. **Fjern årsagen til, at nøglen blev indsat** ved at lægge hemmeligheden i dine miljøvariabelværktøjer, der står i `.gitignore`, slå hemmelighedsscanning til hos din repo-vært eller rette den driftsvejledning, der fik nogen til at sende den i en DM.

Hele forløbet bør tage minutter. Er det så skræmmende at rotere en nøgle, at folk undgår det, er den skrøbelighed den egentlige sårbarhed. Ret den først.

## Det skal du undgå

- **At sende den samme hemmelighed igen.** Roter i stedet. Sender du den igen, forsvinder den revisionshistorik om ”præcis én eksponering”, som var grunden til at bruge et engangslink.
- **Lange udløbsperioder.** Vælg kort som standard. De fleste overdragelser er klaret på få minutter, og et vindue på 8 timer er bare et længere læk.
- **At springe adgangssætningen over.** Den koster næsten ingenting og beskytter mod, at URL'en lækker ved et uheld: videresendte e-mails, skærmdeling eller nogen, der kigger med på en delt skærm.
- **Skærmbilleder af nøgler.** De havner i kamerarullen, i fotosynkronisering i skyen og i billedsøgning. Et skærmbillede er lige så permanent som en besked i chatten, men sværere for _dig_ at søge i og let for OCR at læse.
- **At bruge linkværktøjet som opbevaring.** Linket er budet, ikke boksen. Modtageren bør gemme nøglen i en adgangskodeadministrator eller i sine miljøvariabelværktøjer, så snart den er modtaget.

## Når et engangslink er det forkerte værktøj

Ærligt talt har metoden sine grænser:

- **Loginoplysninger mellem maskiner** hører hjemme i en hemmelighedsadministrator eller i platformens eget lager og indsættes ved udrulning eller under kørsel. Et menneske, der klikker på et link, er ikke et udrulningstrin.
- **Fælles loginoplysninger, der skal bruges længe**, hører hjemme i en adgangskodeadministrator med reel adgangsstyring og tilbagekaldelse for hver enkelt person.
- **Hyppig rotation** (nøgler, der skifter hver time) bør automatiseres hele vejen. Mennesker og links bør slet ikke indgå i det forløb.
- **Hemmeligheder, som ingen tredjepart overhovedet må røre**: flyt overdragelsen væk fra nettet. _Opdatering, 29. september 2026: Oprindeligt stod der her, at LinkPilot ikke påstod at have E2EE, og at du i stedet skulle bruge et værktøj med end-to-end-kryptering. LinkPilot krypterer nu tekstindhold i browseren og gemmer derfor kun chiffertekst, og det samme gælder vedhæftede filer. Siden om sikkerhedsarkitektur (https://uselinkpilot.com/da/security-architecture) beskriver præcist, hvad der er beskyttet, og hvad der ikke er._

I det almindelige tilfælde, hvor ét menneske giver én hemmelighed til et andet menneske én gang, er engangslinket med adgangssætning og kort udløb den stærkeste enkle metode, der findes.

## Læs også

- Hvorfor URL'er lækker følsomme oplysninger: https://uselinkpilot.com/da/blog/why-urls-leak-sensitive-information
- Sikker deling af adgangskoder: 5 metoder sammenlignet: https://uselinkpilot.com/da/secure-password-sharing
- LinkPilots sikkerhedsarkitektur: https://uselinkpilot.com/da/security-architecture
- Sammenligning af API'er til at forkorte URL'er: https://uselinkpilot.com/da/blog/url-shortener-api-comparison
- Gratis generator til hemmelige links: https://uselinkpilot.com/da/tools/free-secret-link-generator

## Kilder

- Stripe Docs, API keys: limit access with restricted keys (https://docs.stripe.com/keys).
- GitHub Docs, Managing your personal access tokens (https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens).
- AWS IAM User Guide, Temporary security credentials in IAM (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html).

## Værktøjer til denne artikel

Generator til hemmelige engangslinks

Del en adgangskode eller en note via et link, der kun kan åbnes én gang.
https://uselinkpilot.com/da/tools/free-secret-link-generator

Selvdestruerende besked

Send en note, der forsvinder efter én læsning.
https://uselinkpilot.com/da/tools/burn-after-read-secret

Generator til links med udløb

Opret links, der holder op med at virke på et bestemt tidspunkt.
https://uselinkpilot.com/da/tools/temporary-link

## Ofte stillede spørgsmål

### Er det virkelig så slemt at sende en API-nøgle i Slack?

### Skal jeg ikke bare bruge en adgangskodeadministrator?

### Hvad hvis modtageren får brug for nøglen igen senere?

### Hvordan får jeg en API-nøgle ind i CI/CD?

### Kan LinkPilot læse den API-nøgle, jeg deler?

## LinkPilot sender et hemmeligt link, der er væk, når det er åbnet.

Krypteres i din browser, vises én gang og destrueres derefter. Kræver ingen konto.

Opret et hemmeligt link (https://uselinkpilot.com/da/tools/free-secret-link-generator)

## Læs videre

Sikkerhed

### Sådan virker hemmelige engangslinks

Et hemmeligt engangslink viser indholdet én gang: browseren krypterer det, serveren gemmer kun chifferteksten, og første visning sletter den gemte kopi.
https://uselinkpilot.com/da/blog/how-one-time-secret-links-work

Sikkerhed

### Links med udløb: hemmeligheden destrueres, ikke omdirigeres

Et hemmeligt link med udløb destruerer hemmeligheden ved fristen; et dødt kortlink stopper kun omdirigeringen. Om valg af periode og særtilfældene.
https://uselinkpilot.com/da/blog/expiring-links-security

Sikkerhed

### Kryptering på klientsiden ved deling af hemmeligheder: hvad den beskytter

Kryptering på klientsiden beskytter kun en gemt hemmelighed mod operatøren og datalæk. Ikke mod skadeligt JavaScript, udvidelser eller et lækket link.
https://uselinkpilot.com/da/blog/client-side-encryption-for-secret-sharing

## Structured data

```json
[
  {
    "@context": "https://schema.org",
    "@type": "BreadcrumbList",
    "itemListElement": [
      {
        "@type": "ListItem",
        "position": 1,
        "name": "Forside",
        "item": "https://uselinkpilot.com/da"
      },
      {
        "@type": "ListItem",
        "position": 2,
        "name": "Blog",
        "item": "https://uselinkpilot.com/da/blog"
      },
      {
        "@type": "ListItem",
        "position": 3,
        "name": "Sådan deler du API-nøgler sikkert",
        "item": "https://uselinkpilot.com/da/blog/how-to-share-api-keys-securely"
      }
    ]
  },
  {
    "@context": "https://schema.org",
    "@type": "BlogPosting",
    "@id": "https://uselinkpilot.com/da/blog/how-to-share-api-keys-securely#article",
    "headline": "Sådan deler du API-nøgler sikkert",
    "description": "Indsæt aldrig en API-nøgle i chat eller e-mail. Send et engangslink, der krypteres i din browser og slettes efter én åbning, og roter nøgler, du har indsat.",
    "inLanguage": "da",
    "datePublished": "2026-05-26",
    "dateModified": "2026-10-22",
    "image": "https://uselinkpilot.com/logo-512.png",
    "author": {
      "@type": "Person",
      "@id": "https://uselinkpilot.com/author/w-miller#person",
      "name": "W. Miller",
      "url": "https://uselinkpilot.com/da/author/w-miller",
      "worksFor": {
        "@type": "Organization",
        "name": "LinkPilot",
        "url": "https://uselinkpilot.com"
      }
    },
    "publisher": {
      "@type": "Organization",
      "name": "LinkPilot",
      "url": "https://uselinkpilot.com",
      "logo": {
        "@type": "ImageObject",
        "url": "https://uselinkpilot.com/logo-512.png",
        "width": 512,
        "height": 512
      }
    },
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://uselinkpilot.com/da/blog/how-to-share-api-keys-securely"
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "FAQPage",
    "mainEntity": [
      {
        "@type": "Question",
        "name": "Er det virkelig så slemt at sende en API-nøgle i Slack?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Problemet er ikke selve afsendelsen, men at beskeden bliver liggende. Chathistorik kan gennemsøges, synkroniseres til telefoner, eksporteres ved compliancegennemgange og overlever, når folk forlader virksomheden. Et engangslink fjerner hemmeligheden fra kanalen, når den er læst én gang."
        }
      },
      {
        "@type": "Question",
        "name": "Skal jeg ikke bare bruge en adgangskodeadministrator?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Jo, til loginoplysninger, der skal bruges længe. Brug administratoren som det sted, nøglen opbevares, og et engangslink kun til overdragelsen. Mange teams bruger begge dele: linket flytter nøglen, boksen opbevarer den."
        }
      },
      {
        "@type": "Question",
        "name": "Hvad hvis modtageren får brug for nøglen igen senere?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Send ikke den oprindelige igen. Udsted en ny nøgle, eller bed modtageren om at gemme den i en adgangskodeadministrator, så snart den er modtaget. Deler du den igen, undergraver du rotationen og gør revisionssporet uklart."
        }
      },
      {
        "@type": "Question",
        "name": "Hvordan får jeg en API-nøgle ind i CI/CD?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Ikke med et link. Maskiner skal læse fra platformens hemmelighedslager: GitHub Actions secrets, GitLab CI-variabler, AWS Secrets Manager eller Vault. Engangslinks er kun til overdragelser fra menneske til menneske."
        }
      },
      {
        "@type": "Question",
        "name": "Kan LinkPilot læse den API-nøgle, jeg deler?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Nej. Siden den 29. september 2026 bliver indholdet krypteret i din browser, og nøglen ligger i den del af URL'en, der står efter #, som browsere aldrig sender. En driftsansvarlig med fuld adgang til databasen ser derfor kun chiffertekst. Slettet indhold overskrives og kan ikke gendannes. Bagsiden er, at alle, der har hele linket, har nøglen, så kort udløb og sletning efter læsning er stadig vigtige. Vedhæftede filer krypteres på samme måde. Siden om sikkerhedsarkitektur beskriver hele modellen, også de metadata, vi stadig kan se: en fils navn, størrelse og type."
        }
      }
    ],
    "inLanguage": "da"
  },
  {
    "@context": "https://schema.org",
    "@type": "SoftwareApplication",
    "@id": "https://uselinkpilot.com/#software",
    "name": "LinkPilot",
    "applicationCategory": "BusinessApplication",
    "operatingSystem": "Web",
    "description": "LinkPilot is a secure link management platform for creating branded short links, tracking engagement, and sharing secrets with expiring, protected, self-destructing links.",
    "url": "https://uselinkpilot.com",
    "offers": [
      {
        "@type": "Offer",
        "name": "Free",
        "price": "0",
        "priceCurrency": "USD",
        "url": "https://uselinkpilot.com/pricing"
      },
      {
        "@type": "Offer",
        "name": "Pro",
        "price": "29",
        "priceCurrency": "USD",
        "priceSpecification": {
          "@type": "UnitPriceSpecification",
          "price": "29",
          "priceCurrency": "USD",
          "billingDuration": "P1M"
        },
        "url": "https://uselinkpilot.com/pricing"
      },
      {
        "@type": "Offer",
        "name": "Agency",
        "price": "299",
        "priceCurrency": "USD",
        "priceSpecification": {
          "@type": "UnitPriceSpecification",
          "price": "299",
          "priceCurrency": "USD",
          "billingDuration": "P1M"
        },
        "url": "https://uselinkpilot.com/pricing"
      },
      {
        "@type": "Offer",
        "name": "Agency Plus",
        "price": "799",
        "priceCurrency": "USD",
        "priceSpecification": {
          "@type": "UnitPriceSpecification",
          "price": "799",
          "priceCurrency": "USD",
          "billingDuration": "P1M"
        },
        "url": "https://uselinkpilot.com/pricing"
      },
      {
        "@type": "Offer",
        "name": "Pro (yearly)",
        "price": "288",
        "priceCurrency": "USD",
        "priceSpecification": {
          "@type": "UnitPriceSpecification",
          "price": "288",
          "priceCurrency": "USD",
          "billingDuration": "P1Y"
        },
        "url": "https://uselinkpilot.com/pricing"
      },
      {
        "@type": "Offer",
        "name": "Agency (yearly)",
        "price": "2988",
        "priceCurrency": "USD",
        "priceSpecification": {
          "@type": "UnitPriceSpecification",
          "price": "2988",
          "priceCurrency": "USD",
          "billingDuration": "P1Y"
        },
        "url": "https://uselinkpilot.com/pricing"
      },
      {
        "@type": "Offer",
        "name": "Agency Plus (yearly)",
        "price": "7980",
        "priceCurrency": "USD",
        "priceSpecification": {
          "@type": "UnitPriceSpecification",
          "price": "7980",
          "priceCurrency": "USD",
          "billingDuration": "P1Y"
        },
        "url": "https://uselinkpilot.com/pricing"
      },
      {
        "@type": "Offer",
        "name": "Enterprise",
        "priceSpecification": {
          "@type": "PriceSpecification",
          "priceCurrency": "USD"
        },
        "url": "https://uselinkpilot.com/pricing"
      }
    ]
  },
  {
    "@context": "https://schema.org",
    "@type": "Organization",
    "@id": "https://uselinkpilot.com/#organization",
    "name": "LinkPilot",
    "alternateName": "LinkPilot by TetraCore",
    "url": "https://uselinkpilot.com",
    "contactPoint": {
      "@type": "ContactPoint",
      "contactType": "customer support",
      "email": "support@uselinkpilot.com",
      "url": "https://uselinkpilot.com/support"
    },
    "parentOrganization": {
      "@type": "Organization",
      "@id": "https://tetracorehq.com/#organization",
      "name": "TetraCore",
      "url": "https://tetracorehq.com/"
    },
    "logo": {
      "@type": "ImageObject",
      "url": "https://uselinkpilot.com/logo-512.png",
      "width": 512,
      "height": 512
    },
    "description": "LinkPilot is a secure link management platform for creating branded short links, tracking engagement, and sharing secrets with expiring, protected, self-destructing links.",
    "sameAs": [
      "https://x.com/uselinkpilot",
      "https://www.linkedin.com/company/uselinkpilot",
      "https://facebook.com/uselinkpilot",
      "https://github.com/TetraCoreHQ/linkpilot-cli",
      "https://github.com/TetraCoreHQ/linkpilot-mcp",
      "https://www.npmjs.com/package/linkpilot",
      "https://www.npmjs.com/package/@uselinkpilot/sdk",
      "https://www.npmjs.com/package/@uselinkpilot/mcp",
      "https://chromewebstore.google.com/detail/linkpilot-short-links-and/mnmppadihpcncicldpkmgknhnjkondad",
      "https://addons.mozilla.org/en-US/firefox/addon/uselinkpilot/"
    ]
  },
  {
    "@context": "https://schema.org",
    "@type": "WebSite",
    "name": "LinkPilot",
    "url": "https://uselinkpilot.com",
    "potentialAction": {
      "@type": "SearchAction",
      "target": "https://uselinkpilot.com/blog?q={search_term_string}",
      "query-input": "required name=search_term_string"
    }
  }
]
```