PrivX local and remote users and role mappings

get /role-store/api/v1/users/{user_id}

Get specific user & roles.

user_id

string

required

User ID

Response

ExamplesSchema

Successful response, returns user info

{
  "id": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "source_user_id": null,
  "created": "2017-01-01T15:05:05Z",
  "updated": "2017-01-01T15:05:05Z",
  "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "author": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "comment": "A comment",
  "tags": [
    "string"
  ],
  "principal": "string",
  "distinguished_name": "string",
  "given_name": "string",
  "full_name": "string",
  "job_title": "string",
  "company": "string",
  "department": "string",
  "email": "string",
  "telephone": "string",
  "locale": "fi_FI",
  "roles": [
    {
      "id": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "string",
      "comment": "A comment",
      "principal_public_key_strings": [
        "string"
      ],
      "permit_agent": true,
      "access_group_id": "5bf77342-221c-11ee-be56-0242ac120002",
      "permissions": [
        "licenses-manage"
      ],
      "context": {
        "enabled": true,
        "block_role": true,
        "validity": [
          "MON"
        ],
        "start_time": "string",
        "end_time": "string",
        "timezone": "string",
        "ip_masks": [
          "string"
        ]
      },
      "explicit": true,
      "implicit": true,
      "system": true,
      "grant_type": "PERMANENT",
      "grant_validity_periods": [
        {
          "grant_start": "2017-01-01T15:05:05Z",
          "grant_end": "2017-01-02T15:05:05Z"
        }
      ],
      "floating_length": 24
    }
  ],
  "attributes": [
    {
      "key": "aws_account",
      "value": "admin-bob"
    }
  ],
  "permissions": [
    "licenses-manage"
  ],
  "source": "string",
  "mfa": {
    "status": "ENABLED",
    "seed": {
      "seed_string": "string",
      "seed_qr_code": "string"
    }
  },
  "stale_access_token": true,
  "authorized_keys": [
    {
      "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
      "username": "joe@privx.com",
      "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
      "source": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "work",
      "comment": "Joe's work laptop key",
      "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
      "not_before": "2020-07-31T17:32:28Z",
      "not_after": "2022-07-31T17:32:28Z",
      "expires_in": 123,
      "source_address": [
        "192.168.100.0/24"
      ],
      "fingerprints": [
        "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
      ]
    }
  ],
  "webauthn_credentials": [
    {
      "id": "5bf77342-221c-11ee-be56-0242ac120002",
      "credential_id": "string",
      "name": "string",
      "comment": "string",
      "last_used": "2017-01-01T15:05:05Z",
      "created": "2017-01-01T15:05:05Z",
      "author": "5bf77342-221c-11ee-be56-0242ac120002",
      "updated": "2017-01-01T15:05:05Z",
      "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059"
    }
  ]
}

get /role-store/api/v1/users/{user_id}/settings

Get specific user settings.

user_id

string

required

User id

Response

ExamplesSchema

Successful response, returns user's settings

{}

put /role-store/api/v1/users/{user_id}/settings

Set specific user's settings.

Response

ExamplesSchema

Successful response.

{
  "id": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "source_user_id": null,
  "created": "2017-01-01T15:05:05Z",
  "updated": "2017-01-01T15:05:05Z",
  "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "author": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "comment": "A comment",
  "tags": [
    "string"
  ],
  "principal": "string",
  "distinguished_name": "string",
  "given_name": "string",
  "full_name": "string",
  "job_title": "string",
  "company": "string",
  "department": "string",
  "email": "string",
  "telephone": "string",
  "locale": "fi_FI",
  "roles": [
    {
      "id": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "string",
      "comment": "A comment",
      "principal_public_key_strings": [
        "string"
      ],
      "permit_agent": true,
      "access_group_id": "5bf77342-221c-11ee-be56-0242ac120002",
      "permissions": [
        "licenses-manage"
      ],
      "context": {
        "enabled": true,
        "block_role": true,
        "validity": [
          "MON"
        ],
        "start_time": "string",
        "end_time": "string",
        "timezone": "string",
        "ip_masks": [
          "string"
        ]
      },
      "explicit": true,
      "implicit": true,
      "system": true,
      "grant_type": "PERMANENT",
      "grant_validity_periods": [
        {
          "grant_start": "2017-01-01T15:05:05Z",
          "grant_end": "2017-01-02T15:05:05Z"
        }
      ],
      "floating_length": 24
    }
  ],
  "attributes": [
    {
      "key": "aws_account",
      "value": "admin-bob"
    }
  ],
  "permissions": [
    "licenses-manage"
  ],
  "source": "string",
  "mfa": {
    "status": "ENABLED",
    "seed": {
      "seed_string": "string",
      "seed_qr_code": "string"
    }
  },
  "stale_access_token": true,
  "authorized_keys": [
    {
      "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
      "username": "joe@privx.com",
      "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
      "source": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "work",
      "comment": "Joe's work laptop key",
      "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
      "not_before": "2020-07-31T17:32:28Z",
      "not_after": "2022-07-31T17:32:28Z",
      "expires_in": 123,
      "source_address": [
        "192.168.100.0/24"
      ],
      "fingerprints": [
        "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
      ]
    }
  ],
  "webauthn_credentials": [
    {
      "id": "5bf77342-221c-11ee-be56-0242ac120002",
      "credential_id": "string",
      "name": "string",
      "comment": "string",
      "last_used": "2017-01-01T15:05:05Z",
      "created": "2017-01-01T15:05:05Z",
      "author": "5bf77342-221c-11ee-be56-0242ac120002",
      "updated": "2017-01-01T15:05:05Z",
      "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059"
    }
  ]
}

get /role-store/api/v1/users/{user_id}/roles

Get specific user's roles.

user_id

string

required

User ID

Response

ExamplesSchema

Successful response, returns user's role IDs & indication if the role is explicitly granted or implicitly mapped

{
  "count": 123,
  "items": [
    {
      "id": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "string",
      "comment": "A comment",
      "principal_public_key_strings": [
        "string"
      ],
      "permit_agent": true,
      "access_group_id": "5bf77342-221c-11ee-be56-0242ac120002",
      "permissions": [
        "licenses-manage"
      ],
      "context": {
        "enabled": true,
        "block_role": true,
        "validity": [
          "MON"
        ],
        "start_time": "string",
        "end_time": "string",
        "timezone": "string",
        "ip_masks": [
          "string"
        ]
      },
      "explicit": true,
      "implicit": true,
      "system": true,
      "grant_type": "PERMANENT",
      "grant_validity_periods": [
        {
          "grant_start": "2017-01-01T15:05:05Z",
          "grant_end": "2017-01-02T15:05:05Z"
        }
      ],
      "floating_length": 24
    }
  ]
}

put /role-store/api/v1/users/{user_id}/roles

Set specific user's roles. These are granted in addition to mapped roles.

array[object]

Response

ExamplesSchema

Successful response, user updated

Empty response

post /role-store/api/v1/users/mfa/enable

Turn on multifactor authentication for an array of user IDs.

array[string]

Response

ExamplesSchema

Successful response, MFA turned on for the requested user IDs

Empty response

post /role-store/api/v1/users/mfa/disable

Turn off multifactor authentication for an array of user IDs

array[string]

Response

ExamplesSchema

Successful response, MFA turned off for the requested user IDs

Empty response

post /role-store/api/v1/users/mfa/reset

Reset multifactor authentication for an array of user IDs

array[string]

Response

ExamplesSchema

Successful response, MFA turned to uninitialized state for the requested user IDs

Empty response

get /role-store/api/v1/users/current

Get current user and user's settings.

Authorization

string

required

OAuth2 token

Default
"Bearer a-proper-token-goes-here"

Response

ExamplesSchema

Successful response, returns the user.

{
  "id": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "source_user_id": null,
  "created": "2017-01-01T15:05:05Z",
  "updated": "2017-01-01T15:05:05Z",
  "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "author": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "comment": "A comment",
  "tags": [
    "string"
  ],
  "principal": "string",
  "distinguished_name": "string",
  "given_name": "string",
  "full_name": "string",
  "job_title": "string",
  "company": "string",
  "department": "string",
  "email": "string",
  "telephone": "string",
  "locale": "fi_FI",
  "roles": [
    {
      "id": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "string",
      "comment": "A comment",
      "principal_public_key_strings": [
        "string"
      ],
      "permit_agent": true,
      "access_group_id": "5bf77342-221c-11ee-be56-0242ac120002",
      "permissions": [
        "licenses-manage"
      ],
      "context": {
        "enabled": true,
        "block_role": true,
        "validity": [
          "MON"
        ],
        "start_time": "string",
        "end_time": "string",
        "timezone": "string",
        "ip_masks": [
          "string"
        ]
      },
      "explicit": true,
      "implicit": true,
      "system": true,
      "grant_type": "PERMANENT",
      "grant_validity_periods": [
        {
          "grant_start": "2017-01-01T15:05:05Z",
          "grant_end": "2017-01-02T15:05:05Z"
        }
      ],
      "floating_length": 24
    }
  ],
  "attributes": [
    {
      "key": "aws_account",
      "value": "admin-bob"
    }
  ],
  "permissions": [
    "licenses-manage"
  ],
  "source": "string",
  "mfa": {
    "status": "ENABLED",
    "seed": {
      "seed_string": "string",
      "seed_qr_code": "string"
    }
  },
  "stale_access_token": true,
  "authorized_keys": [
    {
      "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
      "username": "joe@privx.com",
      "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
      "source": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "work",
      "comment": "Joe's work laptop key",
      "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
      "not_before": "2020-07-31T17:32:28Z",
      "not_after": "2022-07-31T17:32:28Z",
      "expires_in": 123,
      "source_address": [
        "192.168.100.0/24"
      ],
      "fingerprints": [
        "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
      ]
    }
  ],
  "webauthn_credentials": [
    {
      "id": "5bf77342-221c-11ee-be56-0242ac120002",
      "credential_id": "string",
      "name": "string",
      "comment": "string",
      "last_used": "2017-01-01T15:05:05Z",
      "created": "2017-01-01T15:05:05Z",
      "author": "5bf77342-221c-11ee-be56-0242ac120002",
      "updated": "2017-01-01T15:05:05Z",
      "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059"
    }
  ]
}

get /role-store/api/v1/users/current/awsroles

Get current user's AWS roles.

Authorization

string

required

OAuth2 token

Default
"Bearer a-proper-token-goes-here"

Response

ExamplesSchema

Successful response, returns the AWS roles.

{
  "count": 123,
  "items": [
    {
      "id": "514510fe-1531-530f-63c6-3f80cea33fdc",
      "name": "My Own AWS Role",
      "arn": "arn:aws:iam::123456789012:role/role-name",
      "updated": "2017-01-01T15:05:05Z",
      "description": "string",
      "source": "514510fe-1531-530f-63c6-3f80cea33fdc",
      "status": "OK",
      "roles": [
        {
          "id": "5bf77342-221c-11ee-be56-0242ac120002",
          "name": "string"
        }
      ]
    }
  ]
}

get /role-store/api/v1/users/current/settings

Get current user settings.

Authorization

string

required

OAuth2 token

Default
"Bearer a-proper-token-goes-here"

Response

ExamplesSchema

Successful response, returns the user.

{}

put /role-store/api/v1/users/current/settings

Put current user settings.

Response

ExamplesSchema

Successful request. Settings object must be a valid JSON object with any attributes.

{}

get /role-store/api/v1/users/{user_id}/resolve

Resolve user's roles

user_id

string

required

Response

ExamplesSchema

Return the found user object

{
  "id": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "source_user_id": null,
  "created": "2017-01-01T15:05:05Z",
  "updated": "2017-01-01T15:05:05Z",
  "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "author": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
  "comment": "A comment",
  "tags": [
    "string"
  ],
  "principal": "string",
  "distinguished_name": "string",
  "given_name": "string",
  "full_name": "string",
  "job_title": "string",
  "company": "string",
  "department": "string",
  "email": "string",
  "telephone": "string",
  "locale": "fi_FI",
  "roles": [
    {
      "id": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "string",
      "comment": "A comment",
      "principal_public_key_strings": [
        "string"
      ],
      "permit_agent": true,
      "access_group_id": "5bf77342-221c-11ee-be56-0242ac120002",
      "permissions": [
        "licenses-manage"
      ],
      "context": {
        "enabled": true,
        "block_role": true,
        "validity": [
          "MON"
        ],
        "start_time": "string",
        "end_time": "string",
        "timezone": "string",
        "ip_masks": [
          "string"
        ]
      },
      "explicit": true,
      "implicit": true,
      "system": true,
      "grant_type": "PERMANENT",
      "grant_validity_periods": [
        {
          "grant_start": "2017-01-01T15:05:05Z",
          "grant_end": "2017-01-02T15:05:05Z"
        }
      ],
      "floating_length": 24
    }
  ],
  "attributes": [
    {
      "key": "aws_account",
      "value": "admin-bob"
    }
  ],
  "permissions": [
    "licenses-manage"
  ],
  "source": "string",
  "mfa": {
    "status": "ENABLED",
    "seed": {
      "seed_string": "string",
      "seed_qr_code": "string"
    }
  },
  "stale_access_token": true,
  "authorized_keys": [
    {
      "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
      "username": "joe@privx.com",
      "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
      "source": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "work",
      "comment": "Joe's work laptop key",
      "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
      "not_before": "2020-07-31T17:32:28Z",
      "not_after": "2022-07-31T17:32:28Z",
      "expires_in": 123,
      "source_address": [
        "192.168.100.0/24"
      ],
      "fingerprints": [
        "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
      ]
    }
  ],
  "webauthn_credentials": [
    {
      "id": "5bf77342-221c-11ee-be56-0242ac120002",
      "credential_id": "string",
      "name": "string",
      "comment": "string",
      "last_used": "2017-01-01T15:05:05Z",
      "created": "2017-01-01T15:05:05Z",
      "author": "5bf77342-221c-11ee-be56-0242ac120002",
      "updated": "2017-01-01T15:05:05Z",
      "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059"
    }
  ]
}

post /role-store/api/v1/users/search

Search users with user search parameters.

keywords

string

Search string, URL encoded

user_id

array[string]

List of users IDs.

source

string

The source ID where to search the user from

Response

ExamplesSchema

Successful response, returns a list of users

{
  "count": 123,
  "items": [
    {
      "id": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
      "source_user_id": null,
      "created": "2017-01-01T15:05:05Z",
      "updated": "2017-01-01T15:05:05Z",
      "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
      "author": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
      "comment": "A comment",
      "tags": [
        "string"
      ],
      "principal": "string",
      "distinguished_name": "string",
      "given_name": "string",
      "full_name": "string",
      "job_title": "string",
      "company": "string",
      "department": "string",
      "email": "string",
      "telephone": "string",
      "locale": "fi_FI",
      "roles": [
        {
          "id": "5bf77342-221c-11ee-be56-0242ac120002",
          "name": "string",
          "comment": "A comment",
          "principal_public_key_strings": [
            "string"
          ],
          "permit_agent": true,
          "access_group_id": "5bf77342-221c-11ee-be56-0242ac120002",
          "permissions": [
            "licenses-manage"
          ],
          "context": {
            "enabled": true,
            "block_role": true,
            "validity": [
              "MON"
            ],
            "start_time": "string",
            "end_time": "string",
            "timezone": "string",
            "ip_masks": [
              "string"
            ]
          },
          "explicit": true,
          "implicit": true,
          "system": true,
          "grant_type": "PERMANENT",
          "grant_validity_periods": [
            {
              "grant_start": "2017-01-01T15:05:05Z",
              "grant_end": "2017-01-02T15:05:05Z"
            }
          ],
          "floating_length": 24
        }
      ],
      "attributes": [
        {
          "key": "aws_account",
          "value": "admin-bob"
        }
      ],
      "permissions": [
        "licenses-manage"
      ],
      "source": "string",
      "mfa": {
        "status": "ENABLED",
        "seed": {
          "seed_string": "string",
          "seed_qr_code": "string"
        }
      },
      "stale_access_token": true,
      "authorized_keys": [
        {
          "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
          "username": "joe@privx.com",
          "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
          "source": "5bf77342-221c-11ee-be56-0242ac120002",
          "name": "work",
          "comment": "Joe's work laptop key",
          "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
          "not_before": "2020-07-31T17:32:28Z",
          "not_after": "2022-07-31T17:32:28Z",
          "expires_in": 123,
          "source_address": [
            "192.168.100.0/24"
          ],
          "fingerprints": [
            "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
          ]
        }
      ],
      "webauthn_credentials": [
        {
          "id": "5bf77342-221c-11ee-be56-0242ac120002",
          "credential_id": "string",
          "name": "string",
          "comment": "string",
          "last_used": "2017-01-01T15:05:05Z",
          "created": "2017-01-01T15:05:05Z",
          "author": "5bf77342-221c-11ee-be56-0242ac120002",
          "updated": "2017-01-01T15:05:05Z",
          "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059"
        }
      ]
    }
  ]
}

post /role-store/api/v1/users/search/external

Search users with user search parameters.

keywords

string

Search string, URL encoded

user_id

array[string]

List of users IDs.

source

string

The source ID where to search the user from

Response

ExamplesSchema

Successful response, returns a list of users

{
  "count": 123,
  "items": [
    {
      "id": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
      "source_user_id": null,
      "created": "2017-01-01T15:05:05Z",
      "updated": "2017-01-01T15:05:05Z",
      "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
      "author": "eef4aefc-d64e-4c2c-aba4-4914c86ce059",
      "comment": "A comment",
      "tags": [
        "string"
      ],
      "principal": "string",
      "distinguished_name": "string",
      "given_name": "string",
      "full_name": "string",
      "job_title": "string",
      "company": "string",
      "department": "string",
      "email": "string",
      "telephone": "string",
      "locale": "fi_FI",
      "roles": [
        {
          "id": "5bf77342-221c-11ee-be56-0242ac120002",
          "name": "string",
          "comment": "A comment",
          "principal_public_key_strings": [
            "string"
          ],
          "permit_agent": true,
          "access_group_id": "5bf77342-221c-11ee-be56-0242ac120002",
          "permissions": [
            "licenses-manage"
          ],
          "context": {
            "enabled": true,
            "block_role": true,
            "validity": [
              "MON"
            ],
            "start_time": "string",
            "end_time": "string",
            "timezone": "string",
            "ip_masks": [
              "string"
            ]
          },
          "explicit": true,
          "implicit": true,
          "system": true,
          "grant_type": "PERMANENT",
          "grant_validity_periods": [
            {
              "grant_start": "2017-01-01T15:05:05Z",
              "grant_end": "2017-01-02T15:05:05Z"
            }
          ],
          "floating_length": 24
        }
      ],
      "attributes": [
        {
          "key": "aws_account",
          "value": "admin-bob"
        }
      ],
      "permissions": [
        "licenses-manage"
      ],
      "source": "string",
      "mfa": {
        "status": "ENABLED",
        "seed": {
          "seed_string": "string",
          "seed_qr_code": "string"
        }
      },
      "stale_access_token": true,
      "authorized_keys": [
        {
          "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
          "username": "joe@privx.com",
          "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
          "source": "5bf77342-221c-11ee-be56-0242ac120002",
          "name": "work",
          "comment": "Joe's work laptop key",
          "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
          "not_before": "2020-07-31T17:32:28Z",
          "not_after": "2022-07-31T17:32:28Z",
          "expires_in": 123,
          "source_address": [
            "192.168.100.0/24"
          ],
          "fingerprints": [
            "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
          ]
        }
      ],
      "webauthn_credentials": [
        {
          "id": "5bf77342-221c-11ee-be56-0242ac120002",
          "credential_id": "string",
          "name": "string",
          "comment": "string",
          "last_used": "2017-01-01T15:05:05Z",
          "created": "2017-01-01T15:05:05Z",
          "author": "5bf77342-221c-11ee-be56-0242ac120002",
          "updated": "2017-01-01T15:05:05Z",
          "updated_by": "eef4aefc-d64e-4c2c-aba4-4914c86ce059"
        }
      ]
    }
  ]
}

get /role-store/api/v1/users/{user_id}/authorizedkeys

List user's authorized keys

user_id

string

required

User ID

Response

ExamplesSchema

Successful response, returns an array of authorized keys.

{
  "count": 123,
  "items": [
    {
      "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
      "username": "joe@privx.com",
      "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
      "source": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "work",
      "comment": "Joe's work laptop key",
      "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
      "not_before": "2020-07-31T17:32:28Z",
      "not_after": "2022-07-31T17:32:28Z",
      "expires_in": 123,
      "source_address": [
        "192.168.100.0/24"
      ],
      "fingerprints": [
        "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
      ]
    }
  ]
}

post /role-store/api/v1/users/{user_id}/authorizedkeys

Register an authorized key for user

name

string

required

Name for authorized key

Example
"work"

comment

string

Comment for authorized key

Example
"Joe's work laptop key"

public_key

string

Public key data in ssh authorized key format

Example
"AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT"

not_before

string

date-time

Start of key validity period

Example
"2020-07-31T17:32:28Z"

not_after

string

date-time

End of key validity period

Example
"2022-07-31T17:32:28Z"

expires_in

int

Key expiry in seconds. This is used only if not_before and not_after are empty.

source_address

array[string]

Response

ExamplesSchema

Key Successfully registered

{
  "id": "5bf77342-221c-11ee-be56-0242ac120002"
}

get /role-store/api/v1/users/{user_id}/authorizedkeys/{key_id}

Get user's authorized key

user_id

string

required

User ID

key_id

string

required

Key ID

Response

ExamplesSchema

Successful response, returns an authorized key.

{
  "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
  "username": "joe@privx.com",
  "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
  "source": "5bf77342-221c-11ee-be56-0242ac120002",
  "name": "work",
  "comment": "Joe's work laptop key",
  "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
  "not_before": "2020-07-31T17:32:28Z",
  "not_after": "2022-07-31T17:32:28Z",
  "expires_in": 123,
  "source_address": [
    "192.168.100.0/24"
  ],
  "fingerprints": [
    "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
  ]
}

put /role-store/api/v1/users/{user_id}/authorizedkeys/{key_id}

Update an authorized key for user

name

string

required

Name for authorized key

Example
"work"

comment

string

Comment for authorized key

Example
"Joe's work laptop key"

public_key

string

Public key data in ssh authorized key format

Example
"AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT"

not_before

string

date-time

Start of key validity period

Example
"2020-07-31T17:32:28Z"

not_after

string

date-time

End of key validity period

Example
"2022-07-31T17:32:28Z"

expires_in

int

Key expiry in seconds. This is used only if not_before and not_after are empty.

source_address

array[string]

Response

ExamplesSchema

Key Successfully updated

{
  "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
  "username": "joe@privx.com",
  "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
  "source": "5bf77342-221c-11ee-be56-0242ac120002",
  "name": "work",
  "comment": "Joe's work laptop key",
  "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
  "not_before": "2020-07-31T17:32:28Z",
  "not_after": "2022-07-31T17:32:28Z",
  "expires_in": 123,
  "source_address": [
    "192.168.100.0/24"
  ],
  "fingerprints": [
    "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
  ]
}

delete /role-store/api/v1/users/{user_id}/authorizedkeys/{key_id}

Delete a user's authorized key

user_id

string

required

User ID

key_id

string

required

Key ID

Response

ExamplesSchema

Key Successfully deleted

Empty response

get /role-store/api/v1/users/current/authorizedkeys

List current user's authorized keys

limit

int

Number of items to return

Default
50
Max
100

offset

int

Offset where to start fetching the items

Default
0

sortdir

string

Sort direction, asc or desc

Default
"ASC"
Enum
  • ASC
  • DESC

sortkey

string

Sort by specific object property

Response

ExamplesSchema

Successful response, returns an array of authorized keys.

{
  "count": 123,
  "items": [
    {
      "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
      "username": "joe@privx.com",
      "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
      "source": "5bf77342-221c-11ee-be56-0242ac120002",
      "name": "work",
      "comment": "Joe's work laptop key",
      "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
      "not_before": "2020-07-31T17:32:28Z",
      "not_after": "2022-07-31T17:32:28Z",
      "expires_in": 123,
      "source_address": [
        "192.168.100.0/24"
      ],
      "fingerprints": [
        "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
      ]
    }
  ]
}

post /role-store/api/v1/users/current/authorizedkeys

Register an authorized key for current user

name

string

required

Name for authorized key

Example
"work"

comment

string

Comment for authorized key

Example
"Joe's work laptop key"

public_key

string

Public key data in ssh authorized key format

Example
"AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT"

not_before

string

date-time

Start of key validity period

Example
"2020-07-31T17:32:28Z"

not_after

string

date-time

End of key validity period

Example
"2022-07-31T17:32:28Z"

expires_in

int

Key expiry in seconds. This is used only if not_before and not_after are empty.

source_address

array[string]

Response

ExamplesSchema

Key Successfully registered

{
  "id": "5bf77342-221c-11ee-be56-0242ac120002"
}

get /role-store/api/v1/users/current/authorizedkeys/{key_id}

Get current user's authorized key

key_id

string

required

Key ID

Response

ExamplesSchema

Successful response, returns an authorized key.

{
  "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
  "username": "joe@privx.com",
  "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
  "source": "5bf77342-221c-11ee-be56-0242ac120002",
  "name": "work",
  "comment": "Joe's work laptop key",
  "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
  "not_before": "2020-07-31T17:32:28Z",
  "not_after": "2022-07-31T17:32:28Z",
  "expires_in": 123,
  "source_address": [
    "192.168.100.0/24"
  ],
  "fingerprints": [
    "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
  ]
}

put /role-store/api/v1/users/current/authorizedkeys/{key_id}

Update an authorized key for current user

name

string

required

Name for authorized key

Example
"work"

comment

string

Comment for authorized key

Example
"Joe's work laptop key"

public_key

string

Public key data in ssh authorized key format

Example
"AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT"

not_before

string

date-time

Start of key validity period

Example
"2020-07-31T17:32:28Z"

not_after

string

date-time

End of key validity period

Example
"2022-07-31T17:32:28Z"

expires_in

int

Key expiry in seconds. This is used only if not_before and not_after are empty.

source_address

array[string]

Response

ExamplesSchema

Key Successfully updated

{
  "id": "2765b005-4ce1-4b2b-a9ca-ee6c4d6f2792",
  "username": "joe@privx.com",
  "user_id": "f2f448d8-0397-4894-982f-9a58a43921db",
  "source": "5bf77342-221c-11ee-be56-0242ac120002",
  "name": "work",
  "comment": "Joe's work laptop key",
  "public_key": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDqoMogqErOw7lL3GD6Ez7Hv1FZBk0Iyk2pBFUhqb9sjY9IEw8P9OWFwLMhWQ4LNvekPAnmr03pMHSSP7Pw98+Izy0HxcHZGKcrDOIjnHF5Fog3w4rBYa6OxdcJRxctifx5szqmM4JkUNS1RJY5E4ns4xCgFV46Satph02M+eP9PXGh+ZecSNtdLoOovVuolEUdb8dINgto8zsjEuAQ+76qOEgAIuSsYlzGGZPyPnATtkUi/rK9fcAfbhSqSXNxFqf7wejEKwA1kFt8hSW2bUWJH268fqnejFwHjBTzjBw89dji6141ajAP8/Q2gZug0bb1U70PE4afE3fFh2VCfhwT",
  "not_before": "2020-07-31T17:32:28Z",
  "not_after": "2022-07-31T17:32:28Z",
  "expires_in": 123,
  "source_address": [
    "192.168.100.0/24"
  ],
  "fingerprints": [
    "SHA256:bdeYZ2qiEwCOCuf0oTvya/aH4Vo+nJLIauDKm/D8btM"
  ]
}

delete /role-store/api/v1/users/current/authorizedkeys/{key_id}

Delete a current user's authorized key

key_id

string

required

Key ID

Response

ExamplesSchema

Key Successfully deleted

Empty response

Was this page helpful?