五个步骤轻松弄懂 JSON Web Token(JWT)

原文地址:https://medium.com/vandium-software/5-easy-steps-to-understanding-json-web-tokens-jwt-1164c0adfcec

本文将帮你理解 JSON Web Token(JWT) 的基本原理以及为什么要使用它。JWT 是确保应用的安全性和可靠性的重要一环。JWT 允许以一种安全的方式传达信息,比如用户数据。

为了理解 JWT 是如何工作的,我们先了解它的定义。

JSON Web Token 是由 RFC7519 定义的,是一个在双方之间安全的传达一组信息的 JSON 对象。由 header、payload 和 signature 三部分组成。

简单来说,JWT 只是一个如下格式的字符串:

header.payload.signature
[阅读全文]
JWT 

用 Gradle 处理 Android 签名配置

公司 Android 项目终于由 Eclipse 迁移到 Android Studio 上了,需要将之前在 Jenkins 上的构建任务修改一下支持 gradle 构建。 出于信息安全需要,开发人员不掌握生产环境使用的签名证书,但是 Jenkins 构建时需要自动的使用生产签名证书进行打包签名。

[阅读全文]

使用 SaltStack 在 Windows 服务器上发布 Web 应用 - Part 1

由于公司业务发生变化,之前单纯的使用 SVN 仓库钩子发布、更新 IIS 站点无法满足新的需求。对比 Ansible、Puppet、SaltStack 之后选择了 SaltStack 作为运维工具。

选择 SaltStack 的原因如下:

  • Puppet 使用 Ruby,而 Ansible 和 SaltStack 使用 Python。人生苦短,我选 Python, Pass。
  • Ansible 是 agent-less 方案,通过 WinRM(Windows Remote Management) 来支持 Windows 管理。恩,稍微看了下 WinRM 的认证方案,太麻烦,Pass。

由于篇幅较长,所以分为两部分,第一部分是完成部署 SaltStack,实现使用命令行来发布更新。第二部分使用 Jenkinssalt-api,实现自动持续集成。

[阅读全文]

在 CentOS 上使用 Docker 部署个人博客和 Git 仓库

从开始自己搭建博客已经过去 3 年了,最开始是在 FreeBSD 上运行的 WordPress,由于配置低,经常因为数据库挂掉而无法访问。几经折腾,先是迁移到 Ghost,然后是 HEXO。 虽然用过不少笨方法解决问题,好在也获取了不少经验与知识。

随着 Docker 的流行,感觉不得不放弃 FreeBSD 了。虽然早就迁移到 CentOS,并用 Docker 完成了部署,这里补充一下记录,算是知识的整理与回顾。

[阅读全文]
HEXO  Docker  Linux 

加盐密码哈希:如何正确使用

本文转载自 : http://blog.coding4love.net/archives/127 由伯乐在线 - 蒋生武 翻译

译文原文地址:https://crackstation.net/hashing-security.htm

如果你是Web开发者,你很可能需要开发一个用户账户系统。这个系统最重要的方面,就是怎样保护用户的密码。存放帐号的数据库经常成为入侵的目标,所以你必须做点什么来保护密码,以防网站被攻破时发生危险。最好的办法就是对密码进行加盐哈希,这篇文章将介绍它是如何做到这点。

在对密码进行哈希加密的问题上,人们有许多争论和误解,这大概是由于网络上广泛的误传吧。密码哈希是一件非常简单的事情,但是依然有很多人理解错误了。本文阐述的并不是进行密码哈希唯一正确的方法,但是会告诉你为什么这样是正确的。

[阅读全文]

在 Nginx 与 IIS 上初试 Let’s Encrypt 证书部署

参考资料

SSL/TLS协议运行机制的概述 HTTPS工作原理 Let’s Encrypt 给网站加 HTTPS 完全指南 使用 LetsEncrypt.sh + Nginx 实现SSL证书自动签发/续签

工作原理

Let’s Encrypt 颁发的证书是 DV 证书(域名验证型 DV SSL证书/Domain Validation SSL Certificate),简单来说就是 Let’s Encrypt 将以前的人工参与的认证工作实现了自动化。

在官方文档中有提到域名验证的方式有两种方式:

  • Provisioning a DNS record under example.com

通过 example.com 的 DNS 记录来认证,使用这种方式做到自动化需要 DNS 解析平台提供相应的 API 接口。

访问域名网站的一个指定 URI 下的 http 资源来做验证,关键是在如何让这个指定的 URI 可以正常访问。

具体工作原理请查阅官方文档

注:Let’s Encrypt 的证书有效期为 90 天。不同类型的证书在功能上是相同的,只是 CA 机构的背书信任”价值“不同。

[阅读全文]
Nginx  HTTPS  IIS 

ANT 实践总结

项目中使用了 ANT 脚本来实现持续集成,使用过程中遇到了一些问题,这里做一下记录。

[阅读全文]
ANT