pub enum IdentityDecl {
External {
issuer: Arc<str>,
host: Arc<str>,
span: Span,
},
Managed {
span: Span,
},
}Expand description
Who authenticates a program’s clients, as the program declared it.
D6’s two forms, and the difference between them is a difference in who provisions the
provider — which is why they are one declaration with two shapes rather than two features.
IdentityDecl::External names somebody else’s; IdentityDecl::Managed asks this
deployment to stand one up, and the URL is then not the program’s to write because it is a
service the derivation has not named yet.
Variants§
External
identity = external(issuer="https://login.acme.com").
Fields
issuer: Arc<str>The issuer URL, exactly as written. Both what is fetched and what every token’s iss is
compared against.
Managed
identity = managed().
There is no URL here on purpose. The issuer is a Service §6.5 derives, so its name is a
function of the application’s name and the platform’s conventions — and a program that
wrote it down would be a program that has to be edited when either changes.
Implementations§
Trait Implementations§
Source§impl Clone for IdentityDecl
impl Clone for IdentityDecl
Source§fn clone(&self) -> IdentityDecl
fn clone(&self) -> IdentityDecl
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more