The INeS IoT Security Platform provides these Components and
Features:
This document is to describe how to use Certificate Management
Service (CMS): Manage CAs, certificate templates, certificate, and the batch of
certificate issuance.
The portal implements the following user roles:
•
Admin: Main administrator can:
o
Manage all Tenants, Organizations, Users and API credentials.
o
Manage Certificate Management Services (CMS): all CAs, Certificate
Templates, Custom Extensions, EST Server for CMS, can set the global access,
Tenant access, and organization access for any entity on CMS System
o
Manage Device Provisioning Services (DPS): Device Type, Devices,
External CAs, EST Server for DPS, can set the Global Access, Tenant Access, and
Organization Access for any entity on DPS System
•
Tenant Admin: The administration of the specific Tenant can:
o
Manage all its Organizations, Users and API credentials.
o
Manage Certificate Management Services (CMS): including CAs,
Certificate Template that are assigned to that Tenants, can view all shared
(global access) entities of CMS system, manage EST Server for CMS, can set Tenant
Access, and Organization Access for any entity on CMS System
o
Manage Device Provisioning Services (DPS): Device Type, Devices,
External CAs, EST Server for DPS, can set the global access, Tenant access, and
organization access for any entity on DPS System
•
Tenant Operator:
can operate on Certificates and Batch Generation for all organizations
in that Tenant in CMS system; can operate on Devices for all organizations in
that Tenant in DPS System.
•
Organization Operator can operate on Certificates and
Batch Generation for its organization in CMS system; can operate on Devices for
its organizations in that Tenant in DPS System.
•
Auditor: Can get read-only access to all entities in system… for auditing
purpose.
•
Tenant Auditor: Can get read-only access
to all entities in that Tenant… for auditing purpose.
All accesses to the platform are authenticated at least with
username and password, and optionally with a digital certificate as strong
authentication method.
Please ask WISeKey for your initial credentials to connect to the
platform.
The demo
environment is available for tests in the URL:
https://ines.certifyiddemo.com/
Login with Username/Password:
Access rules:
·
Admin
can CRUD
[1]
all certificate templates
·
Tenant Admin: can CRUD all certificate templates of that Tenant and can use
all shared certificate template (The certificate template can be accessed
global)
·
Auditor
& Tenant Auditor: can only view all certificate templates
·
Tenant
Operator: can use all certificate templates when requesting a
certificate
·
Organization
Operator: can use
certificate templates of the tenant that organization operator belongs to, and
use all shared certificate templates when requesting a certificate
Important Note:
As previously explained, the CMS connects to existing Certification Authorities
using PrimeKey EJBCA. In order to be able to successfully use certificate
templates, it must exist in the EJBCA CA at least one appropriate “End-Entity
Profile” and a “Certificate Template”. Please contact WISeKey if you need
assistance for these particular preparation works.
A certificate template can be understood as a “Type of
Certificate” that the CMS can issue. The Certificate templates define the
characteristics of the certificates in terms of:
·
Identity attributes (names that are inserted in the certificates)
·
Cryptography characteristics (key types and origin)
·
Usage characteristics (key usage)
INeS CMS defines two types of certificates:
·
“Factory Certificate”. These certificates are typically inserted
in the IoT devices during manufacturing and are used for the initial connection
and maybe during maintenance mode. Normally these certificates typically will
be used as the digital identity of the IoT device during the lifetime of the IoT
device
·
“Operational Certificates”. These certificates are typically used
by the devices for their normal operations. Normally, these certificates should
be renewed periodically during the lifetime of the device and sometimes are
linked to the owner of the device.
These distinctions are merely illustrative, and the important
concept to retain is that a device can have multiple certificates, and
typically one will be a factory certificate and others are operational
certificate, but each customer can decide on how to adopt its own approach. In
many cases, the devices will only have a single certificate.
Here are steps details to create a Certificate Template:
Step 1:
Open Certificate Management Service from HOME page or from top bar menu,
then open “Certificate Templates” from left menu: Configuration > Certificate Templates then click on the “New”
button.
Step 2: Fill
the all required fields (*):
General
section: Identifying and general information
·
Accessibility*: There are 3 options:
o
Global
Access: This option is to share this certificate template to all resources
in the INeS IoT system and only administrator can do this. It will be available
for using to request a certificate by any resource except auditor.
o
Tenant
Access: This option is to assign this certificate template to a certain
tenant. You must select the specific Tenant from the drop-down list when this
option is selected if you access as an administrator. If you access as a Tenant
admin, you only need to enable Tenant Access for yourself.
o
Organization
Access: This option is to assign this certificate template to a specific
organization of the certain tenant. You must select the specific Tenant and
organization of that tenant when this option is selected if you access as an
administrator. If you access as a Tenant admin, you only need to select the
Organization that you want to assign.
·
Certificate Type: Factory (Default) or
Operational.
·
Name*: Name of Certificate template.
·
Description: This is optional field.
·
Validity period (days): You have to
set the xxx (days) validity period or you can enable option “Unlimited
expiration”. When option “Unlimited expiration” is enable,
the validity of the certificate will be validity of issuing CA.
Issuing CAs:
Certification Authority allowed to issue certificates with this template
It’s required to configure:
·
Certification Authorities: Select one
of the available CAs (only shows Active CAs) from the dropdown list. The CAs
list is different amongs access selection.
o
If
Accessibility is Global access (only administrator can set this):
you can see all the active CAs in the list
o
If
Accessibility is Tenant access (both admin & tenant admin can
do this): can only see the shared CA (global access) and all its CA in
the list.
o
If
Accessibility is Organization access (both admin
& tenant admin can do this): can only see the shared CA (global
access), all CAs of that tenant, and the CA of that organization.
·
Ejbca Entity Profile: Must match an existing EE
Profile in the EJBCA Server
·
Ejbca Certificate Profile: Must match
an existing CP in the EJBCA Server
·
Check Validity: User can test connection to check validity of the profiles on
the CA Server in certificate template while creating, editing and viewing
details of certificate template.
Key Settings:
Setting-up key information for issued certificates. Available
settings:
·
Key type: There are two key types: EC (default) & RSA.
·
Key size: For EC, secp256r1 is the preferred size. Key size depends on the
key type:
o
If
key type = RSA, then key sizes are: 1024, 2048, 4096, and 1544
o
If
key type = EC, then key sizes are: secp256r1, secp384r1, secp521r1, secp224r1,
sect163r2, sect233r1, sect283r1, sect283k1, sect163k1, sect233k1…
Certificate Request: Certificate request type to issue
certificate. There are 2 options; you must select one or both of them:
·
CSR
to be uploaded: If this option is enabled, you are
required to upload a CSR when requesting a new certificate.
·
Private Key and CSR to be generated in the server: If this option is enabled, the private key and CSR
will be generated and stored in the server. You have to set the Key
retention period (days) - This is basically a number of days that the system
will keep the private keys (It is set to 30 days by default). The system will
run daily and deletes expired keys for each template. The key is also deleted
immediately if the user downloaded the key.
Features:
Select key usage and extended key usage for certificate
·
Key usage: Enable one or multiple key usage by checking the appropriate
checkbox in the list: Digital Signature, Key Agreement, Data Encipherment…
·
Extended Key usage: Enable one or multiple extended
key usage by checking the appropriate checkbox in the list: Document Signing,
Smart Card Logon, Server Authentication, Client Authentication, and Email
Protection.
Subjects:
Configure Subject and SAN for issued certificates
All custom extensions will be available
in the list for selection, it is filter based on the type of custom extension
(SAN, SubjectDN).
·
Certificate Subject Information: User can
add any subjects from the list, each
subject can be added only one time EXCEPT Organization and Organization Unit. User
can set the length, default value, make it required and/or locked
·
Subject Alternative Name Information: Can add
one
or more SAN from the list. User
can set if SAN are Required, Locked and the default value for each SAN
Illustrative example:
General settings:
Issuing CAs:
Key settings (RSA Key):
Key settings (EC Key):
Features:
Certificate Request
Subjects:
SANs:
Step 3:
After all required fields are filled, click on SAVE to create a new Certificate
template.
You should test
the connection to check validity for issuing CAs to make sure certificate
can be issued when using this Certificate template.
Step 4:
A new Certificate Template will be listed and shown in the Certificate Template
List page.
All Templates will be listed on the List page.
The “Action” option allows to: Clone, Edit, Delete users on list page. The “View” icon opens the
Template Details page.
Admin and Tenant Admin can:
·
“Clone” an existing Certificate template: clone all information of
selected certificate to new one, user have to rename the certificate template
before saving.
·
“Edit” the template to update/delete an existing certificate
template: User can change anything in certificate template (general info,
issuing CAs, Key settings, Feature, Subjects…) during update, user can test
connection for issuing CAs.
·
“Delete” a certificate template.
View page. The possible operations are:
·
Activate-Deactivate the template
·
Test the CA connection
·
Delete
·
Edit
Illustrative screen:
IMPORTANT: If the certificate template is being shared to all resources then:
When you stop sharing it by assigning it to an organization:
·
All device types belonging to other tenants/organizations that are
associated with it will be deactivated
·
All shared device types associated with it will also stop sharing
and belong to new tenant/organization.
When you change sharing it to another tenant:
·
All device types belonging to the previous tenant that are
associated with it will be deactivated
Only Administrator (Admin, Tenant Admin)
and Operator (Tenant Operator, Organization Operator) can:
·
Create new Certificate
·
Rekey/Renew Certificate
·
Revoke Certificate.
Pre-requisite:
·
Certificate template is already created with valid Issuing CA
configured
Steps to issue a Certificate
Step 1: Open Certificate Management Service from HOME page or from
top bar menu then open Certificates menu.
Step 2: In Certificate list page, click on New
button
Step 3: Fill the all required
fields (*) on each section, user can collapse or expand by clicking on
arrow-down icon.
Identity and
general information
·
Tenant*: Select the Tenant where the new certificate will belong to. It is
available for Admin role only.
·
Organization*: select the Organization of that Tenant where the new
certificate will belong to. This is available for Admin and Tenant Admin/Tenant
Operator role.
·
Certificate Templates*: Select the available
Certificate template from drop-down selection list
·
Certificate Request *: Select Certificate
request type from the drop-down selection list:
o
CSR
to be uploaded: if select CSR you must upload a CSR to generate a certificate.
The CSR must contain the key that is set in Certificate template.
o
Private
key and CSR to be generated in the Server: if select
this option the process will generate a PFX file containing the private key and
certificate. You can setup the password for the PFX or let the system to
generate a random passphrase. The private key will be deleted per key retention
days that is set in the template.
·
Certificate Subject Information *:
Fill the data in required subject in this
section (it depends on Certificate template configuration)
·
Subject Alternative Name Information*:
Fill the data in required subject in this section (it depends on Certificate
template configuration)
·
VALID FROM: The system allows user to set the date when certificate is
activated
·
Validity period (days): Set the
validity of certificate. You can set the xxx days or enable unlimited
expiration option depends on the settings of validity in selected certificate
template.
Illustrative example:
Select Tenant, Organization & Certificate Template
Select CSR to be uploaded
Or select Private key and CSR to be generated in the server
Tick the option Generate random passphrase to protect the PFX
file, then user email will be required to receive the passphrase.
If it’s uncheck the option Generate
random passphrase to protect the PFX file, then user can set a password for
PFX, user email is optional, you can input your email to receive the passphrase
(for recovery purposes) if you want.
Allow user to put VALID FROM of certificate when making a
certificate request. That means certificate will be validated from the date is
set in “VALID FROM” field. By default the NOW date is
set, user can set to any date you want.
Step 4: Click on Save button to generate a new Certificate
Step 5: The New certificate will be listed in Certificate list page
with ACTIVE status
An email about certificate has been issued successfully will be
sent to user email that you entered in certificate request.
You can open a certificate to view its details and to
download certificate
Note:
·
If the certificate was creating after CSR to be uploaded
certificate request is selected then you can download without private key
·
If Private key and CSR to be generated in the server is
selected then you can download with/without private key
Pre-requisite: The original certificate is active
Step to rekey a certificate:
Step 1: Open a certificate to view detail and scroll down to the end to
find the Rekey button
Step 2: Click on Rekey button, a Re-key Certificate popup window is
displayed. You will be asked to upload new CSR file.
Step 3: Upload a CSR file and you can check/uncheck the option “Require
the original certificate will be revoked automatically after rekey”
Step 4: Click on Rekey button then a new certificate will be issued and
listed in the Certificate list page. If the option “Require the original
certificate will be revoked automatically after rekey” is checked then the
original certificate will be revoked.
Pre-requisite: The original certificate is active or expired
Step to renew a certificate:
Step 1: Open a certificate to view detail and scroll down to the end to
find the Renew button
Step 2: Click on Renew button. You will be asked to revoke the
current certificate after renewal or not.
Step 3: You can check/uncheck the option “Revoke the current certificate
after renewal”
Step 4: Click on Renew button then a new certificate will be issued and
listed in the Certificate list page. If option Revoke the current certificate
after renewal is checked, then the original certificate will be revoked.
Step to revoke a certificate:
Step 1: Open a certificate to view detail and scroll down to the end to
find the Revoke button
Step 2: Click on Revoke button, you will see popup window Revocation
information
Step 3: Select any Revocation Reason and put, optionally, your Revocation
Comment. Then click on Revoke button to confirm
Step 4: Certificate is revoked successfully, and the status is shown as
Revoked.
Access rules:
·
Admin:
can CRUD CAs
·
Tenant
Admin: can CRUD CAs of that Tenant and can use all shared CAs of system.
·
Auditor:
can only view CAs
·
Other
roles: Cannot access CAs
Important Note:
The CMS connects to existing Certification Authorities using PrimeKey EJBCA.
The topics related to the configuration of EJBCA are out of the scope of this
manual. Please contact WISeKey if you need support to build your CA servers.
Here are steps required to create a CA
Step 1:
Open Certificate Management Service from HOME page or from top bar menu then open
Certification Authorities from
left menu: Configurations >
Certification Authorities. Click on the “New” button.
Step 2: Fill
the all required fields (*):
General information:
·
Name: Enter the CA name, it is a “free name”
·
Description: Optional
·
Accessibility: There are 3 options:
o
Global
Access: This option is to share this certificate template to all resources
in the INeS IoT system and only administrator can do this. It will be available
for using to request a certificate by any resource except auditor.
o
Tenant
Access: This option is to assign this certificate template to a certain
tenant. You must select the specific Tenant from the drop-down list when this
option is selected if you access as an administrator. If you access as a Tenant
admin, you only need to enable Tenant Access for yourself.
o
Organization
Access: This option is to assign this certificate template to a specific
organization of the certain tenant. You must select the specific Tenant and
organization of that tenant when this option is selected if you access as an
administrator. If you access as a Tenant admin, you only need to select the
Organization that you want to assign.
CA configuration: CA connection information such CA Name, Server
Name and CA service
·
CA Type*: This version, only support EJBCA and it is displayed by
default.
·
CA Name*: Name of CA in the CA
server
·
Server name*: Name of Server
·
Server Uri: It is an optional field but it becomes a mandatory field if users
want to valid the connection to the CA
Illustrative example:
Step 3: Click
on SAVE to create CA. By default, a CA is set “Active” after being created.
Step 4: CA
is created successfully, and will be accessible from the CA list page
All CAs will be listed on the List page.
The “Action” option allows to: Clone, Edit, Delete CAs on list page. The “View” icon opens the CA
Details page.
From the “View” page, it’s possible to manage status, download CA
certificate, Test Connection and view all assigned Certificate Templates which
use this CA to issue certificates, among other operations.
Administrators can:
·
Clone an existing Certification Authorities.
·
Update/Delete an existing Certification Authorities
·
Activate/Deactivate a CA
·
Test Connection of a CA
·
Register the CA to AWS IoT
·
Register the CA to Azure IoT
·
Export CA
Note: Tenant admin can CRUD the CA belongs to that tenant only.
For shared CA, tenant admin can view only (test connection, download and export
CA)
Administrators can test connection of CA in: CA creation page,
view CA detail page, and update an existing CA page by clicking on Test Connection button at the end of
page
Administrators can activate or deactivate an existing CA by
opening the details page of the CA, and then click on the Activate or Deactivate
buttons at the end of page.
Administrators can update an existing CA by clicking on Edit
button in Action list (CA list
page) or edit when view details a CA. All information of CA can be changed and
updated.
An existing CA can be deleted by administrator by clicking on Delete button in Action list (CA list
page) or delete when view detail a CA
IMPORTANT:
If a specific CA is being shared to all organizations
then when you stop sharing it by assigning it to an organization:
·
All certificate templates and device types belonging to other
tenants/organizations that are associated with it will be deactivated
·
All shared certificate templates and shared device types
associated with it will also stop sharing and belong to new
tenant/organization.
Pre-requisites:
·
CA has been already created
·
Tested connection CA successfully
·
Certificate template already configured in EJBCA
Steps detail to register the CA to AWS IoT
Step 1:
Open an existing CA that you want to register to AWS IoT, for example: DEVIOTSUBCA1
Step 2: Find
AWS IoT CA Registration in CA detail
page and click on it to expand section then you will see Register button
Step 3: Click
on Register button to open Register to AWS IoT page
Step 4: Fill
AWS configuration and select the template certificate from list
·
AWS
configuration: include the Access Key ID
and Secret Access Key of your AWS
subscription account that authorize INeS to register the ICA to your AWS IoT
core.
·
Certificate
Template: Select one from list. This template will be used for generating
the verification certificate. Please note that only certificate templates that used
CA DEVIOTSUBCA1 as the issuing CAs
will be listed in the drop-down list. (see how to
create
Error! Reference source not found.)
·
Registration
Options: These are optional parameters that supported by AWS IoT core, user
can select among these options:
Step 5: Click
on Register button and wait for all
steps to be finished.
If
successfully, it will show:
If failed, an error message detail will be shown depending on
which step failed.
Step 6: Reopen the CA details
page, and then expand section AWS
IoT CA Registration to view the details, you will see the notification
message “This CA certificate already
registered to AWS IoT. Click on this button to re-register”.
Pre-requisites:
·
CA has been already created
·
Tested connection CA successfully
·
Certificate template is configured in EJBCA
Steps detail to register the CA to Azure IoT
Step 1:
Open an existing CA that you want to register to Azure IoT, for example: DEVIOTSUBCA1
Step 2: Find
Azure DPS CA Registration in CA
detail page and click on it to expand section, then, you will see Register button
Step 3: Click
on Register button to open Register to Azure IoT page
Step 4: Fill
Azure configuration and click Register button to complete register CA.
Access
rules: only Admin can CRUD custom extensions. Other roles cannot access.
This
feature is to allow admin to define OID for SAN or Subject DN which can be used
when creating a certificate template
Steps to create a custom extension
Step 1:
Open Certificate Management Service from HOME page or from top bar menu then
open Certification Authorities
from left menu: Configurations >
Certification Authorities. Click on the “Add” button.
Step 2: Fill
the all required fields (*):
·
OID: Fill the OID value. An OID, or Object Identifier, can be applied
to each CPS (Certificate Practice statement). The OID is an identifier that is
tied to the CPS or, if multiple policies are defined, to each CA's certificate
policy. An object identifier is a string
of decimal numbers that uniquely identifies an object, for example:
1.3.6.1.4.1.37244.2.2. OID must be a string no longer
than 50 characters.
·
Name: Fill the Name of OID
·
Type: There are two types: Subject, and SAN. User can choose only one
option to specify this OID is Subject or SAN.
·
Max Length: Set the max length of this OID.
·
Description: This is optional field.
Illustrative screenshot:
Step
3: Click on SAVE button to complete. By default, an OID is set
“Active” after being created.
Step
4: Custom extension is created successfully, and will be accessible
from the Custom extension list page
All
OIDs will be listed on the Custom extension list page.
The
“Action” option allows to: Clone, Edit custom extensions on list page. The
“View” icon opens the OID Details page.
They
will be also listed in Subject field or SAN field (depends on the type of OID
which is selected during OID creation) when creating a certificate template.
From the “View” page, it’s possible to manage status, Delete,
Edit, among other operations.
Administrators can:
·
Clone an existing custom extension.
·
Update/Delete an existing custom extension
·
Activate/Deactivate a custom extension
Administrators can update an existing custom extension by clicking
on Edit button in Action list
(Custom Extension list page) or edit when viewing detail
a custom extension. All information of custom extension can be changed and
updated.
An existing custom extension can be deleted by administrator by
clicking on Delete button when
viewing detail a CA
This functionality is to generate a batch of certificates at a
time. INeS IoT CMS system supports 2 types of Batch Data Source:
·
Data, CSR and Private Key to be generated in server
·
Data and/or CSR from CSV file
Batch Generation is available for all roles: Admin, Tenant Admin,
Tenant Operator, Organization Operator, and Auditor/Tenant Auditor (view only)
Pre-requisite:
·
Organization exists
·
Certificate template is defined and available for the organization
Steps to create a Batch request with Data, CSR, and private key
are generated in Server
Step 1: Organization selection – It is a
required field
At this step: Admin role must select a certain tenant and an
organization of that tenant from the drop-down list
Illustrative screenshot:
Tenant Admin and Tenant Operation roles have to select the
organization from the drop-down list.
Illustrative screenshot:
Organization
operator role does not need to select the organization because the Batch
creation is for its organization.
Illustrative screenshot:
After select organization, click on NEXT button to continue…
Step 2: Batch Settings
This step allows to select Batch Data Source and CSR Source
Select Batch Data Source as Data, CSR and Private Key to be
generated in server as below:
After selecting Batch Data Source with Data, CSR and Private Key
to be generated in server, the page is shown with settings for:
·
Passphrase for key protection*:
Enter the passphrase of certificate. The length of the passphrase must be
between 8 and 50 characters.
·
Number of Certificates*:
Enter the number of Certificate will be generated in a batch
Illustrative screenshot:
Click on Previous to make the changes in previous step or Click on
Next button to continue…
Step 3: Certificate Settings
All certificate templates of selected Organization will be
displayed in drop-down list, you can select one from the list.
Illustrative screenshot:
After selecting the Certificate Template, all Subject DN, Subject
Alternative Name, Valid From, and Validity period (days) of that selected
Certificate template will be displayed in detail as below:
All required fields (*) of Certificate
Subject Information need to be set Value Type and corresponding Value.
Currently INeS IoT CMS system supports the following Value Type for all subject
DN:
·
Value: when Value type is set to Value, you must fill the fixed
value in Value textbox
·
Random Text: System automatically generate a random text
·
Random GUID: System automatically generate a random GUID
·
Prefix + Random Text: Set prefix value in Value Colum and It will
be in the front of Random Text
·
Prefix + Random GUID: Set prefix value in Value Colum and It will
be in the front of Random GUID
·
Random Text + Postfix: Set postfix value in Value Colum and It
will be behind Random Text
·
Random GUID + Postfix: Set postfix value in Value Colum and It
will be behind Random GUID
·
Prefix + Sequence: Set prefix value in Value Colum and Sequence's
starting index. The prefix value will be in front of Sequence
·
Sequence + Postfix: Set postfix value in Value Colum and
Sequence's starting index. The postfix value will be behind Sequence
Note: Country field only has Value Type = Value and user have to
select the Country. Optional field (for example Country) will not be shown in
Batch request detail page.
Illustrative screenshot:
All required fields in Subject Alternative Name Information must
be filled with the value
Illustrative screenshot:
You can set “Valid From” as well as Validity period (days) for all
certificates will be generated in the Batch
Note: max Validity period is set by CA so if you input the
Validity period greater than the max Validity of CA, all certificates will have
the max Validity of CA.
After settings for Certificate, you can click on Previous to make
the changes in previous step or Click on Next button to continue…
Step 4: Batch Information
This step is to set common information of the batch request
·
Name*: enter the Batch name
·
Description (optional)
·
Result File Type: Zip file by default
Illustrative screenshot:
After
fill the Name for the Batch, you can click on Previous to make the changes in
previous step or Click on SAVE button to create the Batch
After
the Batch is created, the status of the Batch is Ready, and you can
Start a Batch. All Batch details are displayed with Common Information of
Batch, Batch Settings, Certificate Settings, and Batch Results Settings so that
you can check carefully before starting the Batch
Illustrative
screenshot:
Common Information:
Batch Result
Batch Settings
Certificate Settings
Batch Result Settings
A new batch request is also listed on the Batch Requests list page
IMPORTANT: When Batch is in READY status, user can START or DELETE the
batch. Other Batch status like: Processing, Finished, Error…User can view batch
only.
Note: This version, IoT CMS system does not support Edit
functionality for Batch
Pre-requisite: Batch is created and is in READY status
Steps to run a Batch:
Step 1: Open the READY Batch from the Batch Requests list page
Step 2: On Batch Request Details page, find the Start button and click on
it
Illustrative screenshot:
After
clicking on Start button, Batch status is changed to Pending for
validating the request, then changing from Pending to Validating (Request
is being verified), if validating is successfully, the status is changed to Validated
(pending for executing the request), then request is executing, the status is
changed to Processing. When processing is completed successfully, the
status is updated to Finished, otherwise, the status is updated to Error.
Start a Batch successfully:
READY PENDING
VALIDATING
VALIDATED
PROCESSING
FINISHED
Start a Batch but not completed:
READY PENDING
VALIDATING
VALIDATED
PROCESSING
ERROR
Note: Should refresh page to update latest status of the Batch
Illustrative screenshot:
When the Batch processing is finished, then you can download the
results.
Prerequisite: The processing of a Batch has been finished.
If the Batch processing is completed successfully, its status will
turn to Finished. You can download the result as a Zip file and can view
all Certificates of the Batch
The
Zip file (Output.zip) will include Certificates and CSRs which are
generated in the Server
Click
on View Certificates, the Certificates page will show all certificates
of that batch (filter by Batch Generation and batch name)
If the Batch processing is NOT COMPLETED, its status will turn to Error. You can download the log file by clicking
on Download Log button.
Pre-requisite:
·
Organization is existing
·
Certificate template is required
·
CSV file is required and satisfy the following rules:
o
The file must be in CSV format (as a delimited text file: Comma,
semicolon, tab) with column headers in the first row. Another format like xls,
xlsx… will be refused
o
The column name is matched with subject name (distinguish
lowercase and uppercase)
o
Required columns (Required subject): for example, Common Name,
Base64CSR must be in the CSV file.
o
Optional columns (Optional subject): for example, Country – It
is
not required. If
it is in the CSV file, then data of Country column will be used in the Batch to
generate certificate. Otherwise, Country will not be used.
o
The CSV file contains only columns whose headers match the
required and optional columns above. Any column with a different header is not
accepted.
o
It
is recommended that the size of CSV file should be under 15MB to execute a
batch effectively
Steps to create a Batch request with Data and/or CSR from CSV file
Step 1: Organization selection – It is a
required field
At this step: Admin role must select a certain tenant and an
organization of that tenant from the drop-down list
Illustrative screenshot:
Tenant
Admin and Tenant Operation roles have to select the organization from the
drop-down list.
Illustrative screenshot:
Organization
operator role does not need to select the organization because the Batch
creation is for its organization.
Illustrative screenshot:
After select organization, click on NEXT button to continue…
Step 2: Batch Settings
This step allows to select Batch Data Source and CSR Source
Select Batch Data Source as Data and/or CSR from CSV file
as below:
Then
select CSR Source, there are 2 options for CSR source after selecting Data
and/or CSR from CSV file for Batch Data Source:
·
CSR
will be taken from CSV file: If select this option, CSR is required in the CSV file with
column headers Base64CSR
·
CSR
will be generated in Server: if select this option, CSR is NOT required in CSV file. CSR will
be generated in Server; you must set Passphrase for key protection. All CSRs
will be included in Zip file results after batch is processed successfully.
Illustrative screenshot: option “CSR will be taken from CSV file”
is selected.
Illustrative screenshot: option “CSR will be generated in Server”
is selected.
Click on Previous to make the changes in previous step or Click on
Next button to continue…
Step 3: Certificate Settings
All certificate templates of selected Organization will be
displayed in the drop-down list, you can select one from the list.
Illustrative screenshot:
After
selecting the Certificate Template, all Subject DN, Subject Alternative Name,
Valid From, and Validity period (days) of that selected certificate template
will be displayed in detail as below:
All
fields of Certificate Subject Information are mapped from CSV file, in
which the required fields must be in the CSV file. Optional field can be in or
not in the CSV file as it is not required.
Illustrative
screenshot: Common Name is required in the CSV file,
Country field is optional.
All required fields in Subject Alternative Name Information
must be filled with the value
Note: Optional field will not be shown in Batch request detail
page.
Illustrative screenshot:
You can set “Valid From” as well as Validity period (days) for all
certificates will be generated in the Batch
Note:
max Validity period is set by CA so if you input the Validity period greater
than the max Validity of CA, all certificates will have the max Validity of CA.
After settings for Certificate, you can click on Previous to make
the changes in previous step or Click on Next button to continue…
Step 4: CSV Information
This step is to upload and configure some settings for the CSV
file
If at step 2: option “CSR will be taken from CSV file” for
CSR Source, rules for the CSV file will be uploaded and will be shown as
follow:
·
The file must be in CSV format (as a delimited text file) with
column headers in the first row.
·
Required columns: Common Name, Base64CSR
·
Optional columns: Country
·
The CSV file contains only columns whose headers match the
required and optional columns above. Any column with a different header is not
accepted.
Illustrative screenshot:
If at step 2: option “CSR will be generated in Server” for
CSR Source, rules for the CSV file will be uploaded will be shown as follow:
·
The file must be in CSV format (as a delimited text file) with
column headers in the first row.
·
Required columns: Common Name
·
Optional columns: Country
·
The CSV file contains only columns whose headers match the
required and optional columns above. Any column with a different header is not
accepted.
Illustrative screenshot:
Upload
the CSV file and click Next to continue (you can click on Previous to make the
changes in previous steps).
NOTE:
Validating uploaded the CSV file is running in the background and if the CSV
file size is small, the result can be shown immediately in the CSV Information
screen. When a CSV file is VALID, the Next button is available to go to next
step
Illustrative screenshot: Valid CSV file
Illustrative
screenshot: Invalid CSV file, there are various warning messages depend on the
content in the CSV file. This is an example: there are some columns are not
allowed in the CSV file
Illustrative
screenshot: the CSR column is not allowed in the CSV file in case CSR will be
generated in Server
Step 5: Batch Information
This step is to set common information of the batch request
·
Name*: enter the Batch name
·
Description (optional)
·
Result File Type: Zip file by default
Illustrative screenshot:
After
fill the Name for the Batch, you can click on Previous to make the changes in
previous step or Click on SAVE button to create the Batch.
Batch
is created successfully with VALID CSV file only.
After
Batch is created, the status of Batch is Ready, and you can Start a
Batch. All Batch details are displayed with Common Information of Batch, Batch
Settings, Certificate Settings, and Batch Results Settings so that you can
check carefully before starting the Batch
Illustrative
screenshot:
Common Information:
Batch Result
Batch Settings
Certificate Settings
Batch Result Settings
A new batch request is also listed on the Batch Requests list page
IMPORTANT:
When Batch is in READY status, user can START or DELETE the batch. Other Batch
status like Pending, Validating Processing, Finished, Error…User can view batch
only.
Note:
This version, we do not support Edit functionality for Batch
Pre-requisite: Batch is created and is in READY status
Steps to run a Batch:
Step 1: Open the READY Batch from the Batch Requests list page
Step 2: On Batch Request Details page, find the Start button and click on
it
Illustrative screenshot:
After
clicking on Start button, Batch status is changed to Pending for
validating the request, then changing from Pending to Validating (Request
is being verified), if validating is successfully, the status is changed to Validated
(pending for executing the request), then request is executing, the status is
changed to Processing. When processing is completed successfully, the
status is updated to Finished, otherwise, the status is updated to Error.
Start a Batch successfully:
READY PENDING
VALIDATING
VALIDATED
PROCESSING
FINISHED
Start a Batch but not completed:
READY PENDING
VALIDATING
VALIDATED
PROCESSING
ERROR
Note: Should refresh page to see the latest status of the Batch
Illustrative screenshot:
Prerequisite: The processing of a Batch has been finished.
If
the Batch processing is completed successfully, its status is Finished.
You can download the result as a Zip file and can view Certificates of the
Batch
The Zip file (Output.zip) will include all Certificates
only if CSR is included in the CSV file.
The Zip file (Output.zip) will include all Certificates and CSRs
if the CSR is generated in Server
Click on View Certificates, the Certificates page will show
all certificates of that batch (filter by Batch Generation and batch name)
If the Batch processing is NOT COMPLETED, its status will turn to Error. You can download the log file by clicking
on Download Log button.
This
functionality is to create an EST Server for CMS. EST is a standard protocol to
obtain and manage certificates, and widely supported by the IoT industry.
The
EST Server functionality available in the CMS Module is intended to be used by
applications (i.e. factory applications or gateways)
that need to obtain certificates to be embedded later in IoT Devices.
INeS
also provides a separate EST functionality integrated in the DPS Module, which
is intended to be used by the IoT devices, which will authenticate themselves
with a “Factory Certificate” (or a unique password) to obtain a corresponding “Operational
Certificate”.
Therefore, a possible use case for EST in INeS could be:
·
EST in CMS is used by a provisioning application to obtain
“Factory Certificates” and embed those in the IoT Devices
·
EST in DPS is used by the IoT Device, to obtain an “Operational
Certificate”
There are two authentication methods to connect EST Sever:
·
Enable HTTP Basic Authentication: The client uses the API
credential for authentication to request new operational certificates or
re-enroll (renew) certificates. The API credential can be a pair of App ID and
App Key working as the user name and password.
·
Enable TLS Client Authentication: The client uses the TLS Client
Certificate for authentication to request new operational certificates or
re-enroll (renew) certificates.
The EST Server for CMS can only be configured by Admin and Tenant
Admin roles. Auditor can view only.
Pre-requisite:
·
Only Admin and Tenant Admin role can create EST Server.
·
Tenant/Organization exists
·
Certificate template is defined and available for the organization
Steps to create an EST Server:
Step 1: Navigate
to Configuration > EST Server on left-menu to view the EST Server list:
Step 2: Click
on “New” button, and fill the all required
fields, marked with the “*” sign:
·
Domain – It is a required field
Admin
role must fill an EST domain name. EST domain
can only be a subdomain of certifyiddev.com (on INeS IoT Dev); can be
a subdomain of certifyiddemo.com (on INeS IoT Demo); can be a
subdomain of certifyid.com (on PRODUCTION environment)
You can enter a domain name without port (lab-est054.certifyiddemo.com) or with port (lab-est04.certifyiddemo.com:443).
Illustrative screenshot:
·
Tenant selection and Organization selection
– It is a required field
o
Admin role must select a certain tenant and an organization of
that tenant from the drop-down list
Illustrative screenshot:
o
Tenant Admin role has to select the organization from the
drop-down list.
Illustrative screenshot:
·
Certificate Templates selection – It is a
required field
All
certificate templates of selected Organization will be displayed in drop-down list;
you can select one from the list.
Illustrative screenshot:
·
Enable Servergen Operation: It allows the
key to be generated by server
o
By default it is ON (enable) mode.
o
You can select OFF (disable) mode.
·
Authentication Method option – It is a
required field
At least one
authentication method must be enabled, you can select both methods:
o
Enable
HTTP Basic Authentication
o
Enable
TLS Clients Authentication
Illustrative screenshot:
·
API
IP Whitelist - It is an optional field
List
of accepted IP addresses for this EST server access.
If no IP added. This EST server will be accessed without
restrictions.
Illustrative screenshot:
Step 3: Click on SAVE button to create the EST Server.
After
EST Server is created, the status of EST Server is Active. All EST Server details are displayed.
Illustrative screenshot:
A new EST Server is also listed on the EST
Server list page
NOTE:
·
The same EST Server can be used for all organizations in that
Tenant. It cannot be used for other Tenant.
·
Each Certificate template in INeS IOT system only works for either
RSA or ECC key type. Therefore, each EST Server associated with only one
Certificate template will issue certificate using either RSA or ECC key type.
All available EST Servers appear in this list.
The “Actions” button allows Clone/ Edit the EST Server.
Admin and Tenant Admin can:
·
“Clone” an existing EST Server: will clone all information of
selected EST Server to new one, user have to rename the EST Server before
saving if the EST server is created for another Tenant.
·
“Edit” an existing EST Server.
·
“Delete” an EST Server.
The “View” icon opens the EST Server Details page.
Open
the EST Server detail page by clicking on View button or EST Server name on the
list page.
EST
Server detail page shows all EST Server information. It’s possible to
deactivate, re-activate, delete, and edit, using the related buttons available
in this page.
The
information of the Port is displayed
and Test EST Server Connection button
is available for test connection to EST Sever to know it is available or not.
Click
on the Test EST Server Connection button
to check the status of the EST Server Connection.
·
Est
Server is available.
·
EST server is not available.
You can download the Authentication file.
·
If the Enable HTTP Basic Authentication is enabled then you can
Download API Credential file. It will include app_id and app_key.
·
If the Enable TLS Client Authentication is enabled then you can
Download the TLS Certificate file as Zip
file. The Zip file will include Certificates, api_credentials (app_id and app_key) and
certificate_pfx_passphrase. Please note: The private key is not stored.
Ensure you keep it safely after download. If you lose it, you have to generate
new TLS certificate.
Allows to edit all available fields EXCEPT Tenant and
Organization:
Please note that Deletion operations can’t be reversed. A
confirmation page will be shown.