検索

Question
· Juil 15

Read-Only Role for HealthShare Messaging and Production Monitoring, to assign it to a new user.

Hello InterSystems Community,

I'm working with HealthShare, and need to create a user account for our development environment with specific access requirements. This user will need only to:

    Review messaging and environments
    See production and namespaces
    NOT modify anything (read-only access)

After reviewing the documentation on user roles and rights management, I can see the default roles available in our system include:

Ensemble/Interoperability Roles:

    %EnsRole_Administrator - Interoperability Administrator
    %EnsRole_AlertAdministrator - Interoperability user with administrative Alert access
    %EnsRole_AlertOperator - Interoperability user with Alert access
    %EnsRole_Developer - Interoperability Developer
    %EnsRole_Monitor - Interoperability Monitor
    %EnsRole_Operator - Interoperability Operator

HealthShare Specific Roles:

    %HS_Administrator
    %HS_Clinician
    %HS_Clerical
    Various BFC (Business Function Component) related roles

My Question:

Is there a predefined role in HealthShare that would allow a user to:

    View and navigate through production environments
    Access messaging systems for monitoring/troubleshooting
    Review system status and incidents (event logs)
    BUT prevent any editing or modification capabilities

I'm particularly interested in the %EnsRole_Monitor role - would this be appropriate for read-only access to messaging and production monitoring?

Or should I be looking at creating a custom role by combining specific privileges? If so, what would be the recommended approach for a read-only monitoring user?

Any guidance on best practices for this type of user setup would be greatly appreciated.

Thank you.

I have also read, before asking here:

    https://community.intersystems.com/post/user-roles-and-rights-management
    
    https://docs.intersystems.com/iris20241/csp/docbook/Doc.View.cls?KEY=GSA...
    
    https://docs.intersystems.com/iris20241/csp/docbook/Doc.View.cls?KEY=GSA...
    

Thank you again sincerely.

2 Comments
Discussion (2)2
Connectez-vous ou inscrivez-vous pour continuer
Question
· Juil 15

I think I am getting an error with a CSP Page, "Invalid action", what does this mean?

I am doing a form POST to myself (same class) and when I do the form action it gets a page similar to the error page but just says:

Invalid action

There is nothing in the application error log. How can I troubleshoot this?

1 Comment
Discussion (1)2
Connectez-vous ou inscrivez-vous pour continuer
Article
· Juil 15 4m de lecture

IRISのプロセス(処理)を停止させる方法

これは InterSystems FAQ サイトの記事です。

IRISのプロセスを終了したい場合、管理ポータルから行う方法と、ターミナルからユーティリティやコマンドを使用して行う方法があります。

こちらのトピックでは、以下の3つの方法で停止する方法をご紹介します。

【プロセスの停止方法】
1.管理ポータルから停止する方法
2.ユーティリティーで停止する方法(RESJOB、JOBEXAM)
3.プログラムで停止する方法


【注意】
IRIS外から(Windowsならタスクマネージャーなど)、プロセスの終了は絶対に行わないでください。

IRIS外からプロセス終了してしまうと、IRIS内部ではプロセスの削除を検知できなかったりすることで、IRISの動作が不安定になったり、システム全体がハングする危険性がありますので、ご注意ください。

外部から停止の例外が一つだけあります。
$ZF コマンドによって起動された子プロセスが、何らかの問題で応答を返さなかった場合、$ZF コマンドを実行した親プロセスはそのまま残り続けます。
そのような親プロセスを終了したい場合、通常の上記1~3の方法では停止できません。
その際は、先に外部から子プロセスを停止する必要があります。子プロセスを特定するためには、以下の方法があります。

例:Windowsの場合
1. process explorer(マイクロソフト製)
2. PowerShell コマンド
   PS>wmic Process where '(parentprocessid=10188)' get 'processid,executablepath'


では、以下に通常のプロセスを停止する方法をご紹介します。
 

1.管理ポータルから停止する方法

システムオペレーション > プロセス
よりプロセス一覧を表示し、終了したいプロセスの 詳細 リンクをクリックし、詳細ページを開きます。

 

終了ボタンをクリックすると、モーダルダイアログが開くので、終了ボタンを押してプロセスを終了します。

 


 

2.ユーティリティーで停止する方法(RESJOB、JOBEXAM)

管理者権限でターミナルにログインし、ユーティリティを実行します。

★RESJOB

USER>zn "%SYS"
%SYS>do ^RESJOB
Force a process to quit InterSystems IRIS
 
Process ID (? for status report): 56528   // 終了したいプロセスIDを入力+Enter で終了する
Process ID (? for status report):         // Enter で抜ける( ? を入れるとプロセス一覧が表示される)
%SYS>

★JOBEXAM

%SYS>do ^JOBEXAM
                IRIS for Windows (x86-64) 2025.1 (Build 225_1U)
 Job# NSpace  Routine        Commands   Globals State      PID Current device
    1         CONTROL               0         0 RUNW     66824
    2         WRTDMN               26       357 RUNW     18340
    3         GARCOL                0         0 RUNW     48172
    4         JRNDMN              156        25 RUNW     44180
    5         EXPDMN                0         0 RUNW     46292
    6 %SYS    %SYS.WorkQueueMgr133834     13242 SEMW     42112 //./nul
    7 %SYS    MONITOR           31238        78 EVTW     62572 //./nul
    8 %SYS    CLNDMN                0        21 RUNW     58484 //./nul
    9 %SYS    LMFMON             1587        80 EVTW     17168 //./nul
   10 %SYS    RECEIVE             795        97 HANGW    17212 //./nul
   11 USER    shell               362        37 READ     41016 |TRM|:|41016   // これを終了する場合
   12 %SYS    %SYS.WorkQueueMgr 77088      7396 EVTW      3848 //./nul
   13 %SYS    %SYS.SERVER           0        17 READ     48840 1972:
   14 %SYS    %SYS.TaskSuper     2073       135 EVTW     22480 //./nul
   15 %SYS    SYS.VSSWriter         0        14 RUNW      6884 //./nul
   16 %SYS    %SYS.Monitor.Co<5697596   2242094 EVTW     26840 //./nul
   17 %SYS    %SYS.WorkQueueMgr  4763       156 SEMW     39616 //./nul
   19 %SYS    %SYS.sqlcq.uEidd<133559      1338 RUN      37884 |TRM|:|37884
(N)ext,(P)rev,(G)oto,(E)xamine,(T)erminate,(S)uspend,(R)esume,(Q)uit =>       // T 押下(Terminate)
Terminate: Enter Job # or "P" followed by the PID: P41016                     // P+プロセスID または Job番号を入力+EnterJob Terminated でプロセスが終了する


3.プログラムで停止する方法

USER>zn "%SYS"
%SYS>do $SYSTEM.Process.Terminate(17456)   // ^RESJOB ユーティリティと同じ。プロセスIDを指定して終了する
%SYS>
 
%SYS>do $SYSTEM.Process.Terminate()        // 自分自身(現在の)プロセスを終了する場合
Discussion (0)0
Connectez-vous ou inscrivez-vous pour continuer
Article
· Juil 15 2m de lecture

Comparación entre Python y cuadros de mando

En el artículo anterior, os hablamos sobre Python y los cuadros de mando, y en este artículo los compararé entre sí. Si estáis a punto de comenzar con la visualización en Python, la cantidad de librerías y soluciones definitivamente os sorprenderá.

 

  • matplotlib
  • Seaborn
  • Plotly
  • bokeh
  • Altair
  • Folium

 

Una visualización en algunas librerías, como Matplotlib, es una imagen estática simple, lo cual es útil para explicar conceptos (en un documento, en diapositivas o en una presentación).

Otras librerías como Altair, Bokeh y Plotly permiten crear gráficos interactivos que los usuarios pueden explorar interactuando con ellos.

¿Qué debéis saber sobre la sintaxis y la flexibilidad?

Las librerías de bajo nivel como Matplotlib os permiten hacer lo que queráis, pero a costa de una API más compleja. Algunas librerías, como Altair, son muy declarativas, lo que facilita representar vuestros datos.

Un breve resumen de lo más importante, para ayudaros a tomar la decisión correcta.

Con Matplotlib se puede crear cualquier cosa, pero los gráficos complejos pueden requerir mucho más código que con otras librerías.

Plotly es excelente para crear gráficos interactivos y de alta calidad con solo unas pocas líneas de código.

Altair es ideal para crear gráficos complejos para mostrar estadísticas. Altair no puede manejar más de 5.000 instancias de datos, y algunos de sus gráficos simples son inferiores en estilo a los de Plotly o Seaborn.

Bokeh es la única librería cuya interfaz va de bajo a alto nivel, lo que facilita la creación de gráficos tanto versátiles como complejos. Sin embargo, el precio de esto es que generalmente se necesita más código para generar gráficos de calidad similar a los de otras librerías.

Folium permite crear un mapa interactivo con solo unas pocas líneas de código. Ofrece una experiencia similar a la de usar Google Maps.

En conclusión, quiero decir que acabáis de conocer seis herramientas de visualización diferentes. Espero que este artículo os haya dado una idea de las capacidades de cada librería y cuándo utilizarlas. Si aún no sabéis qué librería usar para vuestros datos, simplemente elegid la que más os guste.

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer
Article
· Juil 14 6m de lecture

Windows に Apache Web サーバをインストールし Web ゲートウェイを構成する方法

これは InterSystems FAQ サイトの記事です。

InterSystems 製品の Windows 版インストールキットでは、IIS に対して Web ゲートウェイをインストールするインストールキットの提供はありますが、Windows にインストールした Apache に対するインストールキットが提供されていないため、以下の手順で Web ゲートウェイを構成します。

1、InterSystems 製品のインストール

2、Apache for Windows のインストール

3、Windows 版 Web ゲートウェイのインストール(※)

4、https.conf の修正

5、Apache を Windows サービスにインストールし開始する

6、Web ゲートウェイ管理画面で各種設定

(※)Windows 版 Web ゲートウェイのインストールキットは WRC よりダウンロードいただけます。

 

以下、手順詳細です。

インストール時、インスタンス名を IRISTEST、インストールディレクトリを c:\InterSystems\IRISTEST に設定した流れでの図解で解説しています。

例では、http://Webサーバ/インスタンス名/csp/sys/UtilHome.csp で管理ポータルへアクセスできるようにするための設定例で記載しています。

 

1、InterSystems 製品のインストール

バージョン 2023.2 以降では、Windows 版 InterSystems 製品 のインストールキットから以下確認が表示されます。
この説明では、IIS ではなく Apache を使用する例で記載していますので、「このインスタンスにローカルIIS Webサーバを設定しないでください」(または「Webゲートウェイなしでインストールを続行する」) を選択しています。

注意:インストール後、Apacheに対する設定が完了するまで管理ポータルは開きません。

 

また、インストール時の初期セキュリティで「通常」または「ロックダウン」を選択された場合は、CSPSystemアカウントに対して設定したパスワードをメモしておいてください(この後の手順で使用します)。

 

2、Apache for Windows のインストール

インストールキットを入手します:https://www.apachelounge.com/download/

ダウンロード後、Zipを展開するとApache24フォルダがありますので任意のディレクトリにコピーします。

例では、C:¥Apache24 に展開しています。

 

3、Windows 版 Web ゲートウェイのインストール

Windows 版 Web ゲートウェイをインストールします(WRCアカウントをお持ちの場合、WRCよりダウンロードいただけます)。

インストール時の指定項目は以下の通りです。例では、Apache用モジュールのみのインストールを選択してインストールしています。

 

 

(1) Custom を選択します。

(2) Web Gateway module for Apache HTTPD ・・・のみをインストール用に指定します。

 デフォルトで c:\InterSystems\WebGateway にインストールします。

(3) Configure Web Gateway to connect to a server のチェックを外します。

(4) Installボタンでインストールを開始します。

 

4、https.conf の修正

C:\Apache24\conf\httpd.conf の末尾に以下追記します。

例は、以下の環境での設定例です。インストール環境に合わせて適宜ご変更ください。

 InterSystems 製品のインスタンス名:IRISTEST ※httpd.confに設定する場合インスタンス名の小文字を利用します。

 Web ゲートウェイインストールディレクトリ:C:\InterSystems\WebGateway

追記内容は以下の通りです。

  • Define GATEAY に Web ゲートウェイインストールディレクトリを指定します。
  • Define PREFIX に InterSystems 製品のインスタンス名を小文字にし、/ から始まる文字列で設定します。(例:/iristest)
  • Define IRISPATH に InterSystems 製品のインストールディレクトリを指定します。
### for IRIS ###
Define GATEWAY "C:/InterSystems/WebGateway/"
LoadModule cspsys_module_sa "${GATEWAY}/CSPa24Sys.dll"
LoadModule csp_module_sa "${GATEWAY}/CSPa24.dll"
 
Define PREFIX "/iristest"
 
<Location "${PREFIX}/">
  CSP On
  SetHandler csp-handler-sa
</Location>
### for IRIS ###

 

この他、Apacheのポート番号を適宜変更します。デフォルトでは80番が設定されています。

例では、

Listen 8080

に変更しています(80ポートから8080ポートに変更)。

追加が終了したら保存し、ファイルを閉じます。

 

5、Apache を Windows サービスにインストールし開始する

管理者権限でコマンドプロンプトを起動し、以下実行します。

cd C:\Apache24\bin
httpd.exe -k install

Windows のサービス画面を開き、Apache2.4を開始します。

 

ここで、http://localhost:8080/   にアクセスします。It Works と表示されれば Apacheの設定は成功です。

 

6、Web ゲートウェイ管理画面で各種設定

http://localhost:8080/iristest/csp/bin/Systems/Module.cxw にアクセスします(Webゲートウェイ管理画面のURL)。

Web ゲートウェイから InterSystems 製品に接続するために設定している「サーバ接続」情報と InterSystems 製品にアクセスするための「アプリケーション用パス」を設定します。

 

サーバ接続:LOCALの編集

 

(1) Server Access をクリック

(2) LOCALを選択し、Edit Server にチェックが付いていることを確認し、Submit ボタンをクリック

(3) 接続情報を確認し、適宜変更します。

 InterSystems 製品の「IP Address or DNS Name」「Superserver TCP Port」が正しく設定されているか確認します。

 Connection Security の項目を確認します。InterSystems 製品インストール時の初期セキュリティを「最小」とした場合は未設定のままとします。

 「通常(Normal)」または「ロックダウン(LockedDown)」を選択した場合は、インストール時に指定した CSPSystem ユーザのユーザ名とパスワードを入力します。

 画面下に「Save Configuration」ボタンがあるので、忘れずにクリックしてください。

(4) 接続テストを行います(図例はこの文章の下にあります)。

 Test Server Connectionをクリックし、Server Name で LOCAL を選択した状態で「Connect」ボタンをクリックします。エラーが出る場合は(3)の接続情報を再度ご確認ください。

アプリケーションアクセスの設定

続いて、インスタンス名と同じ文字列を使用したアプリケーションアクセス(パス)を作成します。

 

(1) Application Access をクリック

(2) 画面下の「Add Application」ボタンをクリック

(3) Application Path に /インスタンス名 を指定(インスタンス名は小文字で指定)。Server 0 に LOCAL を設定し、「Save Configutaion」ボタンをクリックして設定を保存します。

 例では、/iristest をパスに指定しています。

ここまでの設定で、管理ポータルが開きます。

http://localhost:8080/iristest/csp/sys/UtilHome.csp
 

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer