[][src]Module ironoxide::blocking

Blocking SDK operations

A blocking version of the SDK.

These synchronous functions will block the current thread to execute instead of returning futures that need to be executed on a runtime. In every other way, they are identitical to their asynchronous counterparts.

Optional

This requires the optional blocking feature to be enabled.

Structs

BlockingIronOxide

Struct that is used to make authenticated requests to the IronCore API. Instantiated with the details of an account's various ids, device, and signing keys. Once instantiated all operations will be performed in the context of the account provided. Identical to IronOxide but also contains a Runtime.

DeviceId

Device ID type. Validates that the provided ID is greater than 0

DocAccessEditErr

A failure to edit the access list of a document.

DocumentAccessResult

Result of granting or revoking access to a document. Both grant and revoke support partial success.

DocumentDecryptResult

Result of decrypting a document. Includes minimal metadata as well as the decrypted bytes.

DocumentDecryptUnmanagedResult

Result of successful unmanaged decryption

DocumentEncryptResult

Result for encrypt operations.

DocumentEncryptUnmanagedResult

Result for encrypt operations that do not store document access information with the webservice, but rather return the access information as encrypted_deks. Both the encrypted_data and encrypted_deks must be used to decrypt. See document_edek_decrypt

DocumentId

Document ID. Unique within the segment. Must match the regex ^[a-zA-Z0-9_.$#|@/:;=+'-]+$

DocumentListMeta

Single document's (abbreviated) metadata. Returned as part of a DocumentListResult.

DocumentListResult

Metadata for each of the documents that the current user has access to decrypt.

DocumentMetadataResult

Full metadata for a document.

DocumentName

(unencrypted) name of a document. Construct via try_from(&str)

EncryptedPrivateKey
GroupAccessEditErr

Failure to make the requested change to a group's membership or administrators.

GroupAccessEditResult

Result from requesting changes to a group's membership or administrators. Partial success is supported.

GroupCreateResult
GroupGetResult

Group information.

GroupId

Group ID. Unique within a segment. Must match the regex ^[a-zA-Z0-9_.$#|@/:;=+'-]+$

GroupListResult

List of (abbreviated) groups for which the requesting user is either an admin or member.

GroupMetaResult

Abbreviated group information.

GroupName

Group's user-assigned name. (non-unique)

GroupUpdatePrivateKeyResult
UserCreateResult

Keypair for a newly created user

UserDevice

Metadata about a user device

UserDeviceListResult

Devices for a user, sorted by the device id

UserId

ID of a user. Unique with in a segment. Must match the regex ^[a-zA-Z0-9_.$#|@/:;=+'-]+$

UserResult

IDs and public key for existing user on verify result

UserUpdatePrivateKeyResult
VisibleGroup

Represents a Group struct which is returned from doc get to show the IDs and names of groups the document is visible to

VisibleUser

Represents a User struct which is returned from doc get to show the IDs of users the document is visible to

Enums

AssociationType

Represents the reason a document can be viewed by the requesting user.

UserOrGroup

Either a user or a group. Allows for containing both.

Functions

initialize

Initialize the BlockingIronOxide SDK with a device. Verifies that the provided user/segment exists and the provided device keys are valid and exist for the provided account. If successful, returns instance of the BlockingIronOxide SDK.

initialize_check_rotation

Initialize the BlockingIronOxide SDK and check to see if the user that owns this DeviceContext is marked for private key rotation, or if any of the groups that the user is an admin of are marked for private key rotation.