Skip to main content

Oracle Cloud

Oracle Cloud Infrastructure services authenticating with the OCI HTTP request signature.

OCI request signature✓ header signing— query / presign— WASMdocs.rs/reqsign-oracle ↗

Header signing only; expires_in is not interpreted as query authentication.

Get started​

cargo add reqsign --features oracle
use reqsign::oracle;

// Env and the OCI config file (~/.oci/config) — resolved by the default chain.
let signer = oracle::default_signer();

let mut req = http::Request::builder()
.method(http::Method::GET)
.uri("https://objectstorage.us-ashburn-1.oraclecloud.com/n/my-namespace/b/my-bucket/o/my-object")
.body(())?
.into_parts()
.0;

// Sign in place, then send with the HTTP client you already use.
signer.sign(&mut req, None).await?;

Credentials

Default credential chain

The default signer tries these sources in order and uses the first one that yields a credential — no configuration needed when any of them is present:

  1. Environment variables
  2. OCI config file (~/.oci/config)

Credential providers

Available ProvideCredential implementations. Construct any of them directly, reorder them, or compose them into your own chain — see Loading credentials: