1
0

项目:重构

This commit is contained in:
7Wate 2024-10-13 20:54:08 +08:00
parent 3f63f55d14
commit 5d2f6b6d05
Signed by untrusted user who does not match committer: zhouzhongping
GPG Key ID: 6666822800008000
252 changed files with 7369 additions and 712 deletions

View File

@ -6,5 +6,6 @@
"obsidian-minimal-settings",
"obsidian-weread-plugin",
"obsidian-linter",
"obsidian-excalidraw-plugin"
"obsidian-excalidraw-plugin",
"obsidian-icon-folder"
]

35
.obsidian/graph.json vendored
View File

@ -5,37 +5,8 @@
"showAttachments": false,
"hideUnresolved": false,
"showOrphans": false,
"collapse-color-groups": false,
"colorGroups": [
{
"query": "tag:#博客",
"color": {
"a": 1,
"rgb": 14701138
}
},
{
"query": "tag:#阅读",
"color": {
"a": 1,
"rgb": 10967200
}
},
{
"query": "tag:#技术 ",
"color": {
"a": 1,
"rgb": 5417696
}
},
{
"query": "tag:#工作 ",
"color": {
"a": 1,
"rgb": 5397472
}
}
],
"collapse-color-groups": true,
"colorGroups": [],
"collapse-display": true,
"showArrow": false,
"textFadeMultiplier": 2,
@ -46,6 +17,6 @@
"repelStrength": 20,
"linkStrength": 0.75,
"linkDistance": 400,
"scale": 0.4993882638266578,
"scale": 0.09085236301906145,
"close": true
}

View File

@ -0,0 +1,43 @@
{
"settings": {
"migrated": 6,
"iconPacksPath": "Obsidian/Static",
"fontSize": 16,
"emojiStyle": "native",
"iconColor": null,
"recentlyUsedIcons": [
"🧰",
"📐",
"📚",
"💼",
"🧑‍💻"
],
"recentlyUsedIconsSize": 5,
"rules": [],
"extraMargin": {
"top": 0,
"right": 4,
"bottom": 0,
"left": 0
},
"iconInTabsEnabled": false,
"iconInTitleEnabled": false,
"iconInTitlePosition": "above",
"iconInFrontmatterEnabled": false,
"iconInFrontmatterFieldName": "icon",
"iconColorInFrontmatterFieldName": "iconColor",
"iconsBackgroundCheckEnabled": false,
"iconsInNotesEnabled": true,
"iconsInLinksEnabled": true,
"iconIdentifier": ":",
"lucideIconPackType": "native",
"debugMode": false
},
"Archive": "📦",
"NaturalSciences": "🌍",
"Personal": "🧑‍💻",
"SocialSciences": "📚",
"FormalSciences": "📐",
"Obsidian": "🧰",
"Professional": "💼"
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,10 @@
{
"id": "obsidian-icon-folder",
"name": "Iconize",
"version": "2.14.3",
"minAppVersion": "0.9.12",
"description": "Add icons to anything you desire in Obsidian, including files, folders, and text.",
"author": "Florian Woelki",
"authorUrl": "https://florianwoelki.com/",
"isDesktopOnly": false
}

View File

@ -0,0 +1,119 @@
.iconize-inline-title-wrapper {
width: var(--line-width);
margin-inline: var(--content-margin);
}
.iconize-title-icon {
max-width: var(--max-width);
margin-right: var(--size-4-2);
}
.iconize-icon-in-link {
transform: translateY(20%);
margin-right: var(--size-2-2);
display: inline-flex;
}
.iconize-icon {
border: 1px solid transparent;
margin: 0px 4px 0px 0px;
display: flex;
align-self: center;
margin: auto 0;
}
.nav-folder-title,
.nav-file-title {
align-items: center;
}
.iconize-setting input[type='color'] {
margin: 0 6px;
}
.iconize-modal.prompt-results {
margin: 0;
overflow-y: auto;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
}
.prompt .iconize-subheadline {
margin-top: 12px;
font-size: 12px;
color: gray;
grid-column-start: 1;
grid-column-end: 6;
}
@media (max-width: 640px) {
.iconize-modal.prompt-results {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.prompt .iconize-subheadline {
grid-column-end: 4;
}
}
.iconize-modal.prompt-results .suggestion-item {
cursor: pointer;
white-space: pre-wrap;
display: flex;
justify-content: flex-end;
align-items: center;
flex-direction: column-reverse;
text-align: center;
font-size: 13px;
color: var(--text-muted);
padding: 16px 8px;
line-break: auto;
word-break: break-word;
line-height: 1.3;
}
.iconize-modal.prompt-results .suggestion-item.suggestion-item__center {
justify-content: center;
}
.iconize-icon-preview {
font-size: 22px;
}
.iconize-icon-preview img {
width: 16px;
height: 16px;
}
.iconize-icon-preview svg {
width: 24px;
height: 24px;
color: currentColor;
margin-bottom: 4px;
}
.iconize-dragover {
position: relative;
}
.iconize-dragover-el {
position: absolute;
width: 100%;
height: 100%;
color: var(--text-normal);
background-color: var(--background-secondary-alt);
display: flex;
align-items: center;
justify-content: center;
}
/* Custom rule modal. */
.iconize-custom-modal .modal-content {
display: flex;
align-items: center;
justify-content: center;
}
.iconize-custom-modal .modal-content input {
width: 100%;
margin-right: 0.5rem;
}

BIN
FormalSciences/ComputerScience/.DS_Store vendored Normal file

Binary file not shown.

Binary file not shown.

View File

@ -8,7 +8,7 @@ keywords:
- 网络
- 传统架构
tags:
- ComputerScience/CloudService
- FormalSciences/ComputerScience
- CloudService/Overview
author: 仲平
date: 2024-10-13

View File

@ -9,7 +9,7 @@ keywords:
- 云服务器
- 云平台
tags:
- ComputerScience/CloudService
- FormalSciences/ComputerScience
- CloudService/Overview
author: 仲平
date: 2024-10-13

View File

@ -8,8 +8,8 @@ keywords:
- 自动化
- 容器化
tags:
- ComputerScience/CloudService
- CloudService/ServiceModels
- FormalSciences/ComputerScience
- CloudService/Overview
author: 仲平
date: 2024-10-13
---

View File

@ -8,8 +8,8 @@ keywords:
- 运维
- 云计算
tags:
- ComputerScience/CloudService
- CloudService/ServiceModels
- FormalSciences/ComputerScience
- CloudService/Overview
author: 仲平
date: 2024-10-13
---

View File

@ -8,8 +8,8 @@ keywords:
- 云应用
- 多租户架构
tags:
- ComputerScience/CloudService
- CloudService/ServiceModels
- FormalSciences/ComputerScience
- CloudService/Overview
author: 仲平
date: 2024-10-13
---

View File

@ -8,8 +8,8 @@ keywords:
- 事件驱动
- 容器
tags:
- ComputerScience/CloudService
- CloudService/ServiceModels
- FormalSciences/ComputerScience
- CloudService/Overview
author: 仲平
date: 2024-10-13
---

View File

@ -4,8 +4,8 @@ description: 网络基础
keywords:
- 网络基础
tags:
- 计算机网络/网络基础
- 技术/计算机网络
- FormalSciences/ComputerScience
- ComputerNetwork/Overview
author: 仲平
date: 2024-01-04
---

View File

@ -6,8 +6,8 @@ keywords:
- 网际协议
- 网络协议
tags:
- 计算机网络/IP协议
- 技术/计算机网络
- FormalSciences/ComputerScience
- ComputerNetwork/Protocols
author: 仲平
date: 2024-01-15
---

View File

@ -5,8 +5,8 @@ keywords:
- TCP
- 传输控制协议
tags:
- 计算机网络/TCP传输控制协议
- 技术/计算机网络
- FormalSciences/ComputerScience
- ComputerNetwork/Protocols
author: 仲平
date: 2024-01-11
---

View File

@ -5,8 +5,8 @@ keywords:
- UDP
- 用户数据报协议
tags:
- 计算机网络/UDP用户数据报协议
- 技术/计算机网络
- FormalSciences/ComputerScience
- ComputerNetwork/Protocols
author: 仲平
date: 2024-01-11
---

View File

@ -5,11 +5,10 @@ keywords:
- DHCP
- 动态主机配置协议
tags:
- 计算机网络/DHCP协议
- 技术/计算机网络
sidebar_position: 2
- FormalSciences/ComputerScience
- ComputerNetwork/Protocols
author: 7Wate
date: 2023-06-28
date: 2024-10-13
---
## 简介

View File

@ -6,9 +6,8 @@ keywords:
- 域名系统
- 概述
tags:
- 计算机网络/DNS协议
- 技术/计算机网络
sidebar_position: 1
- FormalSciences/ComputerScience
- ComputerNetwork/Protocols
author: 7Wate
date: 2023-06-28
---

View File

@ -1,12 +1,12 @@
---
title: IPv4 DNS 服务
title: 3.1-IPv4 DNS 服务
description: IPv4 DNS 服务 公共 DNS 服务地址
keywords:
- IPV4
- DNS
tags:
- 技术/计算机网络
- 公共服务/DNS
- FormalSciences/ComputerScience
- ComputerNetwork/PublicServices
author: 仲平
date: 2024-07-21
---

View File

@ -1,12 +1,12 @@
---
title: IPv6 DNS 服务
title: 3.2-IPv6 DNS 服务
description: IPv6 DNS 服务
keywords:
- IPv6
- DNS 服务
tags:
- 技术/计算机网络
- 公共服务/DNS
- FormalSciences/ComputerScience
- ComputerNetwork/PublicServices
author: 仲平
date: 2024-07-21
---

View File

@ -4,8 +4,8 @@ description: Mirror 镜像站
keywords:
- Mirror 镜像站
tags:
- 技术/计算机网络
- 公共服务/Mirror
- FormalSciences/ComputerScience
- ComputerNetwork/PublicServices
author: 仲平
date: 2024-07-21
---

View File

@ -4,8 +4,8 @@ description: NTP 服务器
keywords:
- NTP 服务器
tags:
- 技术/计算机网络
- 公共服务/NTP
- FormalSciences/ComputerScience
- ComputerNetwork/PublicServices
author: 仲平
date: 2024-07-21
---

View File

@ -5,9 +5,8 @@ keywords:
- CDN
- 概述
tags:
- 计算机网络/CDN应用
- 技术/计算机网络
sidebar_position: 1
- FormalSciences/ComputerScience
- ComputerNetwork/PublicServices
author: 7Wate
date: 2023-06-27
---

View File

@ -1,5 +1,5 @@
---
title: 简明指南
title: 1.1-简明指南
description: 密码学简明指南
keywords:
- 密码学

View File

@ -11,8 +11,50 @@ author: 7Wate
date: 2023-06-28
---
## 认证
**认证Identification** 是指根据声明者所特有的识别信息,确认声明者的身份。**你需要用身份证证明你自己是你自己**。比如我们常见的认证技术:身份证、用户名和密码、用户手机:手机短信、手机二维码扫描、手势密码、电子邮箱、指纹、语音、眼睛虹膜、大数据识别等等
## 授权
**授权Authorization**在信息安全领域是指**资源所有者**委派**执行者**,赋予**执行者**指定范围的资源操作权限,以便对资源的相关操作。
- **现实生活领域**:银行卡(由银行派发)、门禁卡(由物业管理处派发)、钥匙(由房东派发),这些都是现实生活中授权的实现方式。
- **互联网领域** Web 服务器的 Session 机制、Web 浏览器的 Cookie 机制、颁发授权令牌Token等都是一个授权的机制。
## 鉴权
**鉴权Authentication**在信息安全领域是指**对于一个声明者所声明的身份权利,对其所声明的真实性进行鉴别确认的过程**。若从授权出发,则会更加容易理解鉴权。授权和鉴权是两个上下游相匹配的关系:**先授权,后鉴权**。
- **现实生活领域:** 门禁卡需要通过门禁卡识别器,银行卡需要通过银行卡识别器;
- **互联网领域:** 校验 Session / Cookie / Token 的合法性和有效性
**鉴权**是一个承上启下的一个环节上游它接受授权的输出校验其真实性后然后获取权限Permission这个将会为下一步的权限控制做好准备。
## 权限控制
**权限控制Access/Permission Control** 将可执行的操作定义为权限列表,然后判断操作是否允许/禁止。对于权限控制,可以分为两部分进行理解:一个是**权限**,另一个是**控制**。**权限是抽象的逻辑概念,而控制是具体的实现方式。**
- **现实生活领域:** 以门禁卡的权限实现为例,一个门禁卡,拥有开公司所有的门的权限;一个门禁卡,拥有管理员角色的权限,因而可以开公司所有的门。
- **互联网领域:** 通过 Web 后端服务,来控制接口访问,允许或拒绝访问请求。
## 认证、授权、鉴权和权限控制的关系?
![关系](https://static.7wate.com/img/2022/08/29/05d140d5e8751.png)
**认证**、**授权**、**鉴权**和**权限控制**,这四个环节是一个**前后依次发生**、**上下游**的关系;需要说明的是,这四个环节在有些时候会同时发生。 例如在下面的几个场景:
- **使用门禁卡开门:** 认证、授权、鉴权、权限控制四个环节一气呵成,在瞬间同时发生。
- **用户的网站登录:** 用户在使用用户名和密码进行登录时,认证和授权两个环节一同完成,而鉴权和权限控制则发生在后续的请求访问中,比如在选购物品或支付时。
权限管控可以通俗的理解为权力限制,即不同的人由于拥有不同权力,他所看到的、能使用的可能不一样。对应到一个应用系统,其实就是一个用户可能拥有不同的数据权限(看到的)和操作权限(使用的)。
## 权限模型
主流的权限模型主要分为以下五种:
- **ACL 模型**:访问控制列表
@ -21,7 +63,7 @@ date: 2023-06-28
- **ABAC 模型**:基于属性的访问控制
- **RBAC 模型**:基于角色的权限访问控制
## ACL 模型:访问控制列表
### ACL 模型:访问控制列表
**Access Control List**ACL 是最早的、最基本的一种访问控制机制,是基于客体进行控制的模型,在其他模型中也有 ACL 的身影。为了解决相同权限的用户挨个配置的问题,后来也采用了用户组的方式。
@ -31,7 +73,7 @@ date: 2023-06-28
**缺点**:当主体的数量较多时,配置和维护工作就会成本大、易出错。
## DAC 模型:自主访问控制
### DAC 模型:自主访问控制
Discretionary Access ControlDAC 是 ACL 的一种拓展。
@ -41,7 +83,7 @@ Discretionary Access ControlDAC 是 ACL 的一种拓展。
**缺点**:对权限控制比较分散,例如无法简单地将一组文件设置统一的权限开放给指定的一群用户。主体的权限太大,无意间就可能泄露信息。
## MAC 模型:强制访问控制
### MAC 模型:强制访问控制
**Mandatory Access Control**MAC 模型中主要的是双向验证机制。常见于机密机构或者其他等级观念强烈的行业,如军用和市政安全领域的软件。
@ -51,7 +93,7 @@ Discretionary Access ControlDAC 是 ACL 的一种拓展。
**缺点**:控制太严格,实现工作量大,缺乏灵活性。
## ABAC 模型:基于属性的访问控制
### ABAC 模型:基于属性的访问控制
**Attribute-Based Access Control**,能很好地解决 RBAC 的缺点,在新增资源时容易维护。
@ -68,7 +110,7 @@ Discretionary Access ControlDAC 是 ACL 的一种拓展。
**缺点**:规则复杂,不易看出主体与客体之间的关系,实现非常难,现在应用的很少。
## RBAC 基于角色的权限访问控制
### RBAC 基于角色的权限访问控制
**Role-Based Access Control**,核心在于用户只和角色关联,而角色代表对了权限,是一系列权限的集合。
@ -210,6 +252,31 @@ RBAC 权限模型由三大部分构成,即**用户管理**、**角色管理**
![角色管理](https://static.7wate.com/img/2022/08/08/d81016b4c7467.png)
### 唯一登录
唯一登录是指**禁止多人同时登录同一账号,后者的登录行为,会导致前者掉线。**
通俗点讲就是A 账号在 A 电脑上登录后A 账号此时又用 B 电脑再次登录,则 A 电脑请求页面时,提示“重新登录”的信息,并跳转到登录页面
#### 唯一登录流程图
![唯一登录流程图](https://static.7wate.com/img/2022/08/30/f71a772c45d73.png)
#### 唯一登录步骤详解
#### 用户 - 客户端 A 操作
1. 输入账号请求登录接口。
2. 后端生成对应 Token 并且返回给客户端 A并且在服务端保存一个登录状态。
3. 客户端 A 保存 Token并且每次请求都在 header 头中携带对应的 Token。
#### 用户 - 客户端 B 操作
1. 输入账号请求登录接口。
2. ……
用户在客户端 B 上开始登录操作时,我们会发现,步骤和在客户端 A 上面的操作几乎是一致的。只是后端在生成新的 Token 时,要**先验证登录状态**,然后再生成对应新的 Token
## 用户管理系统权限设计中的更多实践细节
### 1. 超级管理员

View File

@ -1,8 +0,0 @@
{
"label": "权限设计方案",
"position": 2,
"link": {
"type": "generated-index",
"title": "权限设计方案"
}
}

View File

@ -1,8 +0,0 @@
{
"label": "鉴权解决方案",
"position": 3,
"link": {
"type": "generated-index",
"title": "鉴权解决方案"
}
}

View File

@ -1,38 +0,0 @@
---
title: 唯一登录
description: 唯一登录
keywords:
- 唯一登录
tags:
- 计算机安全/用户安全
- 技术/计算机安全
author: 7Wate
date: 2022-08-31
---
## 唯一登录
### 唯一登录定义
唯一登录是指**禁止多人同时登录同一账号,后者的登录行为,会导致前者掉线。**
通俗点讲就是A 账号在 A 电脑上登录后A 账号此时又用 B 电脑再次登录,则 A 电脑请求页面时,提示“重新登录”的信息,并跳转到登录页面
### 唯一登录流程图
![唯一登录流程图](https://static.7wate.com/img/2022/08/30/f71a772c45d73.png)
### 唯一登录步骤详解
#### 用户 - 客户端 A 操作
1. 输入账号请求登录接口。
2. 后端生成对应 Token 并且返回给客户端 A并且在服务端保存一个登录状态。
3. 客户端 A 保存 Token并且每次请求都在 header 头中携带对应的 Token。
#### 用户 - 客户端 B 操作
1. 输入账号请求登录接口。
2. ……
用户在客户端 B 上开始登录操作时,我们会发现,步骤和在客户端 A 上面的操作几乎是一致的。只是后端在生成新的 Token 时,要**先验证登录状态**,然后再生成对应新的 Token

View File

@ -1,52 +0,0 @@
---
title: 简明指南
description: 用户安全简明指南
keywords:
- 用户安全
- 简明指南
tags:
- 计算机安全/用户安全
- 技术/计算机安全
author: 7Wate
date: 2022-08-31
---
## 认证
**认证Identification**是指根据声明者所特有的识别信息,确认声明者的身份。**你需要用身份证证明你自己是你自己**。比如我们常见的认证技术:身份证、用户名和密码、用户手机:手机短信、手机二维码扫描、手势密码、电子邮箱、指纹、语音、眼睛虹膜、大数据识别等等
## 授权
**授权Authorization**在信息安全领域是指**资源所有者**委派**执行者**,赋予**执行者**指定范围的资源操作权限,以便对资源的相关操作。
- **现实生活领域**:银行卡(由银行派发)、门禁卡(由物业管理处派发)、钥匙(由房东派发),这些都是现实生活中授权的实现方式。
- **互联网领域** Web 服务器的 Session 机制、Web 浏览器的 Cookie 机制、颁发授权令牌Token等都是一个授权的机制。
## 鉴权
**鉴权Authentication**在信息安全领域是指**对于一个声明者所声明的身份权利,对其所声明的真实性进行鉴别确认的过程**。若从授权出发,则会更加容易理解鉴权。授权和鉴权是两个上下游相匹配的关系:**先授权,后鉴权**。
- **现实生活领域:** 门禁卡需要通过门禁卡识别器,银行卡需要通过银行卡识别器;
- **互联网领域:** 校验 Session / Cookie / Token 的合法性和有效性
**鉴权**是一个承上启下的一个环节上游它接受授权的输出校验其真实性后然后获取权限Permission这个将会为下一步的权限控制做好准备。
## 权限控制
**权限控制Access/Permission Control** 将可执行的操作定义为权限列表,然后判断操作是否允许/禁止。对于权限控制,可以分为两部分进行理解:一个是**权限**,另一个是**控制**。**权限是抽象的逻辑概念,而控制是具体的实现方式。**
- **现实生活领域:** 以门禁卡的权限实现为例,一个门禁卡,拥有开公司所有的门的权限;一个门禁卡,拥有管理员角色的权限,因而可以开公司所有的门。
- **互联网领域:** 通过 Web 后端服务,来控制接口访问,允许或拒绝访问请求。
## 认证、授权、鉴权和权限控制的关系?
![关系](https://static.7wate.com/img/2022/08/29/05d140d5e8751.png)
**认证**、**授权**、**鉴权**和**权限控制**,这四个环节是一个**前后依次发生**、**上下游**的关系;需要说明的是,这四个环节在有些时候会同时发生。 例如在下面的几个场景:
- **使用门禁卡开门:** 认证、授权、鉴权、权限控制四个环节一气呵成,在瞬间同时发生。
- **用户的网站登录:** 用户在使用用户名和密码进行登录时,认证和授权两个环节一同完成,而鉴权和权限控制则发生在后续的请求访问中,比如在选购物品或支付时。

Some files were not shown because too many files have changed in this diff Show More