docs.rs failed to build samael-0.0.21
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build:
samael-0.0.18
Samael
This is a SAML2 library for rust.
This is a work in progress. Pull Requests are welcome.
Current Features:
- Serializing and Deserializing SAML messages
- IDP-initiated SSO
- SP-initiated SSO Redirect-POST binding
- Helpers for validating SAML assertions
- Encrypted assertions only support:
- key info:
http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1phttp://www.w3.org/2001/04/xmlenc#rsa-1_5
- value info:
http://www.w3.org/2001/04/xmlenc#aes128-cbchttp://www.w3.org/2009/xmlenc11#aes128-gcm
- key info:
- Encrypted assertions only support:
- Verify SAMLRequest (AuthnRequest) message signatures
- Create signed SAMLResponse (Response) messages
The "xmlsec" feature flag adds basic support for verifying and signing SAML messages. We're using a modified copy of rust-xmlsec library (bindings to xmlsec1 library).
If you want to use the "xmlsec" feature, you'll need to install the following C libs:
- libiconv
- libtool
- libxml2
- libxslt
- libclang
- openssl
- pkg-config
- xmlsec1
Build instructions
We use nix flakes to provide the Rust toolchain and the C libraries required by the xmlsec feature without installing them globally. flake.lock is the single project lock file for both builds and the development shell.
- Install nix
- Build the library:
- Enter the development shell:
Useful commands inside the development shell:
How do I use this library?
You'll need these dependencies for this example
[]
= { = "1.28.1", = ["full"] }
= { = "0.0.20", = ["xmlsec"] }
= "0.3.5"
= "0.11.18"
= "0.10.52"
= "0.1.5"
Here is some sample code using this library:
use ;
use ServiceProviderBuilder;
use HashMap;
use fs;
use Filter;
async