pub struct IdentityProviderConfigServiceClient<T> { /* private fields */ }Expand description
Identity Provider Config Service makes it possible for participant node administrators to setup and manage additional identity providers at runtime.
This allows using access tokens from identity providers unknown at deployment time. When an identity
provider is configured, independent IDP administrators can manage their own set of parties and users.
Such parties and users have a matching identity_provider_id defined and are inaccessible to
administrators from other identity providers. A user will only be authenticated if the corresponding JWT
token is issued by the appropriate identity provider.
Users and parties without identity_provider_id defined are assumed to be using the default identity provider,
which is configured statically at the participant node’s deployment time.
The Ledger API uses the “iss” claim of a JWT token to match the token to a specific IDP. If there is no match, the default IDP is assumed.
The fields of request messages (and sub-messages) are marked either as Optional or Required:
Optionaldenoting the client may leave the field unset when sending a request.Requireddenoting the client must set the field to a non-default value when sending a request.
An identity provider config resource is described by the IdentityProviderConfig message,
An identity provider config resource, once it has been created, can be modified.
In order to update the properties represented by the IdentityProviderConfig message use the UpdateIdentityProviderConfig RPC.
The only fields that can be modified are those marked as Modifiable.
Implementations§
Source§impl<T> IdentityProviderConfigServiceClient<T>where
T: GrpcService<Body>,
<T as GrpcService<Body>>::Error: Into<Box<dyn Error + Send + Sync>>,
<T as GrpcService<Body>>::ResponseBody: Body<Data = Bytes> + Send + 'static,
<<T as GrpcService<Body>>::ResponseBody as Body>::Error: Into<Box<dyn Error + Send + Sync>> + Send,
impl<T> IdentityProviderConfigServiceClient<T>where
T: GrpcService<Body>,
<T as GrpcService<Body>>::Error: Into<Box<dyn Error + Send + Sync>>,
<T as GrpcService<Body>>::ResponseBody: Body<Data = Bytes> + Send + 'static,
<<T as GrpcService<Body>>::ResponseBody as Body>::Error: Into<Box<dyn Error + Send + Sync>> + Send,
pub fn new(inner: T) -> IdentityProviderConfigServiceClient<T>
pub fn with_origin( inner: T, origin: Uri, ) -> IdentityProviderConfigServiceClient<T>
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> IdentityProviderConfigServiceClient<InterceptedService<T, F>>where
F: Interceptor,
<T as GrpcService<Body>>::ResponseBody: Default,
T: Service<Request<Body>, Response = Response<<T as GrpcService<Body>>::ResponseBody>>,
<T as Service<Request<Body>>>::Error: Into<Box<dyn Error + Send + Sync>> + Send + Sync,
Sourcepub fn send_compressed(
self,
encoding: CompressionEncoding,
) -> IdentityProviderConfigServiceClient<T>
pub fn send_compressed( self, encoding: CompressionEncoding, ) -> IdentityProviderConfigServiceClient<T>
Compress requests with the given encoding.
This requires the server to support it otherwise it might respond with an error.
Sourcepub fn accept_compressed(
self,
encoding: CompressionEncoding,
) -> IdentityProviderConfigServiceClient<T>
pub fn accept_compressed( self, encoding: CompressionEncoding, ) -> IdentityProviderConfigServiceClient<T>
Enable decompressing responses.
Sourcepub fn max_decoding_message_size(
self,
limit: usize,
) -> IdentityProviderConfigServiceClient<T>
pub fn max_decoding_message_size( self, limit: usize, ) -> IdentityProviderConfigServiceClient<T>
Limits the maximum size of a decoded message.
Default: 4MB
Sourcepub fn max_encoding_message_size(
self,
limit: usize,
) -> IdentityProviderConfigServiceClient<T>
pub fn max_encoding_message_size( self, limit: usize, ) -> IdentityProviderConfigServiceClient<T>
Limits the maximum size of an encoded message.
Default: usize::MAX
Sourcepub async fn create_identity_provider_config(
&mut self,
request: impl IntoRequest<CreateIdentityProviderConfigRequest>,
) -> Result<Response<CreateIdentityProviderConfigResponse>, Status>
pub async fn create_identity_provider_config( &mut self, request: impl IntoRequest<CreateIdentityProviderConfigRequest>, ) -> Result<Response<CreateIdentityProviderConfigResponse>, Status>
Create a new identity provider configuration. The request will fail if the maximum allowed number of separate configurations is reached.
Sourcepub async fn get_identity_provider_config(
&mut self,
request: impl IntoRequest<GetIdentityProviderConfigRequest>,
) -> Result<Response<GetIdentityProviderConfigResponse>, Status>
pub async fn get_identity_provider_config( &mut self, request: impl IntoRequest<GetIdentityProviderConfigRequest>, ) -> Result<Response<GetIdentityProviderConfigResponse>, Status>
Get the identity provider configuration data by id.
Sourcepub async fn update_identity_provider_config(
&mut self,
request: impl IntoRequest<UpdateIdentityProviderConfigRequest>,
) -> Result<Response<UpdateIdentityProviderConfigResponse>, Status>
pub async fn update_identity_provider_config( &mut self, request: impl IntoRequest<UpdateIdentityProviderConfigRequest>, ) -> Result<Response<UpdateIdentityProviderConfigResponse>, Status>
Update selected modifiable attribute of an identity provider config resource described
by the IdentityProviderConfig message.
Sourcepub async fn list_identity_provider_configs(
&mut self,
request: impl IntoRequest<ListIdentityProviderConfigsRequest>,
) -> Result<Response<ListIdentityProviderConfigsResponse>, Status>
pub async fn list_identity_provider_configs( &mut self, request: impl IntoRequest<ListIdentityProviderConfigsRequest>, ) -> Result<Response<ListIdentityProviderConfigsResponse>, Status>
List all existing identity provider configurations.
Sourcepub async fn delete_identity_provider_config(
&mut self,
request: impl IntoRequest<DeleteIdentityProviderConfigRequest>,
) -> Result<Response<DeleteIdentityProviderConfigResponse>, Status>
pub async fn delete_identity_provider_config( &mut self, request: impl IntoRequest<DeleteIdentityProviderConfigRequest>, ) -> Result<Response<DeleteIdentityProviderConfigResponse>, Status>
Delete an existing identity provider configuration.
Trait Implementations§
Source§impl<T> Clone for IdentityProviderConfigServiceClient<T>where
T: Clone,
impl<T> Clone for IdentityProviderConfigServiceClient<T>where
T: Clone,
Source§fn clone(&self) -> IdentityProviderConfigServiceClient<T>
fn clone(&self) -> IdentityProviderConfigServiceClient<T>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl<T> !Freeze for IdentityProviderConfigServiceClient<T>
impl<T> RefUnwindSafe for IdentityProviderConfigServiceClient<T>where
Grpc<T>: RefUnwindSafe,
impl<T> Send for IdentityProviderConfigServiceClient<T>
impl<T> Sync for IdentityProviderConfigServiceClient<T>
impl<T> Unpin for IdentityProviderConfigServiceClient<T>
impl<T> UnsafeUnpin for IdentityProviderConfigServiceClient<T>where
Grpc<T>: UnsafeUnpin,
impl<T> UnwindSafe for IdentityProviderConfigServiceClient<T>where
Grpc<T>: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request