【微服务部署】05-安全:强制HTTPS

文章目录

    • [安全 : 强制HTTPS的两种方式](#安全 : 强制HTTPS的两种方式)
      • [1. Ingress配置重定向](#1. Ingress配置重定向)
      • [2. 应用程序配置](#2. 应用程序配置)
      • [3. Ingress配置](#3. Ingress配置)
      • [4. 应用程序配置代码](#4. 应用程序配置代码)
      • 总结

安全 : 强制HTTPS的两种方式

互联网发展中,安全是非常重要的,由其是现在HTTPS非常普及的情况下,应用程序在公网上一般都会被强制要求HTTPS。

  • Ingress强制HTTPS
  • 应用强制HTTPS

Ingress强制HTTPS,在Ingress中设置即可.
应用强制HTTPS,当应用程序识别到用户使用的是HTTP协议访问时,强制跳转至HTTPS。这种场景一般推荐是应用程序直接向外提供服务,不经过Ingress时使用

1. Ingress配置重定向

2. 应用程序配置

  • 配置https_port
  • 或配置HttpsRedirectionOptions
  • UseHttpsRedirection中间件

3. Ingress配置

复制代码
// ingress配置
ingress:
  enabled: true
  annotations: 
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
    nginx.ingress.kubernetes.io/rewrite-target: "/" // ingress到网关的路由,/表示默认

ssl-redirect表示当Ingress发现用户请求的是HTTP端口时,就重定向

force-ssl-redirect表示无论Ingress是否设置了有效证书,都会进行重定向

4. 应用程序配置代码

复制代码
// startup
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
	app.UseHttpsRedirection();// 设置重定向
	...
}

总结

应用程序在Kubernetes中强制HTTPS的做法就是设置Ingress注解,如果应用程序要设置强制HTTPS使用UseHttpsRedirection中间件

相关推荐
IT_陈寒几秒前
5个Python 3.12新特性让你的代码效率提升50%,第3个太实用了!
前端·人工智能·后端
Victor35613 分钟前
Redis(109)Redis的Pipeline如何使用?
后端
NPE~13 分钟前
[手写系列]Go手写db — — 第七版(实现Disk存储引擎、Docker化支持)
数据库·后端·docker·golang·教程·手写数据库
Victor35613 分钟前
Redis(108)Redis的事务机制如何实现?
后端
JaguarJack17 分钟前
PHP 开发中 你可能不知道的非常好用 PhpStorm 插件
后端·php
9ilk17 分钟前
【基于one-loop-per-thread的高并发服务器】--- 前置技术
运维·服务器·c++·笔记·后端·中间件
Felix_XXXXL1 小时前
IDEA + Spring Boot 的三种热加载方案
java·后端
程序员爱钓鱼1 小时前
Python编程实战:面向对象与进阶语法——上下文管理器(with语句)
后端·python·ipython
我命由我123451 小时前
IDEA - IDEA 快速回到页面首尾、页面快速滑动、快速定位到指定行
java·运维·ide·后端·java-ee·intellij-idea·intellij idea