6426C Lab5 部署和配置联合服务

本文详细介绍了如何通过安装并配置PKI、AD FS以及相关网络架构,实现内部用户和互联网用户的高效身份验证与访问控制流程。具体步骤包括安装PKI、配置AD FS、创建及绑定证书、导入根证书、验证服务状态以及测试AD FS功能等,确保企业网络的安全性和便捷性。

本实验共包括4个练习:

练习1:安装 PKI 
练习2:安装 AD FS
练习3:为内部用户配置 AD FS以访问 内部应用程序
练习4:为Internet用户配置AD FS 以访问合作伙伴的应用程序

 

网络架构

120713367.jpg

 

环境准备:

  下载本文的附件ContosoClaimApp.zip,解压到复制为HQDC1服务器的C:\inetpub\wwwroot\ContosoClaimApp文件夹。

  下载本文的附件ADatumClaimApp.zip,解压到复制为HQDC2服务器的C:\inetpub\wwwroot\ADatumClaimApp文件夹。

  分别在上述2台服务器打开IIS管理器,将上述文件夹转换为应用程序。

200357951.png

 

练习1:安装 PKI 

任务1:在 Contoso 域安装 AD CS

1.  检查Active Directory Web Services服务的状态为“已启动”,并且启动类型为“自动”。

141329846.png

 

2. 打开“服务器管理器”,添加 AD CS 角色。

142257880.png

142258398.png

142258131.png

142258575.png

142258187.png

 

142259338.png

 

142259594.png

 

 

任务2:关闭CDP(CRL Distribution Point)和AIA(Authority Information Access)

1. 打开“管理工具”中的“证书颁发机构”,右键单击“ContosoCA”,选择“属性”。

142920416.png

 

2. 在“ContosoCA 属性”对话窗口,选择“扩展”选项卡。在“选择扩展”列表中选择“CRL分发点(CDP)”。然后在其下方的列表中删除“ldap:///CN…”和“file://<ServerDNSName>…”。

143217402.png

143631357.png

 

3.  选择“http://”条目,然后勾选“包含在颁发的证书的CDP扩展中”。

143617539.png

 

4. 在“选择扩展”列表中选择“颁发机构信息访问(AIA)”。然后在其下方的列表中删除“ldap:///CN…”和“file://<ServerDNSName>…”。选择“http://”条目,然后勾选“包含在颁发的证书的AIA扩展中”。

144016902.png

 

5. 点“确定”按钮,然后点“是”重启服务。

144319902.png

 

6.  在“命令提示符”下面输入:mmc。在管理控制台窗口“添加/删除管理单元”。

144527782.png

 

7. 在“添加或删除管理单元”对话窗口,在左侧的“可用的管理单元”列表中选择“证书”,然后点“添加”按钮。

150450945.png

 

8. 选择“计算机帐户”。

150450569.png

150450911.png

 

9. 暂停自动注册事件。“以管理员身份运行”的方式打开“命令提示符”,输入:

C:\Users\Administrator>certutil -pulse
CertUtil: -pulse 命令成功完成。

C:\Users\Administrator>

 

10. 再回到管理控制台,在左侧的树状列表中依次展开“证书”、“个人”、“证书”。可以看到显示出一个新证书。如果没有显示出来,请按F5刷新。

145757676.png

 

11. 由于这个证书包含了遗留的LDAP CRL URL列表,而且不能在AD FS环境中使用。因此删除这个证书。

145808706.png

 

任务3:配置 Web 服务器的 证书模板,允许域控制器和域中的计算机有权限访问证书

1. 在管理控制台“添加/删除管理单元”添加“证书模板”。

152114492.png

 

2. 选择“Web服务器”,点“属性”。在“安全”选项卡,添加4个组或用户名:Domain Computers、Domain Controllers、Network Service、IIS_IUSRS。并且为它们的权限设置为允许“读取”和“注册”。

152115343.png

 

3. “以管理员身份运行”方式打开“命令提示符”,重启证书服务。

C:\Users\Administrator>net stop "Active Directory Certificate Services"
Active Directory Certificate Services 服务正在停止.
Active Directory Certificate Services 服务已成功停止。


C:\Users\Administrator>net start "Active Directory Certificate Services"
Active Directory Certificate Services 服务正在启动 .
Active Directory Certificate Services 服务已经启动成功。


C:\Users\Administrator>

 

任务4:在IIS中创建一个域证书

1. 在“管理工具”中打开“Internet信息服务(IIS)管理器”。双击“服务器证书”。

153732473.png

 

2. 选择“创建域证书”。

153732561.png

 

3. 输入“通用名称”等信息。

153732153.png

 

4. 点“选择”按钮,选择证书颁发机构。 

154315866.png

:必须输入一个“好记名称”。

 

5. 验证域证书。

154315306.png

 

任务5:绑定证书到需要SSL的程序

1. 选择“Default Web Site”,单击“绑定”。

155402158.png

 

2. 点击“添加”按钮,添加https所需的域证书。

155402112.png

 

:在上图中,务必点击“查看”,确认该证书有“友好名称”。

202439527.png

 

任务6:将Contoso 根证书导出到Adatum域

1. 在管理控制台,选择域证书,在右键菜单中选择“所有任务”、“导出”。 

161654778.png

 

2. 按照“证书导出向导”的提示,导出证书。

161655684.png

161655510.png

161655484.png

161655186.png

161656967.png

 

任务7:在Adatum域导出证书。

  转到HQDC2服务器,按照前面的所有操作步骤。最后在Adatum域创建一个名为“AdatumCA”的根证书,并导出为AdatumCA.cer文件。将这个文件复制到HQDC1服务器的C:\LabFiles文件夹。

 

任务8:将Adatum域证书导入到受信任的根证书颁发机构。

1. 转到HQDC1服务器。打开“管理工具”中的“组策略管理”,编辑默认的域策略。依次展开“计算机配置”、“策略”、“Windows设置”、“安全设置”、“公钥策略”。在“受信任的根证书颁发机构”中“导入”。

171106590.png

 

2. 选择AdatumCA证书文件。

171106185.png

 

3. 确认证书存储在“受信任的根证书颁发机构”位置。

171106434.png

 

4. 确认导入成功。

171106680.png

171106299.png

 

5. 编辑完成后,退出“组策略管理”。

6. 强制刷新组策略。在命令提示符下面运行: gpupdate /force

 

任务9:将Contoso根证书导入到Adatum域 

  参照前面的操作,把ContosoCA.cer文件复制到HQDC2。在HQDC2服务器编辑默认的组策略,将ContosoCA.cer导入到Adatum域的“受信任的根证书颁发机构”位置。然后强制刷新组策略。

 

 (附加)练习 安装 AD FS 1.0

  本实验需要使用AD FS 2.0,所以下述操作仅供参考,不要在本实验内操作。

182613592.png

182613448.png

182613546.png

182613370.png

182613269.png

182614416.png

 

  安装完成之后,可以从“管理工具”的“Active Directory 联合身份验证服务”打开管理控制台。

182614754.png

 

练习2:安装 AD FS 2.0

任务1:在Contoso域安装AD FS 2.0

1. 下载安装程序 http://down.51cto.com/data/802169

2. 右键单击此解后的文件,“以管理员身份运行”。

3. 根据安装向导的提示,完成安装。

184355270.png

184355183.png

184355982.png

184356223.png

184356585.png

184356443.png

 

任务2:创建一个独立联合服务器

1. 在上一步的安装过程中,如果选择了“此向导关闭时自动启动AD FS 2.0管理单元”,则自动弹出管理界面。否则,在“管理工具”中单击“AD FS 2.0管理”。在管理控制台界面,单击“AD FS 2.0联合服务器配置向导”。

190550637.png

 

2. 创建一个新的联合身份验证服务。

190551930.png

 

3. 选择“独立联合服务器”。

190551926.png

 

4. 查看证书是否正确。

190551891.png

 

5. 完成安装。

190551393.png

190551612.png

192022838.png

 

注意:为了确保后续的正常操作,建议检查“服务”的列表中的“Active Directory Web Service”和“AD FS 2.0 Windows Service”的启动类型为“自动”,并且这2个服务的状态为“已启动”。 

 

任务3:验证PowerShell

  打开“管理工具”中的“Windows PowerShell Modules”。

运行:Get-ADFSProperties,查看AD FS模块是否已经加载。

运行:Get-Command *-ADFS* ,查看AD FS模块相关的命令。

 

任务4:验证federationmetadata.xml文件

  打开IE,在地址栏输入 https://hqdc1.contoso.com/federationmetadata/2007-06/federationmetadata.xml 

192118579.png

 

任务5:添加一个新的声明说明

1. 添加一个声明说明。本例只是介绍添加声明说明的方法,仅供参考。

192649773.png

192649955.png

 

2. 验证。

192649117.png

192649646.png

 

 

练习3:为内部用户配置 AD FS以访问内部应用程序

任务1:配置一个令牌签名证书

说明:当ADFS的自动注册功能被启用时,证书不能在ADFS中修改。这个功能会决定ADFS是否管理证书失效以及替换为新证书。因此,在ADFS中修改证书之前,要先关闭这个功能。 

1.  打开“管理工具”中的“Windows PowerShell Modules”。

运行:Set-ADFSProperties -AutoCertificateRollover $false

再运行:Get-ADFSProperties ,检查AutoCertificateRollover是否为False。

 

2. 打开“管理工具”中的“AD FS 2.0管理”。

195926810.png

  选择具有“友好名称”的证书。

195927987.png

195927844.png

195927260.png

 

3. 设置为主证书。

195927821.png

 

4. 删除被替换的令牌签名证书。

195927937.png

 

 

任务2:配置一个声明

1. 展开“信任关系”、“声明提供方信任”,“编辑声明规则”。

201320946.png

 

2. 添加规则。

201320652.png

201320522.png

201320766.png

 

 

任务3:配置声明应用程序

1. 安装WIF(Windows Identity Foundation,即Windows身份验证基础)。

下载地址  http://down.51cto.com/data/802274

 

203957928.png

203958512.png

203958444.png

203958693.png

203958437.png

 

2. 检查C:\inetpub\wwwroot\ContosoClaimApp文件夹。

 

3. 打开“管理工具”中的“Windows Identity Foundation Federation Utility”。在“欢迎使用Federation Utility向导”窗口,定位WIF示例应用程序。

203958721.png

 

4. 完成安装

205355640.png

205355587.png

205355545.png

205355625.png

210233890.png

 

:在配置过程中,可能出现“STS签名证书链验证错误”页面。选择“禁用证书验证”。这样可以简化本实验的测试过程。

201520369.png 

 

任务4:配置一个信赖方信任

  打开“AD FS 2.0管理”。

210255752.png

210255812.png

210255724.png

210256234.png

210256862.png

210256330.png

210256659.png

 

 

任务5:配置规则

1. 在上一安装过程中,选择了“向导关闭时打开此信赖方信任的编辑声明规则对话框”,则自动弹出对话框。否则,在上一任务新建的信赖方信任点右键,选择“编辑声明规则”。

211538342.png

 

2. 添加规则。

211316528.png

211316223.png

211316805.png

 

3. 参照前一步骤,再添加2个规则。

211317251.png

211317151.png

 

 

任务6:测试

  转到CL1.contoso.com客户端计算机,使用contoso\ZhangS帐户登入。打开IE浏览器,输入网址 https://hqdc1.contoso.com/ContosoClaimApp/ 。如果出现输入凭据的对话窗口,则表明测试成功。

 

 

任务7:配置声明规则以只允许组内用户

1. 展开“信任关系”、“声明提供方信任”。“编辑声明规则”。

220934888.png

220935157.png

220935483.png

220935794.png

 

2. 展开“信任关系”、“信赖方信任”。“编辑声明规则”。打开“颁发授权规则”选项卡,删除默认的规则。然后“添加规则”。

220935511.png

220935102.png

220936413.png

 

 

任务8:验证

  转到CL1.contoso.com客户端计算机,以contoso\ZhangS帐户登入(此帐户属于ITADMIN组)。打开网址,验证。

  然后再以contoso\LiS帐户登入,此帐户不属于ITADMIN组。打开网址,验证。 

 

 

 

练习4:为Internet用户配置AD FS 以访问合作伙伴的应用程序

任务1:为ADatum域添加声明提供方信任

1. 参照前面的操作,为HQDC2.ADatum.com服务器安装AD FS 2.0。 

2.  在DNS中添加一个条件转发规则。

081218507.png

 

3. 打开“AD FS 2.0管理”,使用“AD FS 联合服务器配置向导”配置一台独立联合服务器。

081218785.png

081218817.png

081218860.png

081218368.png

注:如果没有添加DNS条件转发器,可能会出现以下错误。

081219966.png

 

4. 继续下一步

081219455.png

081219171.png

081219144.png

 

5. 编辑规则

082100697.png

082101639.png

082101891.png

082101275.png

 

6. 打开“管理工具”的“Windows PowerShell Modules”,运行以下命令。

PS C:\Users\Administrator> Set-ADFSClaimsProviderTrust -TargetName "hqdc1.contoso.com" -SigningCertificateRevocationCheck None
PS C:\Users\Administrator> 

 

任务2:配置一个信赖方信任

1. 转到HQDC1.contoso.com服务器。配置一个DNS转发器。

083519467.png

 

2. 打开“AD FS 2.0管理”,添加一个信赖方信任。

083519878.png

083519233.png

083519877.png

083519495.png

083519516.png

083519236.png

083519984.png

 

3. 添加一个颁发转换规则。

083520295.png

 

083630426.png

083631448.png

 

4. 检查C:\inetpub\wwwroot\ADatumClaimApp 。

 

任务3:验证

1. 转到CL1.contoso.com客户端计算机,以contoso\ZhangS帐户登入。

2. 打开IE浏览器,输入网址 https://hqdc2.adatum.com/ADatumClaimApp 。在出现组织列表时选择contoso.com域。

202105633.png

202105629.png

3. 关闭IE浏览器后再次打开,输入网址https://hqdc2.adatum.com/ADatumClaimApp 。由于这不是第一次登录,因此没有根领域。默认情况下,根领域授权的用户会在信赖方联合服务器上保存_LSRealm cookie,有效期为30天。

4. 删除cookie。打开IE浏览器的“工具”、“Internet选项”。

 

5.  关闭IE浏览器后再次打开,输入网址https://hqdc2.adatum.com/ADatumClaimApp 。这次会出现凭据输入窗口。

 

 

<think>好的,我需要帮助用户了解如何从医学教材期刊中提取数据构建知识图谱,并使用TransE嵌入技术将其融合到BERT模型中。首先,我需要分解这个问题,逐步分析每个步骤。 首先,医学数据提取。医学教材期刊通常包含结构化非结构化数据。结构化数据可能包括表格、图表,非结构化的是大量的文本。用户提到的数据提取应该涉及从这些资料中抽取实体关系。需要用到自然语言处理(NLP)技术,比如命名实体识别(NER)关系抽取。这里可能需要使用预训练模型,例如BERT,因为医学文本中有很多专业术语,可能需要领适应的模型,比如BioBERT或ClinicalBERT,这些已经在医学文本上微调过,效果更好。 接下来是知识图谱构建。提取出的实体关系需要组织成本体结构。本体建模是关键,需要定义医学领的实体类型(如疾病、症状、药物)它们之间的关系(如治疗、导致、副作用)。这部分可能需要参考现有的医学本体,比如UMLS(统一医学语言系统),来确保结构的合理性兼容性。然后,将抽取的数据填充到本体中,形成知识图谱。这里可能需要知识融合技术,处理不同来源的数据冲突或冗余,引用中提到的实体对齐框架可能相关[^3]。 然后是TransE嵌入技术。TransE是一种知识表示学习方法,将实体关系映射到低维向量空间,使得h + r ≈ t(头实体加关系等于尾实体)。在医学知识图谱中,这可以帮助捕捉实体间的语义关系。应用TransE需要将知识图谱中的三元组(h, r, t)输入模型进行训练,得到每个实体关系的嵌入向量。 接下来是如何将TransE的嵌入融合到BERT模型中。BERT主要用于处理文本,生成上下文相关的词向量。融合的方法可能有几种:一种是在BERT的输入层结合TransE的实体嵌入,例如在输入词向量中加入对应的实体嵌入;另一种是在模型中间层进行融合,比如在Transformer层中加入实体信息;或者通过联合训练,让BERTTransE共同优化。引用[^4]提到了融合语言模型拓扑上下文的方法,可能涉及将知识图谱的结构信息(通过TransE编码)与BERT的文本表示结合,例如使用注意力机制或门控结构来整合两种表示。 此外,还需要考虑如何将融合后的模型应用于下游任务,比如问答系统或疾病诊断预测。引用[^2]提到大语言模型与知识图谱的融合可以提升问答推理能力,这可能涉及到在BERT的输出层结合知识图谱的嵌入信息,增强模型的事实性知识。 在实际操作中,可能需要以下步骤: 1. 数据预处理:清洗医学文本,标注实体关系,可能需要专家参与以确保准确性。 2. 实体关系抽取:使用NER模型(如BioBERT)识别疾病、药物等实体,再用关系抽取模型确定实体间关系。 3. 构建知识图谱:基于本体设计,存储抽取的三元组,使用图数据库如Neo4j。 4. 训练TransE模型:生成实体关系的嵌入向量。 5. 融合到BERT:设计融合架构,例如在BERT的嵌入层拼接TransE的向量,或在中间层进行信息交互。 6. 微调评估:在特定任务(如医学问答)上微调融合后的模型,评估性能提升。 可能遇到的挑战包括医学数据的隐私问题、专业术语的处理、知识图谱的更新维护,以及如何有效融合不同表示空间(TransE的向量BERT的上下文向量)的问题。此外,工程化方面,引用[^3]提到的标准化工具链可能有助于流程的自动化。 需要验证的方法是否有相关研究支持,比如引用[^4]中的拓扑上下文逻辑规则融合,可能可以借鉴其方法将TransE的结构信息与BERT结合。同时,引用[^1]中提到的知识融合步骤需要确保知识的一致性完整性,这在医学领尤为重要,错误的知识可能导致严重后果。 总结来说,整个流程涉及数据提取、知识图谱构建、嵌入学习模型融合,每个环节都需要针对医学领的特点进行优化,并参考现有的技术方法进行实现。</think>### 医学知识图谱构建与TransE-BERT融合方法分步指南 #### 一、医学数据提取 1. **结构化数据抽取** - 表格/图表解析:使用OCR工具(如Tesseract)提取医学教材中的表格数据,结合正则表达式解析结构化信息,例如: ```python import pytesseract from PIL import Image text = pytesseract.image_to_string(Image.open('medical_table.png')) ``` - 文献元数据提取:利用PubMed API获取期刊文章的标题、作者、摘要等结构化信息 2. **非结构化文本处理** - 命名实体识别(NER):使用BioBERT模型标注疾病、药物、基因等实体 ```python from transformers import AutoTokenizer, AutoModelForTokenClassification tokenizer = AutoTokenizer.from_pretrained("dmis-lab/biobert-v1.1") model = AutoModelForTokenClassification.from_pretrained("dmis-lab/biobert-v1.1") ``` - 关系抽取:构建基于规则+深度学习的混合系统 $$ P(r|e_1,e_2) = \text{softmax}(W[h_{e_1}||h_{e_2}]]) $$ 其中$h_{e_1}$$h_{e_2}$是实体表示向量[^4] #### 二、知识图谱构建 1. **本体建模** - 参考UMLS语义网络定义核心医学本体: ```prolog Class: Disease SubClassOf: hasSymptom some Symptom ObjectProperty: treats Domain: Drug Range: Disease ``` 2. **知识融合** - 使用OpenEA框架进行多源实体对齐: $$ \text{sim}(e_1,e_2) = \cos(\text{TransE}(e_1), \text{TransE}(e_2)) $$ - 应用Dedupe库解决数据冲突问题[^3] #### 三、TransE嵌入训练 1. **三元组表示** - 构建形式化表示:$(h,r,t) \in \mathcal{K}$,例如$(阿司匹林, treats, 冠心病)$ 2. **损失函数设计** $$ \mathcal{L} = \sum_{(h,r,t)\in\mathcal{T}} \sum_{(h',r,t')\in\mathcal{T}'} [\gamma + f(h,r,t) - f(h',r,t')]_+ $$ 其中$\gamma$为间隔参数,$f(h,r,t) = \|h + r - t\|_2$ 3. **参数设置** - 向量维度:256 - 学习率:0.001 - 负采样比例:1:5 #### 四、BERT模型融合 1. **联合表示架构** ```python class MedBERT(nn.Module): def __init__(self): super().__init__() self.bert = BertModel.from_pretrained('biobert') self.transe = TransE(kg) self.fusion = nn.Linear(768+256, 768) def forward(self, input_ids, entities): text_emb = self.bert(input_ids).last_hidden_state kg_emb = self.transe(entities) return self.fusion(torch.cat([text_emb, kg_emb], dim=-1)) ``` 2. **注意力融合机制** $$ \alpha = \text{softmax}(QK^T/\sqrt{d}) $$ 其中$Q$来自BERT输出,$K$来自TransE嵌入[^4] #### 五、应用场景(引用[^2]) 1. **智能问诊系统** ```python def answer_question(question): entities = extract_entities(question) # 实体识别 kg_info = kg.query(entities) # 知识图谱查询 answer = fused_model.generate(question, kg_info) return answer ``` 2. **药物副作用预测** $$ P(\text{side\_effect}|drug) = \text{MLP}([\text{BERT}(drug); \text{TransE}(drug)]) $$ #### 六、工程化实现(引用[^3]) 1. **工具链配置** ```mermaid graph TD A[数据采集] --> B(Neo4j存储) B --> C{TransE训练} C --> D[BERT微调] D --> E[API服务] ``` 2. **性能优化** - 使用DGL进行图神经网络加速 - 采用混合精度训练 - 部署知识图谱缓存机制
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值