eimadmin
Purpose
- Domains
- Registries
- Identifiers
- Associations
- Access authorities
- Policies
- Add an object
- Purge an object
- List objects (for example, list directories, list registries, and so forth)
- Modify attributes associated with objects
- Erase attributes
Format
eimadmin -a | -p | -l | -m | -e
-D | -R | -I | -A | -C | -Y
[-b bindDN]
[-B attribute]
[-c accessType]
[-d domainDN]
[-E certificate]
[-f accessUserType]
[-F issuerFilter]
[-g registryParent]
[-G certificateFilterTemplate]
[-h ldapHost]
[-i identifier]
[-j otherIdentifier]
[-J subjectFilter]
[-k URI]
[-K keyFile [ -P keyFilePassword] [-N certificateLabel]]
[-n description]
[-o information]
[-q accessUser]
[-r registryName]
[-s switch]
[-S connectType]
[-t associationType]
[-T targetRegistry]
[-U identifierUUID]
[-u registryUser]
[-v verboseLevel]
[-w bindPassword]
[-x registryAlias]
[-y registryType]
[-z registryAliasType]
- Each eimadmin command must include one action and one object type. Depending on the object and action you are performing on it, EIM might require additional parameters.
- Some options are for multi-value attributes, which you can specify more than once. Other options are for single-value attributes, which you can specify once. (If you repeat an option that is for a single-value attribute, eimadmin processes only the first value it encounters in the command.) Other than this, the order in which you specify parameters is not important.
- You can code the parameters of the eimadmin command in several ways:
- You can concatenate an action and an object, but must omit the embedded hyphen:
-aD - You can include both hyphens but must separate the two options with a
space:
-a -D - In other words, the following is not valid because it includes both hyphens and there is
no space before
-D:-a-D
- You can concatenate an action and an object, but must omit the embedded hyphen:
Rule:
| Object | Action | Required | Optional | Comments |
|---|---|---|---|---|
D |
a |
b,d, h, w |
n, B |
Add a domain. b and w can be omitted if bind information and password are obtained from the RACF profile. |
p |
d, h, b, w |
s |
Remove a domain. If the domain is not empty, include '-s RMDEPS'. |
|
l |
d, h, b, w |
List domain(s). Specify -d'*' to list all domains. |
||
m |
d, h, b, w |
n, B |
Modify or add a domain attribute. |
|
e |
d, h, b, w |
n, B |
Remove or clear a domain attribute. |
|
R |
a |
r,y |
g, k, n, x, z, B |
Add a registry. The value specified for '-r' is assumed to be a new system registry unless '-g' is also specified, in which case the '-r' value indicates a new application registry. |
p |
r |
s |
Remove a registry. | |
l |
r |
y |
List registries. Return all registry entries in the domain that match the specified '-r' value search filter, which might contain the wild card '*'. | |
m |
r |
k, n, x, z, B |
Modify or add a registry attribute, including a registry alias. | |
e |
r |
k, n, x, z, B |
Remove or clear a registry attribute, including a registry alias. | |
I |
a |
i |
j, n, o |
Add an identifier. |
p |
i |
Remove an identifier. | ||
l |
i |
List an identifier by unique identifier name. Return all identifier entries in the domain that match the specified '-i' value search filter, which might contain the wild card '*'. | ||
l |
U |
Echo the identifier UUID followed by the unique identifier name. The -U value search filter cannot include the wild card '*'. | ||
l |
j |
List an identifier by non-unique identifier name. Return all identifier entries in the domain that have a non-unique identifier matching the specified '-j' value search filter, which might contain the wild card '*'. | ||
m |
i |
j, n, o |
Modify or add an identifier attribute. | |
e |
i |
j, n, o |
Remove or clear an identifier attribute. | |
A |
a |
i, r, u or E, t |
n, o |
Add an association. You can repeat the '-t' option to add multiple associations types. Flags '-n' and '-o' are relevant only to TARGET associations. |
p |
i, r, u or E, t |
Remove an association. You can repeat the '-t' option to remove multiple associations types. | ||
l |
i |
t |
List association(s). Return all associations in the domain for specified '-i' unique identifier. Specify a '-t' value to limit the entries returned to the given association type. | |
m |
r, u or E, t |
n, o |
Modify or add an association attribute. Flags '-n' and '-o' are relevant only to TARGET associations. | |
e |
r, u or E, t |
n, o |
Remove or clear an association attribute. Flags '-n' and '-o' are relevant only to TARGET associations. | |
Y |
a |
t DOMAIN, T, u or E |
n, o |
Add a default domain policy association. For association type -t DOMAIN only. |
a |
t REGISTRY, r, T,
u or E |
n, o |
Add a default domain policy association. For association type -t REGISTRY only. | |
a |
r, one or more of J,F,
G |
Add a filter policy. No association type is specified. | ||
a |
t FILTER, r one
or more of J, F, G, T, u or E |
n, o, |
Add a filter policy and a filter policy association. For association type -t, FILTER only. | |
p |
t DOMAIN, T, u or E |
Remove a default domain policy association. For association type -t DOMAIN only. | ||
p |
t REGISTRY, r,T,
u or E |
Remove a default registry policy association. For association type -t REGISTRY only. | ||
p |
r, one or more of J,
F, G |
Remove a filter policy and it's filter policy associations. No association type is specified. | ||
p |
-t FILTER, r,
one or more of J, F, G, T, u or E |
Remove a filter policy association. For association type -t FILTER only. | ||
l |
t POLICY |
r, T |
List all types of policies for a domain, all policies with the source registry, and/or all policies with the target registry. For association type -t POLICY. | |
l |
t DOMAIN |
T, u or E |
List default registry policies. For association type -t DOMAIN only. | |
l |
t REGISTRY |
r, T, u or E |
List default registry policies. For association type -t REGISTRY only. | |
l |
t FILTER |
T, u or E, J,
F, G, r |
List only filter policies with associations. For association type -t FILTER only. | |
l |
R, J, F, G |
List all filters policies. Associations are not displayed. No association type is specified. | ||
m |
T, u or E |
n, o |
Modify or add an attribute belonging to the target user of a policy. | |
e |
T, u or E |
n, o |
Remove or clear an attribute belonging to the target user of a policy. | |
C |
a |
c, q, f |
r |
Add access. For access type REGISTRY, provide a specific '-r' registry value, or a wild card '*' indicating access to all registries in the domain. |
p |
c, q, f |
r |
Remove access. For access type REGISTRY, provide a specific '-r' registry value, or a wild card '*' indicating access to all registries in the domain. | |
l |
c |
r |
List access by type. For access type REGISTRY, provide a specific '-r' registry value, or a wild card '*' indicating access to all registries in the domain. | |
q, f |
List access by user. |
Parameters
- Actions
- -a|-p|-l|-m|-e
- This is the action you want to perform:
- -a
- Add an object. (Create an object definition and its attributes.)
- -p
- Purge an object. (Remove an object definition and its attributes.)
- -l
- List an object. (Retrieve an object definition and its attributes.)
- -m
- Modify an attribute. (Alter an attribute of an existing object, either by changing a single-value attribute or adding a multi-value attribute.)
- -e
- Erase an attribute. (Clear a single-value attribute or remove a multi-value attribute.)
- Object types
- -D|-R|-I|-A|-C |-Y
- This parameter specifies the object types on which to perform
the action:
- -D
- A domain. This is a collection of identifiers, user registries, and associations between identifiers and user IDs, and policies, stored within an LDAP directory. (For more information about EIM domains, see EIM domain.)
- -R
- A registry. This is the name of a user registry. Associations are defined between identifiers and user IDs in the user registry. It is a logical collection of user identities and policies. (For more information, see EIM domain.)
- -I
- An identifier. This is the name of a person or entity participating in an EIM domain. (For more information, see EIM domain.)
- -A
- An association. This is a relationship between an identifier in the EIM domain with a user ID. (For more information, see EIM domain.)
- -C
- An access authority. This is an EIM-defined LDAP access control group. (For more information, see EIM access control.)
- -Y
- A policy. This is a relationship between a registry or domain and a user identity in a target registry.
- Processing controls, attributes, and connection values
- Processing controls
- Processing controls include the following:
- -s switch
- The switch specifies a value that affects the
way the eimadmin utility functions operate. You can specify the following
value:
- RMDEPS
- Remove dependents when removing a domain or system registry. This
facilitates removing a domain by first removing all identifiers and
registries defined for the domain. It facilitates the removing a system
registry by first removing all applications registries defined for
the registry. Attention: The eimadmin utility does not warn you that dependents exist before removing them, so use this switch carefully.
- -U identifierUUID
- The identifierUUID is the universally unique
identifier form of the EIM identifier. This flag is only valid with
eimadmin -lI.
- -v verboseLevel
- The verboseLevel is an integer from 1 to 10,
that controls the amount of trace detail that the eimadmin utility
displays. (It is for diagnosing problems in the eimadmin utility.)
The default value of 0 indicates no trace information. You can specify
an integer value from 1 to 10, from the least to greatest amount of
trace information.The utility checks the value and displays trace information defined for the level and all lower levels. The following levels trigger specific information:
- "3", which indicates EIM API call parameters and return values
- "6", which indicates option values and input file labels
- "9", which indicates utility routine entry and exit statements
- Objects and attributes
- Rule: Options are single-valued unless indicated otherwise.
The section that follows explains required and optional attributes and their parameters.
Tips:- You can specify these attributes as command options or as fields in input files. If you are specifying command options, you must enclose values with imbedded blanks within quotation marks (") or ('). Quotation marks are optional for single-word values. Specifying a multi-word value without quotation marks in effect truncates the command line options; values after the first word are truncated.
- The following special characters are not allowed in registryName,
registryParent, or identifier:
, = + < > # ; \ *
Rule:- Except where indicated, the parameters are single-value options. If you specify an option more than once, the utility processes only the first occurrence.
- -B attribute
- The attribute flag is used to add, modify, remove, or clear and attribute for the domain. It may
also enable or disable a function in the EIM domain.The attribute flag specified with the domain object may have the following value:
- POLICY
- Enable or disable default domain and registry policies. By default, default policies are disabled in the domain.
The attribute flag specified with the registy object may have one of the following values:- LOOKUP
- Enable or disable lookup operations
- POLICY
- Enable or disable default registry policies
- -c accessType
- The accessType specifies the scope of access
authority that a user has over the EIM domain. It must be one of the following values:
- ADMIN
- Specifies administrative access.
- REGISTRY
- Specifies registry access. If you specify REGISTRY, you must also specify a registry value (-r). The registry value can be a specific registry name or it can be an asterisk (*) to indicate access to all registries.
- IDENTIFIER
- Specifies identifier access.
- MAPPING
- Specifies mapping operations access.
- -E certificate
- The name of a file or dataset containing an X.509 certificate. The name stored in the
certificate will be used to create an association with an identifier. The certificate may be DER or
base 64 encoded. The base 64 encoded certificate may be in EBCIDIC or ASCII.
When working with an source, target, or administrative associations, the subject's distinguished name, the issuer's distinguished name, and the public key info are extracted from the certificate and used to create the registry user name for the association.
- -f accessUserType
- The accessUserType specifies the type for the access user name. It must be
one of the following:
- DN
- The accessUser is a distinguished name. (See -q accessUser for a description)
- KERBEROS
- The accessUser is a Kerberos identity. (See -q accessUser for a description)
- -F issuerFilter
- All or part of the issuer portion of a certificate filter policy name. When used without the
-E
certificate flag, the issuer filter must be a sequence of relative
distinguished names that make up a complete certificate filter policy issuer name. For example:
When used with the -E certficate flag, the issuer filter is a substring that indicates what part of the issuer's distinguished name from the certificate should be used for the certificate filter policy's issuer name. For example if the certificate has the issuer's distinguished name of the following:O=A Certificate Authority,L=Internet
and the issuerFilter value is O=, then the issuer portion of the certificate filter policy name is:OU=Certified User,O=A Certificate Authority,L=Internet
If the -F flag is omitted when working with certificate filter policies, the certificate filter policy's name will not contain an issuer filter.O=A Certificate Authority,L=Internet - -G certificateFilterTemplate
- The name of a file or dataset containing an X.509 certificate. The name stored in the
certificate will be used to create a certificate filter policy. The certificate may be DER or base
64 encoded. The base 64 encoded certificate may be in EBCIDIC or ASCII.
When working with a certificate filter policy, only the subject's distinguished name and issuer's distinguished name are extracted from the certificate. They are used as a template for the name of the certificate filter policy. The -J subjectFilter and -F issuerFilter flags are used to indicate what portion of the distinguished names to use.
- -g registryParent
- The registryParent specifies the name of a system registry. An application registry is a subset of a system registry. If you are adding an application registry, you must use the -r option and the -g option. The -r value is the application registry you are defining. The -g option is the preexisting system registry.
- -i identifier
- The identifier is a unique identifier name.
Example:
John Day
- -j otherIdentifier
- The otherIdentifier specifies a non-unique
identifier name.
Example:
JohnNote: You can specify this option multiple times to assign multiple non-unique identifiers. - -J subjectFilter
- All or part of the subject portion of a certificate filter policy name. When used without the
-E
certificate flag, the subject filter must be a sequence of relative
distinguished names that make up a complete certificate filter policy subject name. For example:
When used with the -E certificate flag, the subject filter is a substring that indicates what part of the subject's distinguished name from the certificate should be used for the certificate filter policy's subject name. For example if the certificate has the following subject distinguished name:O=My Company,C=US
and the subjectFilter value is C=, then the subject portion of the certificate filter policy name is:CN=John Smith,O=My Company,C=US
If the -J flag is omitted when working with certificate filter policies, the certificate filter policy name will not contain a subject filter.C=US
- -k URI
- The URI specifies the Universal Resource Identifier (URI) for the registry (if one exists).
- -n description
- The description specifies any text (that you provide) to associate with the
domain, registry, identifier, or association. Note: You can define a user description only for target associations.
- -o information
- The information specifies additional information to associate with an
identifier or association.Note: You can define user information only for target associations.You can specify this option multiple times to assign multiple pieces of information.
- -q accessUser
- The accessUser specifies the user distinguished name (DN) or the Kerberos identity with EIM access, depending on the accessUserType specified.
- -r registryName
- The registryName specifies the name of a registry. When you add a new registry, eimadmin considers the registry a system registry unless you also specify the -g option. If you specify the -g option, eimadmin considers the registry an application registry.
- -t associationType
- The associationType specifies the relationship
between an identifier and a registry or a policy type. It must be one of the following:
- ADMIN
- Indicates associating a user ID with an identifier for administrative purposes.
- SOURCE
- Indicates that the user ID is the source (or from) of a lookup operation.
- TARGET
- Indicates that the user ID is the target (or to) of a lookup operation.
- DOMAIN
- Indicates a default domain policy.
- REGISTRY
- Indicates a default registry policy.
- FILTER
- Indicates a certificate filter policy.
- POLICY
- Indicates any kind of policy.
Note: You can specify this option multiple times to define multiple relationships. - -T targetRegistryName
- The targetRegistryName specifies the name of a registry. This value is used when creating or deleting a default registry policy.
- -u registryUser
- The registryUser specifies the user ID of the user defined in the registry.
- -x registryAlias
- The registryAlias specifies another name for a
registry.
See Working with registry aliases for information about working with aliases.
You can specify this option multiple times to assign multiple aliases.
- -y registryType
- The registryType specifies the type of registry.
Predefined types that eimadmin recognizes include the following:
- RACF
- OS400
- KERBEROS (for case ignore)
- KERBEROSX (for case exact)
- AIX
- NDS
- LDAP
- PD (Policy Director)
- WIN2K
- X509
- LINUX
- DOMINOS
- DOMINOL
- -caseIgnore
- -caseExact
- -z registryAliasType
- The registryAliasType specifies the type for a
registry alias. You can invent your own value or use one of the following suggested values:
- DNSHostName
- KerberosRealm
- IssuerDN
- RootDN
- TCPIPAddress
- LdapDnsHostName
Note: For a set of command line options or single input data record, the eimadmin utility recognizes only the first specification of registryAliasType. However, the eimadmin utility does recognize multiple registry aliases and associates all of them with the single registryAliasType.
- Connection values
- The connection information needed by the utility includes the EIM domain (-d) and its
controlling server (-h), the identity (-b,-w; or -K,-P,-N) with which to authenticate (bind) to the
server, and the authentication method (-S).
For object types other than domain (-D), specifying the domain, server and bind identity is optional. If not specified, the information is retrieved from a RACF profile. See Storing LDAP binding information in a profile for more information.
Rule: If any of the connect information is specified, the full set of values required for the connect type must be specified. Omitting one or more values (but not all) results in an error. Table 2 shows the required and optional values for each connect and host type when specified with the eimadmin command:Table 2. Required connection values. Required connection values Connection type Host type secure(ldaps://) / non-secure(ldap://)Required values Optional values SIMPLE or CRAM-MD5 secure -d, -h, -b, -w, -K, -P -N non-secure -d, -h, -b, -w EXTERNAL secure -d, -h, -K, -P, -S -N non-secure unsupported unsupported GSSAPI secure -d, -h, -K, -P, -S -N non-secure -d, -h, -S Tips:- Exceptions:
- The domain option (-d) is not required for domain functions if the value is specified through an input file.
- An SSL key database file password or stash file (-P) is not required when -K specifies a RACF key ring.
- The utility prompts for the simple bind password if required and -w is not specified on the command line, and prompts for the SSL key database file password if required and -P is not specified on the command line.
- -S connectType
- The connectType is the method of authentication to the LDAP server. It must
be one of the following values:
- SIMPLE (bind DN and password)
- CRAM-MD5 (bind DN and protected password)
- EXTERNAL (digital certificate)
- GSSAPI (Kerberos)
For connect type GSSAPI, the default Kerberos credential is used. This credential must be established using a service such as kinit prior to running eimadmin. For kinit and related information, refer to z/OS Integrated Security Services Network Authentication Service Administration.
- -d domainDN
- The domainDN is the full distinguished name (DN)
of the EIM domain. It begins with 'ibm-eimDomainName='. It further consists of:
- domainName — The name of the EIM domain
you are creating, for example:
MyDomain - parent distinguished name — The distinguished name for the entry immediately preceding the given entry in the directory information tree hierarchy, for example, "o=ibm,c=us".
Example:
ibm-eimDomainName=MyDomain,o=ibm,c=us - domainName — The name of the EIM domain
you are creating, for example:
- -h ldapHost
- The ldapHost is the URL and port for the LDAP
server controlling the EIM data. The format is:
Examples:
ldap://some.ldap.host:389ldaps://secure.ldap.host:636 - -b bindDN
- The bindDN is the distinguished name to use for
the simple bind to LDAP. The format is:
Examples:
orcn=Johns Admincn=Johns Admin,o=ibm,c=us - -w bindPassword
- The bindPassword is the password associated with the bind DN (for the LDAP bind).
- -K keyFile
- The keyFile is the name of the SSL key database file, including the full path
name. If the file cannot be found, it is assumed to be the name of a RACF key ring which contains
authentication certificates. This value is required for SSL communications with a secure LDAP host
(prefixed
ldaps://).Example:
/u/eimuser/ldap.kdb - -P keyFilePassword
- The keyFilePassword is the password required to access the encrypted information in the key
database file. Alternatively, you can specify an SSL password stash file for this option by
prefixing the stash file name with
file://.Example:
secret or file:///u/eimuser/ldapclient.sthNote: The eimadmin utility prompts for a key file password if you specify the name of a key database file for -K but not the -P option on the command line. - -N certificateLabel
- The certificateLabel identifies which certificate to use from the key
database file or RACF key ring. If this option is not specified, the certificate marked as the
default in the file or ring is used.
Example:
eimcert
- Exceptions:
Authorization
- They have a bind distinguished name and password defined at the LDAP server containing the EIM domain
- Their bind distinguished name has one of the EIM authorities:
- EIM administrator
- EIM registries administrator
- EIM registry X administrator
- EIM identifiers administrator
Messages
Eimadmin issues a message to prompt for a password or to indicate an error. Do not expect to receive a message for successful completion unless you use an input file. When processing records in an input file, eimadmin issues an informational message for the start, stop, and a progress message for every 50 records.
For eimadmin error messages, see Messages, specifically ITY4xxx messages.
Error codes
| Exit code | Meaning |
|---|---|
| 0 | No errors encountered. |
| 4 | One or more errors encountered but, if you specified an input file, all records were processed |
| 8 | A severe error occurred that caused processing to stop before reaching the end of an input file, if specified. |