createProfile #
Create a new profile in Kuzzle.
There is a small delay between profile creation and its availability in our search layer (usually a couple of seconds). That means that a profile that was just created might not be returned by the
searchProfiles
function at first. createProfile(id, content, [options], callback) #
Arguments | Type | Description |
---|---|---|
id | string | Unique profile identifier |
policies | array of JSON objects | List of policies to apply to this profile |
options | string | (Optional) Optional arguments |
callback | function | Callback handling the response |
Options #
Filter | Type | Description | Default |
---|---|---|---|
queuable | boolean | Make this request queuable or not | true |
replaceIfExist | boolean | If the same profile already exists: throw an error if sets to false. Replace the existing profile otherwise | false |
refresh | string | If set to wait_for , Kuzzle will wait the persistence layer to finish indexing (available with Elasticsearch 5.x and above) | undefined |
Callback Response #
Returns a security Profile object.
Usage #
var policies = [
{roleId: 'myrole'},
{
roleId: 'default',
restrictedTo: [
{index: 'index1'},
{index: 'index2', collections: ['foo', 'bar'] }
]
}
];
// You can chose to replace the given profile if already exists
var options = {
replaceIfExist: true
};
// Using callbacks (NodeJS or Web Browser)
kuzzle
.security
.createProfile('myprofile', policies, options, function(error, profile) {
});
// Using promises (NodeJS)
kuzzle
.security
.createProfilePromise('myprofile', policies, options)
.then(profile => {
});
Edit this page on Github(opens new window)