Urgent.News

What's breaking now, across thousands of outlets.

Tech

How Do You Secure API Keys in an AWS Application?

A developer finishes a weekend project, pushes it to a public repository, and goes to bed. Somewhere in a configuration file is an API key for a paid third-party service. By morning, someone has found it, and the usage dashboard looks nothing like it did the night before. Nobody had to "hack" anything. The key was sitting in plain text, and anyone who found it could use it. Depending on what that…

An API key is a string used by applications to request services, allowing the service to track usage and determine permissions. API keys function primarily for identification, but some also grant permissions. The risk associated with an API key depends on its authorization level, not just its existence. API keys differ from other secrets like AWS access keys, IAM credentials, database passwords, and tokens, each with unique lifecycles and best practices.

Common mistakes in exposing API keys include hardcoding them in source code, committing them to public repositories, embedding them in frontend JavaScript, committing configuration files with secrets, sharing them in chats or documentation, printing them in logs, reusing keys across environments, granting excessive permissions, and leaving unused credentials active.

Frontend code should not contain secret API keys as the browser makes the code accessible to the user. A better approach is to separate the application into a frontend and a backend. The frontend communicates with the backend, which then retrieves the secret from a secure store, calls the external service, and returns only the result. This ensures the secret never travels to the user's device.

AWS Secrets Manager is a service designed to store and manage sensitive values like API keys, database credentials, and tokens. Instead of storing secrets in code or configuration, applications retrieve them from Secrets Manager when needed. This approach reduces the risk of exposing sensitive information.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Touch grass

Open touch-grass-murex.vercel.app. On the same Wi-Fi, node server.mjs --lan lets a phone open the card at the door. I used it on October 13 for a 25-minute garden card in Phoenix.

  • Touch Grass provides a brief for gardening tasks on a phone
  • Created garden card on October 13 with planting suggestions
  • Operates independently of network, no API reliance

The MCP security tools all scan. None of them stop the call.

I spent a morning looking at MCP security tooling. Cisco has a scanner, there are three or four audit CLIs, all of them read your tool descriptions and report sketchy ones.

  • Cisco MCP tools scan but don't stop malicious calls
  • mcp-bouncer wraps MCP server as JSON-RPC proxy
  • mcp-bouncer filters responses, enforces restrictions

Intune SCEP Certificate Profile Failed: A Read-First Assignment and NDES Triage

Wi-Fi or VPN stops working on a batch of laptops, and the cause turns out to be the SCEP certificate profile: it shows Pending for days, or Error with 0x87D1FDE8 .

  • SCEP certificate profile may be Pending for days or return Error 0x87D1FDE8
  • Six handoffs between Intune admin center and device certificate store
  • Check DeviceManagement-Enterprise-Diagnostics-Provider Admin log for clues

More from Wednesday 14 October →