I need to offer new users on our system a temporary password that is valid for only 48 hours.  This is different than a 60-day password expiration window for existing users' passwords (where a password needs to be changed every 60 days), and is different than a "user expiration date", where you can set a date where the user's account expires and is disabled on that date, and different than the inactivity expiration date where a user becomes active if his account is not used within, say, 30 days.  

What I need is a password-inactivity expiration date such that if the user does not log  for a first time within the time limit (48 hours), then the user account is disabled - but not expired! - and then must be "reset" to a new password (whereupon the cycle begins again, and the user is disabled withint 48 hours if he doesn't log in and change his password!). 

Last answer 21 March 2018 Last comment 21 March 2018
0   0 2
199

views

0

rating

I was running the %File:FileSet class query, with my development user, but I am unable to run this query for an application user.  Does anyone know what resource or service is needed to run this query?  Assume the user has access to a certain directory on the file system needed for the query.

On second though, having tried almost all the available resources and services, perhaps the user doesn't have access to the directory.  How to tell when the error is this: 

set ok=st.%PrepareClassQuery("%File","FileSet")

d $system.Status.DisplayError(ok)
 
ERROR #5540: SQLCODE: -99 Message: User Laura_Test_DEV is not privileged for the operation

Thanks,

Laura

Last answer 23 February 2018 Last comment 23 February 2018
0   0 3
212

views

0

rating

I have a couple of new namespaaces/databases that are read-only.  I don't remember changing them to read-only, and although my username has %all (I installed the system), I am unable to change the "Always mount as read-only" property.

What am I missing?

 

Thanks,

Laura

Last answer 14 November 2017 Last comment 14 November 2017
0   0 1
588

views

0

rating

Hello; We are managing several Ensemble instances on several servers.  One server has 4 instances, and two other servers have one instance each (those are production servers).  We encrypt all instances using the Caché encryption in the management portal.

 

Currently we are using two different encryption keys: 1 key on the server with 4 instances, which is used for all 4 instances, and a second key on single-instance server. ( I'm installing the newest production server now.)

 

What I'd like to know is what are the best practices for managing encryption keys for separate servers. 

The options are to use a single key, across the network, for all instances.  The pros for this are if we remove an encryption administrator username, the user is removed from all instances; just one key is maintained and backed up.  The con is that the key will reside across the network (I haven't dones this yet)

Last answer 6 November 2017
+ 1   0 1
0

comments

167

views

+ 1

rating

I'm trying to write an installer manifest that can create a namespace, resources (%DB_namespace) and a role (with the resource, above), based on the namespace.  So you could pass in "ABC", or "XYZ", and it would create the %DB_ABC resource and the ABC role with %DB_ABC:RW permissions; or it will create the %DB_XYZ resource and the XYZ role with %DB_XYZ:RW permissions, accordingly.

 

I have a variable set up for the name of the namespace (in my code it's called PMGNAMESPACE), and I create a variable for the resource name, called PMGDbResource ( this == %DB_ABC)

 

 

The installer manifest is not evaluating the variable PMGDbResource int he <Role> tag, and I get this error:

017-10-12 08:56:57 0 RHS.Installer: ERROR #892: Resource ${PMGDbResource} does not exist.
2017-10-12 08:56:57 0 RHS.Installer: Installation failed at 2017-10-12 08:56:57

Last answer 12 October 2017 Last comment 12 October 2017
0   0 2
139

views

0

rating

Hello all,

In my ZEN login page, I found a way  to bypass the submit button and force a user to click on the Sign In button, thus forcing the code to call my OnSubmit(), like this:

<!--ondefault="return true;"--><!-- this removes the ability to use "return" to login forces button click to login -->

Last answer 17 August 2017 Last comment 18 August 2017
0   0 1
295

views

0

rating

I have a <tablePane> element with OnCreateResultSet and OnExecuteResultSet methods; autoExecute is "false" but the OnCreateResultSet and OnExecuteResultSet methods are nevertheless called on page load.

 

I want the user to be able to press a button to submit the parameters, then have this button call tablePane.executeQuery() to execute the query.

 

autoExecute is simply igonored.  We're on 2014.1.3 with plans to upgrade to 2016 soon.

 

Are there more settings I need to set? Or is this attribute simply ignored?

Last answer 8 September 2017 Last comment 11 August 2017
0   0 4
185

views

0

rating

My boss would like to change the Ensemble logo that one sees in the mangement portal, because it's part of the DeepSee Anaylzer.  

 

I can see where it lives on the generated html.  

I kow that you can set the logo for the User POrtal settings in DeepSee -- you can specifiy a URL for your logo.  But we'd like to go one stee further and change the Ensemble by InterSystems to our own logo / company name.  

Is it possible to change this in the code?  Is there a Configuration setting to change this?

Thanks,

Laura

Last answer 2 August 2017 Last comment 2 August 2017
0   0 1
242

views

0

rating

I have a query string that I am creating programmatically, based on some user inputs.  The user might search on 5 fields, or 8 fields, or no fields.

In my sql statment, some of these fields require parameters in the %Execute statement.

 

For example:

if user picks lastname, sql = "select * from person where lastname = ?"

if user also picks age, sql = "select * from person where lastname=? and age > ?"

 

I then have these lines of code to create my result set:

set statement = %SQL.Statement

statement.%Prepare

resultset = statement.%Execute(param1, param2)

 

-- but it might be 

resultset = statement.%execute(param1)

 

How can I pass a variable number of parameters  when I don't know how many the user will pick to filter the search?  I need some kind of parameter object? Or will indiraction work? Something with $lists? %ListOfDataTypes?

 

parameterObject.Insert(param1

Last answer 18 July 2017 Last comment 20 July 2017
0   0 3
5967

views

0

rating

I'm trying to recreate a smaller copy of our DEV machine on a sandbox instance.  I installed a new instance, and thought it would be a good idea to copy over a few cache.dat files from the critical namespaces (but not all of them), and start from there.

However, I can't compile any UI files in my new instance because I'm getting a <PROTECT> error on the %qCacheMsg global -- for any element that displays text (i.e. the first <label> that's encountered) the generated code is trying to get text from the global  ^%qCacheMsg("%Utility","en",node) = text -- from a node that doesn't exist.

Of course, I tried to import the global from the DEV machine, but no luck - it's not the kind of thing you're supposed to be able to do. 

What do you think my best course of action would be - start over with a fresh namespace / cache.dat in my sandbox? make the CACHELIB database writable temporarily

Last answer 14 July 2017
0   0 1
0

comments

212

views

0

rating