Rechercher

Pergunta
· Set. 25, 2024

LDAP Authentication Question

I am trying to track down a problem we saw this morning with our TEST environment. We had a momentary issue where InterSystems HealthShare Health Connect could not connect correctly to LDAP. When we tried to login and could not connect to LDAP, the system would Delete our users.

the Test LDAP function would return a "Can't contact LDAP server". I went through the Certificates, made sure they had the correct permissions and were not expired.

At the OS level we had no problems using our LDAP accounts to authenticate against the server, so we know the server could connect to LDAP, the trouble was the application itself.

We had to add our users back into the system as password users, then delete them, in order for us to connect to LDAP correctly and rebuild the users.

The System Audit logs show the Delete right before the LDAP sign on failures. None of our other boxes that are a part of the Mirror, or our Production box was affected.

We ended up failing over to a Mirror member since this was isolated to 1 server.

Is the LDAP functionality within the Application supposed to Delete Users if it cannot communicate correctly with LDAP?

Shouldn't it try to connect first and if it can't validate against LDAP, but the password is still cached use the cached login?

Beside using the Terminal to troubleshoot, is there any additional debug logging that could of been turned on to see what the LDAP authentication was doing besides REDEBUG?

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

Operate IPM / ZPM on your IRIS instances easily from within VS Code

Please allow me to introduce you to a new way of interacting with IPM (InterSystems Package Manager), also known as ZPM, directly from inside Visual Studio Code.

First, install into VS Code the free InterSystems Package Manager extension, published to Marketplace by George James Software. A quick way is to use the search field in VS Code's Extensions view and look for 'ipm zpm' (without the quotes). Alternatively browse to https://marketplace.visualstudio.com/items?itemName=georgejames.iris-pac...

Here's a short video showing the extension in action.

If you like it please vote for it in the 2024 Developer Tools Contest, but hurry because voting ends: 29 Sep, 2024, 11:59:59 PM EST

7 Comments
Discussão (7)4
Entre ou crie uma conta para continuar
Artigo
· Set. 25, 2024 3min de leitura

CodeInspector: Automating Custom Code Validation

Hi everyone,

In this article, I’m excited to introduce CodeInspector, a tool designed to simplify code validation by applying custom rules tailored to your development requirements. Whether you're managing a large codebase or working in an agile environment, CodeInspector helps ensure code quality by offering flexibility and adaptability to specific project needs.

Motivation

The idea behind CodeInspector was to build a tool that is both easy to implement and adaptable to different business contexts. By allowing teams to define their own validation rules, CodeInspector empowers developers to meet specific code quality standards without sacrificing flexibility. Its simplicity ensures that any team member can quickly configure and start using the tool to enforce consistent coding practices.

Features

  • Package and Class Validation: CodeInspector analyzes and validates packages and classes based on predefined custom rules.
  • Detailed Reports: It generates comprehensive issue reports that can be viewed directly in the console or returned as structured JSON for further processing.

First Steps

  1. Installation: The tool is available on the InterSystems Open Exchange as CodeInspector.
  2. Running the Application: Follow the instructions in the README file to build and start the Docker container. The application runs seamlessly inside a Docker container.
  3. Sample and Rules:
    • In the project folder, you'll find a sample directory with an example class.
    • Additionally, in the codeInspector.rules.examples folder, you’ll find two example validation rules:
      • Example Rule 1: Validates if a class does not exist in the environment.
      • Example Rule 2: Validates if a method exceeds 50 lines of code.
  4. Postman Project: The Postman collection for testing the API has been added to the /iris-dev-codeinspector/collectionPostman/CodeInspector.postman_collection.json folder.

Rest API - CodeInspector JSON Report

API Parameters

The API is available at http://localhost:9091/codeinspector/ and accepts the following parameters:

  • namespace: (required) Specifies the namespace in which the validation will be executed.
  • packages: (required) This parameter must include the names of the packages to be analyzed, separated by commas.
  • ignored: Allows you to provide a comma-separated list of package names to be excluded from the validation process.

Postman Collection

You can find the Postman Collection export in the /iris-dev-codeinspector/collectionPostman/ folder. Import CodeInspector.postman_collection.json into Postman to run API tests.

 

Console Report

To run a validation check from the console, open a terminal and execute:

Do ##class(codeInspector.Main).Execute("sample")

This will trigger the sample validation against the specified class and display the results in the console.

 

Thank you for exploring CodeInspector. At the end of the README document, you’ll find some ideas for future improvements, and I’m always open to new suggestions. I look forward to your feedback and any contributions you’d like to make!

3 Comments
Discussão (3)1
Entre ou crie uma conta para continuar
Artigo
· Set. 25, 2024 1min de leitura

Same old terminal but in web

We have Webterminal around for quite a while, but it was limited, not all features worked there. There was no shell support or the latest feature as embedded Python support. There are some issues with tools that require programmer mode. Basic Authorization, not as handy as simple login page, where you could have options to add own login page, in case if you would wish to change the way how to login to the application, such as using SSO.

With the original iris terminal, wrapped into a web form, using most used in the web world xterm.js, used in tools like VSCode as well, with some magic from Python, which helped with interprocess tty. We can get the the terminal in the web, in the full capacity.

iTerm

To test how does it work in the web, I've added term routine, which generates some formatting

iTerm

 

Ideas for future

  • Suggestions and Syntax highlighting You may remember one my previous projects, irissqlcli, which provided intellisense and syntax highlighting to a terminal specifically for SQL access. Mine idea is to add the same level of support to an ObjectScript terminal  And this is already as part of this project, as a tool named iterm, unfortunately not finished yet, it's quite tricky to catch the point between when terminal executes something and awaits for some command.
  • Small VSCode look like with terminal Another project, is irislab, which can inject new item in it

Please vote in the current contest if you like this project

38 Comments
Discussão (38)7
Entre ou crie uma conta para continuar
Pergunta
· Set. 25, 2024

30 days full working test license

Hello,
Can I receive a 30 day full test license?

7 Comments
Discussão (7)3
Entre ou crie uma conta para continuar