文章 姚 鑫 · 21 分钟 前 阅读大约需 2 分钟 第一章 I O 输入 输出简介 第一章 I/O 输入/输出简介 本页概括地描述了如何在 IRIS 数据平台应用程序中以及在 IRIS 提示符下使用 I/O 设备。 介绍 IRIS 数据平台为多种不同类型的逻辑和物理设备提供支持。支持的逻辑设备包括: - 主要装置 - 文件 - 管道 - TCP连接 - 作业间通信 (IJC) 设备用于在 IRIS 进程之间进行通信 - 假脱机程序 支持的物理设备包括 终端 打印机 I/O 命令概述 I/O 命令允许拥有、使用、读取、写入和关闭设备。要将 I/O 操作定向到设备,请首先发出以下命令: #InterSystems IRIS for Health 0 0 0 1
文章 Michael Lei · 十月 24 阅读大约需 1 分钟 InterSystems FAQ 常见问题系列--命名空间和数据库的最大数量 InterSystems FAQ 一个实例上的最大命名空间数量是 2047. 但是,要使用这么大量的命名空间,你需要相应地配置好内存。 一个实例里可以创建的数据库的最大数量(包括远程数据库) 15998. 根据授权的类型,可能会有所限制。具体细节请参考以下文档。Database Configuration [IRIS]Database Configuration #数据库 #系统管理 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 11
文章 姚 鑫 · 十月 24 阅读大约需 1 分钟 第五十五章 安全元素的详细信息 - ReferenceList 详情 第五十五章 安全元素的详细信息 - 详情 本节讨论在消息头中用作 <Security>子元素的 <ReferenceList> 元素。当以这种方式使用 <ReferenceList> 时,可以在签名之前执行加密。以下显示了此元素的一个示例: #InterSystems IRIS for Health 1 0 0 5
文章 姚 鑫 · 十月 23 阅读大约需 1 分钟 第五十四章 安全元素的详细信息 - DerivedKeyToken 详情 第五十四章 安全元素的详细信息 - 详情 <DerivedKeyToken> 的目的是携带发送者和接收者可以独立使用的信息来生成相同的对称密钥。这些方可以使用该对称密钥对 SOAP 消息的相关部分进行加密、解密、签名和签名验证。 以下显示了部分示例: #InterSystems IRIS for Health 0 0 0 6
文章 姚 鑫 · 十月 22 阅读大约需 1 分钟 第五十三章 安全元素的详细信息 - Signature 详情 第五十三章 安全元素的详细信息 - 详情 <Signature>的目的是携带可由消息接收者验证的数字签名。可以使用数字签名来检测消息更改,或者只是验证消息的某个部分是否确实由列出的实体生成。与传统的手写签名一样,数字签名是对文档的附加,只能由文档的创建者创建,并且不易伪造。 以下显示了部分示例: #InterSystems IRIS for Health 0 0 0 5
文章 姚 鑫 · 十月 21 阅读大约需 1 分钟 第五十二章 安全元素的详细信息 - EncryptedData 详情 第五十二章 安全元素的详细信息 - 详情 <EncryptedData> 的作用是携带加密数据,部分示例如下: #InterSystems IRIS for Health 1 0 0 5
文章 姚 鑫 · 十月 20 阅读大约需 2 分钟 第五十一章 安全元素的详细信息 - EncryptedKey 详情 第五十一章 安全元素的详细信息 - 详情 详情 该元素的各部分如下: <EncryptionMethod> 表示用于加密对称密钥的算法。 在 IRIS 中,可以指定密钥传输算法(由 <EncryptionMethod> 的 Algorithm 属性显示)。请参阅指定密钥传输算法。 #InterSystems IRIS for Health 0 0 0 8
文章 姚 鑫 · 十月 17 阅读大约需 2 分钟 第五十章 安全元素的详细信息 第五十章 安全元素的详细信息 本主题讨论 SOAP 消息中较常见的安全元素,特别是 IRIS Web 服务和客户端可以发送的变体。此信息旨在帮助那些不经常使用 SOAP 的人重温记忆。此处的详细信息也可能有助于故障排除。 <BinarySecurityToken> <BinarySecurityToken> 的目的是携带消息中其他元素使用的安全凭证,供消息接收者使用。安全凭证以序列化、编码的形式携带。以下显示了部分示例: #InterSystems IRIS for Health 0 0 0 10
文章 姚 鑫 · 十月 16 阅读大约需 1 分钟 第四十九章 解决安全问题 - 可能出现的错误 第四十九章 解决安全问题 - 可能出现的错误 可能出现的错误 本节讨论 IRIS Web 服务和 Web 客户端中可能出现的与安全相关的错误: 如果刚刚生成了 IRIS Web 服务或客户端,则可能尚未配置为识别 WS-Security 标头。在这种情况下,当您尝试执行 Web 方法时,会收到如下一般错误: <ZSOAP>zInvokeClient+269^%SOAP.WebClient.1 将以下内容添加到Web服务或客户端并重新编译: Parameter SECURITYIN="REQUIRE"; 这种一般错误也可能是由于错误地调用 Web 方法(例如,在 Web 方法没有返回值时引用返回值)造成的。 如果使用 WS-Policy,则此项不适用。 #InterSystems IRIS for Health 1 0 0 7
文章 姚 鑫 · 十月 15 阅读大约需 2 分钟 第四十八章 解决安全问题 第四十八章 解决安全问题 本主题提供信息来帮助识别 IRIS 中 SOAP 安全问题的原因。 有关与安全无关的问题的信息,请参阅 IRIS 中的 SOAP 问题故障排除。 故障排除所需的信息 要解决 SOAP 问题,通常需要以下信息: #InterSystems IRIS for Health 1 0 0 9
文章 姚 鑫 · 十月 14 阅读大约需 2 分钟 第四十七章 创建和添加 SAML 令牌 - SubjectConfirmation与 EncryptedKey 第四十七章 创建和添加 SAML 令牌 - 与 <SubjectConfirmation>与 <EncryptedKey> 要添加带有 <SubjectConfirmationData>(其中包含 <EncryptedKey> 元素)的 <SubjectConfirmation>,请执行以下操作: 按照以编程方式检索凭证集中所述,创建 %SYS.X509Credentials 的实例。 或者使用与签署断言时使用的相同凭证集。 #InterSystems IRIS for Health 0 0 0 12
文章 姚 鑫 · 十月 13 阅读大约需 2 分钟 第四十六章 创建和添加 SAML 令牌 - SubjectConfirmation 使用方法 Holder-of-key 第四十六章 创建和添加 SAML 令牌 - 使用方法 Holder-of-key 添加<Subject>元素 要将 <Subject> 元素添加到 %SAML.Assertion 实例,执行以下操作: 1. 创建 %SAML.Subject 的新实例。 2. 根据需要设置主题的属性。 3. 将断言对象的 Subject 属性设置为等于此实例。 添加 <SubjectConfirmation> 元素 要将 <SubjectConfirmation> 元素添加到的 %SAML.Assertion 实例,请使用以下某个小节中的步骤。 #InterSystems IRIS for Health 0 0 0 7
文章 姚 鑫 · 十月 11 阅读大约需 2 分钟 第四十五章 创建和添加 SAML 令牌 - 变体:不使用 BinarySecurityToken 第四十五章 创建和添加 SAML 令牌 - 变体:不使用 变体:不使用 <BinarySecurityToken> <BinarySecurityToken> 包含序列化、base-64 编码格式的证书。可以忽略此令牌,而改用标识证书的信息;接收方使用此信息从相应位置检索证书。为此,请使用上述步骤,并进行以下更改: #InterSystems IRIS for Health 0 0 0 9
文章 姚 鑫 · 十月 10 阅读大约需 3 分钟 第四十四章 创建和添加 SAML 令牌 第四十四章 创建和添加 SAML 令牌 本主题描述如何将SAML 令牌添加到 WS-Security 标头元素。 另请参阅 %SAML.Assertion 的类参考和相关类。 未实现完整的 SAML 支持。 IRIS 中的 SAML 支持仅指 IRIS 中的 WS-Security 支持中列出的详细信息。 概述 借助 IRIS SOAP 支持,可以将 SAML 令牌添加到 WS-Security 标头元素。 #InterSystems IRIS for Health 0 0 0 9
文章 Nicky Zhu · 十月 10 阅读大约需 7 分钟 FHIRValidation - 用IRIS验证你自己的FHIR IG 本演示程序用于展示如何采用自定义FHIR profile来验证数据合规性。自定义FHIR实施指南基于FHIR R4版本开发,在本例中实现了对Organization资源的扩展并用于验证数据的合规性。 #Docker #FHIR #Git #GitHub #HL7 #JSON #REST API #InterSystems IRIS for Health Open Exchange app 1 0 0 22
文章 姚 鑫 · 十月 9 阅读大约需 3 分钟 第四十三章 使用 WS-ReliableMessaging - 对 WS-ReliableMessaging 标头进行签名 第四十三章 使用 WS-ReliableMessaging - 对 WS-ReliableMessaging 标头进行签名 对 WS-ReliableMessaging 标头进行签名 可以通过以下任一方式签署 WS-ReliableMessaging 标头。 使用 SecurityContextToken 对标头进行签名 如果还使用 WS-SecureConversation,则 Web 客户端的 SecurityContextToken 属性包含一个对称密钥,可以使用该密钥对 WS-ReliableMessaging 标头元素进行签名。为此,请在调用 %SOAP.RM.CreateSequence实例的 AddSTR() 方法,并将 SecurityContextToken 属性作为参数传递: #InterSystems IRIS for Health 0 0 0 6
文章 Jingwei Wang · 十月 9 阅读大约需 2 分钟 在 IRIS 中使用 Foreign Table(外部表) Foreign Table 的概念 Foreign Table 是 IRIS SQL 中一种特殊类型的表。它不代表 IRIS 本地全局管理的数据,而是投射出来的,由 “外部服务器 ”管理的外部数据。从 SQL 的角度来看,外部表与普通表一样,可以在查询中使用,没有任何特定限制。 在数据编织中可以帮助整合不同的来源的数据,以支持各种应用、分析并提供智能洞察力。 #InterSystems IRIS for Health 1 0 0 10
文章 姚 鑫 · 十月 8 阅读大约需 2 分钟 第四十二章 使用 WS-ReliableMessaging 第四十二章 使用 WS-ReliableMessaging IRIS 支持 WS-ReliableMessaging 规范的部分内容,如简介中所述。此规范提供了一种按顺序可靠地传递一系列消息的机制。本页介绍如何手动使用可靠消息传递。 从 Web 客户端发送一系列消息 要将一系列消息从 IRIS Web 客户端可靠地发送到支持 WS-ReliableMessaging 的 Web 服务,请执行以下操作: 根据需要指定 Web 客户端的安全标头元素。 如果正在使用 WS-SecureConversation,请启动安全对话。 调用 %SOAP.RM.CreateSequence的 Create() 类方法。这将返回该类的一个实例。 此方法具有以下签名: #InterSystems IRIS for Health 1 0 0 8
文章 Louis Lu · 十月 8 阅读大约需 5 分钟 FHIR Object Model 简介 挑战 在使用FHIR进行开发的过程中,我们会面对海量的FHIR规范中定义的数据结构,具体来说在FHIR规范中定义了超过150个资源、700多个资源内元素。每个定义里都包括了对自身结构的描述以及数据约束、数据绑定值集等。对于一个开发人员要记住这些内容非常困难。 同时FHIR数据,特别是Json格式的FHIR数据是典型的“有向图”结构,它的资源中嵌套元素定义、集合以及复杂的资源间“关系”,在这些复杂结构的数据间导航并操作,非常困难。 解决方案 在InterSystems IRIS for Health 2024.1之前,我们会将FHIR数据以Json文档的方式载入 %DynamicAbstractObject,例如下面的代码 #InterSystems IRIS for Health 2 0 0 24
InterSystems 官方 Michael Lei · 十月 7 通过近似最近邻索引(已在向量搜索抢先体验计划中实现)加快向量搜索速度 我们最近在向量搜索抢险体验计划中提供了新版的 InterSystems IRIS,新版本采用了新的基于分层可导航小世界 (HNSW) 索引算法的近似最近邻索引。 这一新增功能可对大型向量数据集进行高效的近似最近邻搜索,从而显著提高查询性能和可扩缩性。 HNSW 算法旨在通过构建基于图形的结构来优化高维数据的向量搜索,从而更快地在大型向量集合中找到近似邻。 无论您使用的是推荐系统、自然语言处理,还是其他机器学习应用,HNSW 都能显著缩短搜索时间,同时允许您调整准确度水平,但准确度提高的代价是查询时间变慢。 HNSW 的主要优点包括: #Natural Language Processing #Vector Search #图形 #性能 #抢先体验计划(EAP) #测试 #索引 #InterSystems IRIS #InterSystems IRIS for Health #InterSystems 官方 0 0 0 6
文章 姚 鑫 · 十月 7 阅读大约需 2 分钟 第四十一章 创建安全对话 - 使用 SecurityContextToken 第四十一章 创建安全对话 - 使用 在 Web 服务使用 <SecurityContextToken>, 做出响应后,客户端实例和服务实例可以访问相同的对称密钥。有关此密钥的信息包含在两个实例的 SecurityContextToken 属性中。建议的程序如下: 在客户端中,将 SecurityOut 属性设置为 null,以删除请求消息中使用的安全标头。 在 Web 服务中不需要这样做,因为 Web 服务会在每次调用后自动清除安全标头。 #InterSystems IRIS for Health 1 0 0 7
文章 姚 鑫 · 十月 7 阅读大约需 3 分钟 第四十章 创建安全对话 - 启用 IRIS Web 服务以支持 WS-SecureConversation 第四十章 创建安全对话 - 启用 IRIS Web 服务以支持 WS-SecureConversation 启用 IRIS Web 服务以支持 WS-SecureConversation 当 Web 客户端向 Web 服务发送请求安全对话的消息时,安全对话就开始了。作为响应,Web 服务发送双方都可以使用的 <SecurityContextToken>。 要使 IRIS Web 服务能够使用此令牌进行响应,请重写 Web 服务的 OnStartSecureConversation() 方法。此方法具有以下签名: #InterSystems IRIS for Health 1 0 0 14
文章 姚 鑫 · 十月 4 阅读大约需 3 分钟 第三十九章 创建安全对话 第三十九章 创建安全对话 IRIS 支持安全对话,遵循 WS-SecureConversation 1.3 规范。本页介绍如何手动创建安全对话。 概述 在安全对话中,Web 客户端向 Web 服务发出初始请求并接收包含 <SecurityContextToken> 的消息。此元素包含双方都可以使用的对称密钥的信息。此信息指的是只有双方知道的共享密钥。然后双方可以在后续交换中使用对称密钥,直到令牌过期或客户端取消令牌。 双方不应该直接使用 <SecurityContextToken> 执行这些任务(不推荐),而应该从中生成一个 <SecurityContextToken>,然后使用它进行加密、签名、解密和签名验证。 共享密钥可以通过以下任一方式指定: #InterSystems IRIS for Health 1 0 0 14
文章 姚 鑫 · 十月 3 阅读大约需 3 分钟 第三十八章 验证和解密入站消息 - 实例身份验证和 WS-Security 第三十八章 验证和解密入站消息 - 实例身份验证和 WS-Security 实例身份验证和 WS-Security 了解 IRIS 网络服务有两个独立的机制在起作用是很有用的:IRIS 服务器和网络服务代码。 在管理门户中,您可以为 Web 应用程序指定允许的身份验证模式,从而控制对 %Service_WebGateway 服务的访问。(有关详细信息,请参阅时间戳和用户名令牌示例。有关更多背景信息,请参阅 Web 应用程序。)如果您选择密码选项,则 Web 应用程序可以接受 IRIS 用户名/密码对;这称为实例身份验证。 除此之外,Web 服务还可以要求 IRIS 用户名/密码对。 这些机制协同工作如下: #InterSystems IRIS for Health 1 0 0 13
文章 姚 鑫 · 十月 1 阅读大约需 2 分钟 第三十七章 结合加密和签名 - 安全标头元素的顺序 第三十七章 验证和解密入站消息 本主题介绍如何验证 IRIS Web 服务或 Web 客户端收到的消息中的安全元素(并自动解密任何加密内容)。 概述 IRIS 网络服务和网络客户端可以验证入站 SOAP 消息的 WS-Security 标头元素,以及自动解密入站消息。 IRIS Web 服务和 Web 客户端还可以处理已签名的 SAML 断言令牌并验证其签名。但是,验证 SAML 断言的详细信息是您的应用程序的责任。 如果使用安全策略,所有上述活动都是自动的。 在所有场景中,IRIS 都使用其根颁发机构证书集合;请参阅设置和其他常见活动。 验证 WS-Security 标头 要验证任何入站 SOAP 消息中包含的 WS-Security 标头元素,请执行以下操作: #InterSystems IRIS for Health 0 0 0 11
文章 姚 鑫 · 九月 30 阅读大约需 2 分钟 第三十六章 结合加密和签名 - 使用对称密钥签名并加密 第三十六章 结合加密和签名 - 使用对称密钥签名并加密 使用对称密钥签名并加密 签名然后加密(使用对称密钥时): 按照使用<DerivedKeyToken> 进行加密中的步骤进行操作。 按照使用<DerivedKeyToken> 进行签名中的步骤进行操作。 使用元素 以下示例使用对称密钥进行签名和加密。它使用消息接收者的公钥创建一个 <EncryptedKey>元素,然后使用该元素生成两个 <DerivedKeyToken> 元素,一个用于签名,一个用于加密: #InterSystems IRIS for Health 0 0 0 14
文章 姚 鑫 · 九月 29 阅读大约需 3 分钟 第三十五章 结合加密和签名 第三十五章 结合加密和签名 可以在同一条消息中加密和签名。在大多数情况下,只需组合前面主题中给出的方法即可。本主题讨论了多种场景。 使用非对称密钥签名并加密 要签名然后加密(使用非对称密钥时),请执行以下操作: 按照添加数字签名中的步骤进行操作。 按照加密安全标头元素中的步骤进行操作。 或者按照加密 SOAP 主体中的步骤进行操作。 使用非对称密钥加密并签名 要仅加密 SOAP 主体,然后添加数字签名(使用非对称密钥时),请执行以下操作: 按照加密 SOAP 主体中的步骤进行操作。 按照添加数字签名中的步骤进行操作。 要加密任何安全标头元素,然后添加数字签名(使用非对称密钥时),必须使用顶级 <ReferenceList> 元素(在文档的其他地方不需要)。在这种情况下,请执行以下操作: #InterSystems IRIS for Health 0 0 0 11
文章 姚 鑫 · 九月 26 阅读大约需 2 分钟 第三十四章 使用派生密钥令牌进行加密和签名 - 使用 DerivedKeyToken 进行签名 第三十四章 使用派生密钥令牌进行加密和签名 - 使用 进行签名 要使用 <DerivedKeyToken>进行签名,请使用以下步骤: 如果想要签署任何安全标头元素,请创建这些安全标头元素。 创建 <DerivedKeyToken> 并将其添加到 WS-Security 标头,如创建和添加 <DerivedKeyToken> 中所述。 请注意,此步骤还会创建并添加 <DerivedKeyToken> 所基于的 <EncryptedKey> 元素。 #InterSystems IRIS for Health 0 0 0 9
文章 姚 鑫 · 九月 25 阅读大约需 1 分钟 第三十三章 使用派生密钥令牌进行加密和签名 - 使用 DerivedKeyToken _进行加密(一) 第三十三章 使用派生密钥令牌进行加密和签名 - 使用 进行加密(一) 如果加密了任何安全标头元素,请将它们添加到 WS-Security 标头元素中。为此,请调用 Web 客户端或 Web 服务的SecurityOut 属性的 AddSecurityElement() 方法。在这种情况下,需要两个参数: a. 安全标头元素(而不是从中生成的的 %XML.Security.EncryptedData)。 b. 引用列表实例。第二个参数指定将第一个参数指定的项目放在何处。如果参数是 A、B,则 IRIS 确保 A 在 B 之后。指定此项以便收件人首先处理引用列表,然后再处理依赖于它的加密安全标头元素。 #InterSystems IRIS for Health 0 0 0 8
文章 姚 鑫 · 九月 24 阅读大约需 2 分钟 第三十二章 使用派生密钥令牌进行加密和签名 - 使用 DerivedKeyToken 进行加密 第三十二章 使用派生密钥令牌进行加密和签名 - 使用 进行加密 要使用 <DerivedKeyToken> 进行加密,请使用以下步骤: 如果要加密一个或多个安全标头元素,请创建这些安全标头元素。. 创建 <DerivedKeyToken> 并将其添加到 WS-Security 标头,如创建和添加 <DerivedKeyToken> 中所述。 请注意,此步骤还会创建并添加 <EncryptedKey> 所基于的 <EncryptedKey> 元素。 #InterSystems IRIS for Health 0 0 0 10