streamtool adduserrole
Usage
adduserrole [-d,--domain-id <did>]
[-i,--instance-id <instance>] [-U,--User <user>]
[-h,--help] [--trace <level>] [-v,--verbose <level>]
[--zkconnect {<host>:<port>},... | --embeddedzk]
<role> <user>
The streamtool adduserrole command adds a user to the list of users that have a specific role in an instance.
Authority
You must have write authority for the config instance object. By default, the DomainAdministrator and InstanceAdministrator roles have this authority. For more information about access control lists, see streamtool getacl.
Description
A role is a set of permissions or access rights. You can assign roles to users or groups of users. You can then use roles to secure instance objects by setting the permissions for the role in the Streams access control list (ACL).
This command assigns roles in an instance to users. To assign roles in an instance to groups, use the streamtool addgrouprole command. To assign roles in a domain to users, use the streamtool adduserdomainrole command.
The default roles in an instance are InstanceAdministrator and InstanceUser.
Options
- -d,--domain-id <did>
- Specifies the domain identifier.
If you do not specify this option, Streams uses the domain name that is set in the STREAMS_DOMAIN_ID environment variable. By default, that domain name is
StreamsDomain
. If you are using the interactive streamtool interface, it uses the name of the active domain for the current streamtool session or else it prompts you for the domain name.The active domain for the current streamtool session is set every time that you successfully run a streamtool command with a -d or --domain-id option. Alternatively, you can run the streamtool domain command in the interactive interface.
- --embeddedzk
Specifies to use the embedded copy of ZooKeeper. This option is not supported within the interactive streamtool interface.
If you are not using the interactive streamtool interface and you do not specify either this option or the --zkconnect option, Streams uses the ZooKeeper connection that is associated with the active domain or the domain that is specified in the --domain-id option. Streams determines which connection maps to the domain by using cached information about the domains. In this scenario, if the domain identifier is not unique in the Streams configuration cache, the command fails.
- -h,--help
- Specifies to show the command syntax.
- -i,--instance-id <instance>
- Specifies the instance identifier.
If you do not specify this option, Streams uses the instance identifier that is set in the STREAMS_INSTANCE_ID environment variable. By default, that instance identifier is
StreamsInstance
. If you are using the interactive streamtool interface, it tries to use an instance ID that you specified in a previous command. If no such value is found, the command uses the STREAMS_INSTANCE_ID environment variable. Alternatively, you can run the streamtool instance command in the interactive interface. - --trace <level>
- Specifies the trace setting. The following valid levels are
listed in order of increasing verbosity, which is to say that the
first level in the list generates the least amount of information:
off
error
warn
info
debug
trace
off
. - -U,--User <user>
- Specifies an Streams user ID that has authority to run the command.
- -v,--verbose <level>
- Specifies to provide more detailed command output. The
verbosity level can be
0
-3
, where0
disables detailed reporting and each increment provides more detailed output. - --zkconnect <{<host>:<port>},...>
The name of one or more host and port pairs that specify the configured ZooKeeper servers. This option is not supported within the interactive streamtool interface.
If you are not using the interactive streamtool interface and you do not specify this option, Streams tries to use:
- The --embeddedzk option
- The value from the STREAMS_ZKCONNECT environment variable
- A ZooKeeper connection string that is derived from cached information about the current domain.
Arguments
- role
- Specifies a security role. Role names can be 256 characters in length and must be alphanumeric characters or underscores (_).
- user
- Specifies a user identifier.
Examples
In the following example, the command assigns the role "testrole" to the user "jsmith" in the instance "streams":
[streamtool <bsmith@mydomain.streams>] adduserrole testrole jsmith