Skip to main content

Crate opencloudmesh

Crate opencloudmesh 

Source
Expand description

§OpenCloudMesh

This is a modular Rust implementation of the OpenCloudMesh 1.3.0 protocol.

Open Cloud Mesh is a server federation protocol that is used to notify a Receiving Party that they have been granted access to some Resource. It has similarities with authorization flows such as OAuth, as well as with social internet protocols such as ActivityPub and email.

Open Cloud Mesh only handles the necessary interactions up to the point where the Receiving Party is informed that they were granted access to the Resource. The actual resource access is then left to protocols such as WebDAV and others.

This crate is based on the types implemented in ocm-types and can be combined with ocm-drivers to provide persistence.

See ocm-server-axum for an implementation of a service including OpenCloudMesh support.

§Supported API Flows

FlowDescriptionState
DiscoverGet properties and capabilites offered by an OCM instance.
ShareSend and receive shares.
NotificationsInform sending or receiving instances about changes to shares.
Invite FlowEstablish contact between instances based on invites

Modules§

common
Traits to provide the protocol implementation with a generic HTTP client
discovery
Provide and discover capabilities of OCM Servers.
drivers
This crate does not offer persistence for users and shares and no implementations of exchange protocols. Instead, users are expected to implement the traits in this module for integration in their application.
notifications
Notify OCM Servers on changes to shares or users.
share
Send and receive shares.