dotnet-wpf-secure-config

Automates DPAPI-encrypted configuration management for .NET WPF applications with JSON persistence.

2|Updated Feb 12, 2026
One-click install
npx skills add https://github.com/RyoMurakami1983/skills_repository --skill dotnet-wpf-secure-config
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dotnet-wpf-secure-config
Source: https://github.com/RyoMurakami1983/skills_repository/tree/main/dotnet/dotnet-wpf-secure-config
Command: npx skills add https://github.com/RyoMurakami1983/skills_repository --skill dotnet-wpf-secure-config

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires System.Security.Cryptography.ProtectedData, Microsoft.Extensions.DependencyInjection, and includes references (resource) components.

What problem does it solve?

This Skill provides a robust solution for securely managing sensitive configuration data, such as API keys and passwords, within WPF applications by leveraging Windows DPAPI encryption.

Core Features & Use Cases

  • DPAPI Encryption: Encrypts and decrypts sensitive credentials using Windows Data Protection API.
  • Secure Storage: Persists encrypted configuration to a JSON file in %LOCALAPPDATA%.
  • Extensible Configuration Model: Allows for easy addition of new configuration settings for various integrations.
  • Use Case: Securely store API keys for third-party services or database connection strings in your WPF application, ensuring they are protected from unauthorized access.

Quick Start

Implement DPAPI-encrypted configuration management for your WPF application.

Frequently Asked Questions about dotnet-wpf-secure-config

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I securely store API keys and passwords in a WPF application?

Securely storing API keys and passwords in a WPF application involves applying Windows DPAPI encryption. This approach encrypts sensitive credentials and persists them as a JSON file within the user's %LOCALAPPDATA% directory, ensuring protection from unauthorized access.

What is DPAPI encryption and how does it work for configuration management?

DPAPI encryption uses the Windows Data Protection API to encrypt and decrypt sensitive configuration data. It ties cryptographic keys to the user or machine, allowing your WPF application to securely manage credentials without hardcoding master encryption keys into source code.

How do I add DPAPI-encrypted configuration management to my .NET WPF project?

Adding DPAPI-encrypted configuration management to a .NET WPF project involves utilizing the System.Security.Cryptography.ProtectedData dependency. You automate secure credential storage, JSON persistence, and DI registration to handle application secrets effectively.

Can I use Microsoft.Extensions.DependencyInjection with WPF secure configuration?

Yes, you can use Microsoft.Extensions.DependencyInjection with WPF secure configuration. The implementation includes automated DI registration for the configuration management system, allowing you to inject the secure configuration model directly into your application services.

Does this DPAPI configuration approach support adding custom settings for third-party integrations?

Yes, this DPAPI configuration approach supports custom settings through an extensible AppConfigModel. You can easily add new configuration settings for various third-party integrations, ensuring API keys and connection strings remain securely encrypted on disk.