NICISDI stands for NICI Security Domain Infrastructure. The NICISDI module is responsible for managing Keys, where a Security Domain is typically defined as the eDirectory Tree.
When eDirectory is installed a few special security objects are created.
First, the Key Access Partition (KAP) container is created underneath the Security Container. Inside the KAP container, the WX Entries is created. The KAP and WX Entries represent the NICI Security Domain for the eDirectory Tree. A server, or list of servers, are assigned to be the Key server. The Key server job is to hand out the SDI Key or TreeKey to other servers in the eDirectory Tree. Security Domain servers ("Key server") manage SDI Key or TreeKey. Any NcpServer can be configured as a Key server and therefore there can be multiple Security Domain servers Key server in a eDirectory Tree.
NICISDI Keys types The Security Domain Key is created when the first NcpServer is installed, or if there is an existing eDirectory Tree with the Security Domain Infrastructure already in the eDirectory Tree, the server retrieves the SDI Key from the WX Entries Key server during the server installation.
A SDI Key is a key which is held by each server in the EDirectory Tree.
The actual SDI Key is encrypted and stored on the File System of the ncpServer in the NICISDI.KEY which is one of the NICI Configuration Files. Note: The NICISDI.KEY file is wrapped with each ncpServer's own Key. Therefore you should never copy or restore the NICISDI.KEY file from one ncpServer to another ncpServer, as the Keys are specific to each ncpServer.
The main reason why the SDI Key MUST be the same on all ncpServer in a EDirectory Tree is because these keys are used to encrypt/decrypt the following things:
NICISDI is responsible for managing SDI Key, where a NICI Security Domain is defined as an entire EDirectory Tree.
Regardless of the operating system there is a NICISDI.KEY file located on each server's File System within a Security Domain Infrastructure. The NICISDI.KEY file contains the encrypted SDI Key
This file is stored, depending on the Operating System, in the following File System locations:
When a server boots or when NICISDI, NICIEXT, or libniciext.so are loaded the 'NDSPKI:SD Key Server DN' attribute is read. Following this read, NICISDI, NICIEXT, or libniciext connects to each server in the list and requests any new SDI Key from each server in this list.
NOTE: Only new SDI Key retrieval and Key Revocation is automatically done on every loading of NICISDI. During this process existing security keys are also checked for Key Revocation.
NOTE: Deletion of a SDI Key is NOT automatically done.
When the second server (Server2) is installed into the tree, Server2 would ask Server1 to send the SDI Key. This way both Server1 and Server2 each have a copy of their own SDI Key (or Treekey). Each server holds a physical copy of a NICISDI.KEY.
We also have compiled some examples of using SDIDIAG Switches