Nova postagem

Encontrar

Anúncio
· Abr. 24

Programme d'accès anticipé : améliorations OAuth2

InterSystems IRIS 2025.2.0 introduit plusieurs fonctionnalités pour améliorer l'expérience utilisateur lors de la configuration d'OAuth2.

- OAuth2 est désormais un type d'authentification natif et peut être facilement activé pour vos services et applications web. Auparavant, OAuth2 était un type d'authentification déléguée.

- Vous pouvez désormais créer des serveurs de ressources avec la nouvelle classe OAuth2.ResourceServer, qui simplifie considérablement la configuration des serveurs de ressources. Auparavant, les serveurs de ressources étaient des instances d'OAuth2.Client.

- La classe OAuth2.ResourceServer fournit un exemple d'authentificateur pour déterminer les autorisations utilisateur. Pour les configurations simples, aucun code personnalisé n'est requis (auparavant, une implémentation ZAUTHENTICATE personnalisée était nécessaire). Cet authentificateur simple peut être étendu et personnalisé pour s'adapter à votre environnement. OAuth2.ResourceServer prend en charge plusieurs audiences.

- Vous pouvez désormais utiliser JDBC et ODBC pour vous authentifier auprès d'InterSystems IRIS avec des jetons d'accès.

Nous souhaitons connaître votre avis sur ces modifications et savoir si elles fonctionnent comme prévu.

Vous pouvez télécharger le logiciel et la nouvelle documentation relative à ces nouvelles fonctionnalités en utilisant ce lien.

Pour nous faire part de vos commentaires, veuillez utiliser cette adresse comme principale adresse de communication en vous rendant sur la page EAP et en sélectionnant le bouton de commentaires à droite.

Discussão (0)0
Entre ou crie uma conta para continuar
Pergunta
· Abr. 24

Repositorio propio de IPM

Hola!

Recientemente he estado probando a crear nuestro propio repositorio de paquetes con IPM. He podido crearlo sin problemas, y he visto que, al final, nuestro repositorio IPM no deja de ser una instancia de IRIS. En el ejemplo del que he partido, utiliza la versión community. Y mi pregunta es,  para tener nuestro repositorio disponible para toda la compañía, ¿podemos seguir con la versión community, o debe ser una versión enterprise con licencia?

Y ya que estoy, ¿hay alguna forma de saber qué paquetes se han descargado, y por quién?

Muchas gracias!

2 novos comentários
Discussão (2)1
Entre ou crie uma conta para continuar
Anúncio
· Abr. 24

インターシステムズ 第21回 開発者向けウェビナー「IRISのベクトル検索を使って テキストから画像を検索してみよう」のご案内

 

いつも。お世話になっております。

さて今年二回目となる開発者向けウェビナーの日時、内容が決まりました。

【日時】 6月10日(火) 13:30-14:00

【タイトル】 IRISのベクトル検索を使ってテキストから画像を検索してみよう

【概要】

昨年5月のウェビナーで紹介したIRISのベクトル検索が、2025.1でパワーアップしました。特に、ANN(近似最近傍探索)インデックスのサポートにより、大量のベクトルに対する検索性能が劇的に向上しました。前回のウェビナーではテキストに対するベクトル検索を取り上げましたが、CLIPと呼ばれる技術により、画像とテキストを比較可能なベクトルに変換して、例えば、テキストから画像を検索するといったことが可能になります。

本ウェビナーでは、IRISのベクトル検索について再度説明し、画像とテキストを組み合わせた検索シナリオについて説明します。

【こんな方にお勧め】 機械学習に興味がある方。テキストの検索、画像の検索に興味がある方。

ご多用中とは存じますが、皆様のご参加をお待ち申し上げております。

ご登録はこちらから

インターシステムズジャパン

Discussão (0)1
Entre ou crie uma conta para continuar
Artigo
· Abr. 23 3min de leitura

Testing Metadata Inconsistencies in InterSystems IRIS Using the DATATYPE_SAMPLE Database (Part II) - Silent Corruption

The first part of this article provides all the background information. It also includes links to the DATATYPE_SAMPLE database, which you can use to follow along with the examples.

In that section, we explored an error type ("Access Failure") that is easy to detect, as it immediately triggers a clear error message when attempting to read the data via the database driver.

The errors discussed in this section are more subtle and harder to detect. I’ve referred to them as “Silent Corruption” and “Undetected Mutation”

Let’s start with “Silent Corruption”:
In the Employee table of the DATATYPE_SAMPLE database, there is a deliberately manipulated record that demonstrates this behavior – it’s the row with ID = 110. At first glance – and even at second glance – no issues are apparent. Neither the database driver nor the query tool indicates a problem if read this row.

Only upon closer inspection does it become clear that the value in the red-marked cell does not match the transmitted (and defined) metadata.

The column "Name" is defined as VARCHAR(50), but the actual value is 60 characters long!

 

There are scenarios where this behavior doesn’t cause any issues — for example, when the driver handles such inconsistencies leniently.
However, problems can arise when downstream systems rely on the provided metadata. If further processing is based on these metadata definitions, errors may occur when the actual content doesn’t conform to the agreed interface.

A typical example involves ETL tools, which often generate target tables or define transformations based on metadata.

The following SQL query can be used to identify records where the content deviates from the defined metadata:

SELECT
 Name,
 CASE WHEN LENGTH(Name) > 50 THEN 1 ELSE 0 END AS Name_LENGTH_CHECK
,SSN,
 CASE WHEN LENGTH(SSN) > 50 THEN 1 ELSE 0 END AS SSN_LENGTH_CHECK
FROM SQLUser.Employee
WHERE 
      LENGTH(Name) > 50
OR    LENGTH(SSN) > 50

If you execute this query, it will return only the rows that contain errors. In each row, the faulty cell will be marked with a 1 if the value exceeds the length defined by the metadata.
 

Now let’s take a look at the next error type: “Undetected Mutation.”
To demonstrate this issue, the DATATYPE_SAMPLE database includes a faulty record specifically changed to illustrate this behavior.

The record in question is the row with ID = 120

Again, neither the database driver nor the query tool will indicate a problem when reading this row.

 

In this case, the value even appears to match the metadata! The column is defined as INTEGER, and the row returns an integer value (in this example: 0) in that cell. 

However, this value is not actually stored in the database! A direct look at the underlying Global reveals the true content. Through manipulation, a string value was injected into this field.

 

SELECT
 CAST(Age AS VARCHAR(255)) AS Age,
 ISNUMERIC(CAST(Age AS VARCHAR(255))) AS Age_ISNUMERIC
FROM SQLUser.Employee
WHERE
    ISNUMERIC(CAST(Age AS VARCHAR(255))) = 0


If you execute this query, it will return only those rows that contain metadata inconsistencies. In each result row, the problematic cell is flagged with a 0 if the value cannot be interpreted as numeric by the driver

 

Final Thoughts

These scenarios highlight how seemingly well-formed data can conceal subtle inconsistencies—especially in legacy systems that bypass standard safeguards. While "Access Failures" are easy to spot, issues like "Silent Corruption" and "Undetected Mutation" often go unnoticed but can cause serious problems downstream, particularly in systems that rely on strict metadata compliance.

The DATATYPE_SAMPLE database and the diagnostic queries shared here provide a foundation for identifying such issues manually. But let’s face it—writing these checks by hand is tedious and error-prone.

Fortunately, SQL DATA LENS (min. version 3.22) makes this process much easier. 😉With just a click, it can generate comprehensive integrity checks for Tables, Views, and Stored Procedures—saving time and helping you stay ahead of hidden data quality issues.

Discussão (0)1
Entre ou crie uma conta para continuar
Pergunta
· Abr. 23

Using CCR with Angular Applications

Hi,

What is the best way to develop Angular applications while working with CCR?

CCR peer reviewers require submitting Angular source files, so that a peer reviewer has something readable to review. However, CCR environments require that you deploy compiled Angular applications to them.

 

I'm thinking one approach is to compile locally and manually include both the source files and compiled code in an itemset, but that introduces potential errors where the CCR user forgets to include the correct compiled files with the source code (or vice versa). Another approach is to set up something elaborate using CCR event handlers to compile files as they pass peer review, but setting this up is more challenging and error prone.

2 novos comentários
Discussão (2)3
Entre ou crie uma conta para continuar