Steeltoe

repository·main·Indexed 22 days ago

https://github.com/steeltoeoss/steeltoe

An open-source set of building blocks for .NET applications designed for seamless integration with Spring Cloud, Spring Boot, Cloud Foundry, and Kubernetes environments. Key capabilities include external configuration via Spring Cloud Config Server, service discovery with Netflix Eureka and HashiCorp Consul, Actuator-compatible management endpoints, and database connectivity for SQL Server, Cosmos DB, MongoDB, and others. It also provides security features like SSO and JWT, and specialized .NET configuration providers for decryption and placeholder resolution.

Tokens
5.8K
Snippets
17
Records
42
Agent score
77%

What's inside Steeltoe

  1. Overview of Steeltoe features

    main

    Steeltoe provides building blocks for .NET applications to integrate with Spring, Spring Boot, Cloud Foundry, and Kubernetes environments. It offers first-party support for Tanzu.

    Key capabilities include:

    • External Configuration: Integration with Spring Cloud Config Server (supports optional encryption).
    • Service Discovery: Support for Netflix Eureka and HashiCorp Consul.
    • Management Endpoints: Actuator-compatible endpoints for system info (versions, config, routes, HTTP traffic), heap/thread dumps, health checks, Prometheus metrics, and runtime log level changes.
    • Database Connectivity: Support for SQL Server, Azure SQL, Cosmos DB, MongoDB, Redis, RabbitMQ, PostgreSQL, and MySQL, including Entity Framework Core support.
    • Security: Single sign-on (SSO), JWT, and Certificate authentication with Cloud Foundry.
  2. Overview of Steeltoe Security

    main
    Steeltoe Security provides Authentication and DataProtection libraries designed to simplify interactions with security services on Tanzu platforms. It is intended to help .NET developers integrate security features into their cloud-native applications more easily.
  3. Use Steeltoe for .NET Service Discovery & Registration

    main

    Steeltoe provides packages for interacting with service registries to enable service discovery and registration in .NET applications. This allows services to find and communicate with each other dynamically within a distributed system.

    For detailed implementation guides and deep dives into specific registry integrations, refer to the official Steeltoe documentation.

  4. Use Steeltoe Logging Extensions to change log levels at run-time

    main

    Steeltoe Logging Extensions allow you to change the minimum log levels for a running .NET application at run-time without requiring an application restart. This feature works in conjunction with Steeltoe Management.

    Supported logging providers:

  5. Use the Configuration Random Value Generator .NET Configuration Provider

    main

    The Configuration Random Value Generator is a .NET Configuration Provider designed to inject random values into your application's configuration. This is useful for scenarios requiring dynamic or randomized configuration settings at runtime.

    For detailed implementation guides and advanced usage patterns, refer to the official Steeltoe documentation.

  6. Use Steeltoe .NET Configuration Providers

    main

    Steeltoe provides custom configuration providers for Microsoft's application configuration system. These providers allow your .NET application to consume configuration from distributed and cloud-native sources.

    Key capabilities include:

    • Spring Cloud Config Integration: Interact with a Spring Cloud Config Server to fetch centralized configuration.
    • Cloud Foundry Support: Automatically read environment variables from a Cloud Foundry environment.
    • Property Placeholder Replacement: Resolve placeholders within your configuration strings.
    • Decryption: Automatically decrypt encrypted configuration values.
    • Random Values: Provide random values for configuration settings.
  7. Use Spring Cloud Config .NET Configuration Provider

    main

    The Spring Cloud Config .NET Configuration Provider allows a .NET application to act as a client to a Spring Cloud Config Server. This enables the Config Server to serve as a centralized source of configuration data for your .NET application, following Cloud Native patterns.

    For detailed implementation guides and advanced usage, refer to the official Steeltoe documentation.