Nova postagem

Pesquisar

Discussão (3)4
Entre ou crie uma conta para continuar
Artigo
· Ago. 26, 2024 2min de leitura

在 Linux 上配置 IRIS 自动启动功能

出于实际原因,可能需要在 Linux 服务器重启后自动启动 IRIS 实例。

下面是在 Linux 服务器重启时通过 systemd 自动启动 IRIS 的步骤:

1. 在 /etc/systemd/system/iris.service 中创建一个 iris.service 文件,其中包含以下信息

[Unit]
Description=InterSystems IRIS Data Platform
After=network.target

[Service]
Type=forking
User=irisusr
ExecStart=/usr/bin/iris start iris
ExecStop=/usr/bin/iris stop iris quietly
Restart=on-failure
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

注意:User应该填入IRIS实例的所有者。

2. 重新加载 systemd 配置管理器

sudo systemctl daemon-reload

3. 启用IRIS服务,使其自动启动

sudo systemctl enable iris

激活后将创建软链接,自动启动 IRIS:

Synchronizing state of iris.service with SysV service script with /usr/lib/systemd/systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable iris
Created symlink /etc/systemd/system/multi-user.target.wants/iris.service → /etc/systemd/system/iris.service.

4. 试着重启服务器

sudo reboot

5. 查看IRIS实例是否自动启动

ssh guilbaud@192.168.102.130
guilbaud@192.168.102.130's password: 
Welcome to Ubuntu 24.04 LTS (GNU/Linux 6.8.0-36-generic x86_64)
$ iris all
    Instance Name     Version ID        Port   Directory
    ----------------  ----------------  -----  --------------------------------
up >IRIS              2024.1.0.267.2    1972   /usr/irissys
Discussão (0)1
Entre ou crie uma conta para continuar
Artigo
· Ago. 26, 2024 3min de leitura

第八章 创建和使用策略

第八章 创建和使用策略

本主题介绍如何在 IRIS 中使用 WS-Policy 支持。WS-Policy 使您能够指定要使用或预期的 WS-Security 标头。它还使能够指定 WS-Addressing 标头和 MTOM 的使用(在创建 Web 服务和 Web 客户端中描述)。可以在单独的类中创建策略,而不是直接编辑 Web 服务或 Web 客户端。在大多数情况下,不需要进行低级编程。

概述

IRIS 中,Web 服务或客户端的策略(或策略集合)包含在单独的配置类中,即 %SOAP.Configuration的子类。编译该类时,策略生效。

通常不需要编码。但是,在某些情况下,可以通过编程指定详细信息,而不是将该元素硬编码到策略中。

Discussão (0)1
Entre ou crie uma conta para continuar
Artigo
· Ago. 26, 2024 1min de leitura

Unwrap roles recursively

Recently I got into a situation where a user had some roles, which granted additional roles, and so on.

As I did not understand where a particular permission came from, I wrote this code which gets an initial set of roles and unwraps them recursively, accounting for any repeats.

/// Recursively unwraps roleset.
/// Accounts for circular dependencies and repeats.
Class Utils.Roles
{

/// roles: comma-separated string of roles
/// showResources: show resources in addition to roles.
/// do ##class(Utils.Roles).Display
ClassMethod Display(roles As %String, showResources As %Boolean = {$$$NO})
{
	new $namespace
	set $namespace = "%SYS"
	set roles = $lfs(roles)
	set i=0
	while i<$ll(roles) {
		do $i(i)
		set role = $lg(roles, i)
		continue:$d(processed(role))=1
		write "Current role: ", role,!
		
		write "Grants roles: "
		set sc = ##class(Security.Roles).Get(role, .p)
		for j=1:1:$l($g(p("GrantedRoles")),",") {
			set grantedrole = $p(p("GrantedRoles"),",", j)
			continue:grantedrole=""
			continue:$lf(roles, grantedrole)
			
			write grantedrole, ", "	
			
			set roles = roles _ $lb(grantedrole)
		}
		
		write:showResources !, "Grants resources: ", p("Resources")
		write !
	}
}

}
 
Spoiler

Code.

2 Comments
Discussão (2)2
Entre ou crie uma conta para continuar
Anúncio
· Ago. 26, 2024

[Video] IA Generativa em Uso

Olá, Comunidade!

Você acha que a IA Generativa pode tornar sua vida mais fácil? Veja alguns casos de uso em potencial para GenAI no vídeo mais recente do Learning Services:

Generative AI in Use

Descubra como o GenAI está impactando tudo, desde a área da saúde até o desenvolvimento de software, e como ele pode ser usado para melhorar a produtividade e aumentar a eficiência.

👩‍💻 Pronto para tentar você mesmo?
Aprenda como melhorar suas habilidades de escrita de prompts para aproveitar ao máximo a IA generativa (exercício, 40m).

Discussão (0)1
Entre ou crie uma conta para continuar