pub struct AccessTokenScope {
pub basins: Option<ResourceSet>,
pub streams: Option<ResourceSet>,
pub access_tokens: Option<ResourceSet>,
pub op_groups: Option<PermittedOperationGroups>,
pub ops: HashSet<Operation>,
}This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Expand description
Access token scope.
Fieldsยง
ยงbasins: Option<ResourceSet>This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Basin names allowed.
streams: Option<ResourceSet>This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Stream names allowed.
access_tokens: Option<ResourceSet>This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Token IDs allowed.
op_groups: Option<PermittedOperationGroups>This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Access permissions at operation group level.
ops: HashSet<Operation>This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Operations allowed for the token. A union of allowed operations and groups is used as an effective set of allowed operations.
Implementationsยง
Sourceยงimpl AccessTokenScope
impl AccessTokenScope
Sourcepub fn new() -> Self
๐Deprecated since 0.21.1: This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
pub fn new() -> Self
This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Create a new access token scope.
Examples found in repository?
10async fn main() -> Result<(), Box<dyn std::error::Error>> {
11 let token = std::env::var("S2_ACCESS_TOKEN")?;
12 let config = ClientConfig::new(token);
13 let client = Client::new(config);
14
15 let access_token_id: AccessTokenId = "my-access-token".parse()?;
16 let access_token_info = AccessTokenInfo::new(access_token_id).with_scope(
17 AccessTokenScope::new()
18 .with_op_groups(
19 PermittedOperationGroups::new()
20 .with_account(ReadWritePermissions::new().with_read(true)),
21 )
22 .with_op(Operation::CreateStream)
23 .with_streams(ResourceSet::Prefix("my-stream-prefix".to_string()))
24 .with_basins(ResourceSet::Exact("my-perfect-basin".to_string())),
25 );
26 let token = client.issue_access_token(access_token_info).await?;
27
28 println!("Access token: {token}");
29
30 Ok(())
31}Sourcepub fn with_basins(self, basins: ResourceSet) -> Self
๐Deprecated since 0.21.1: This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
pub fn with_basins(self, basins: ResourceSet) -> Self
This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Overwrite resource set for access tokens.
Examples found in repository?
10async fn main() -> Result<(), Box<dyn std::error::Error>> {
11 let token = std::env::var("S2_ACCESS_TOKEN")?;
12 let config = ClientConfig::new(token);
13 let client = Client::new(config);
14
15 let access_token_id: AccessTokenId = "my-access-token".parse()?;
16 let access_token_info = AccessTokenInfo::new(access_token_id).with_scope(
17 AccessTokenScope::new()
18 .with_op_groups(
19 PermittedOperationGroups::new()
20 .with_account(ReadWritePermissions::new().with_read(true)),
21 )
22 .with_op(Operation::CreateStream)
23 .with_streams(ResourceSet::Prefix("my-stream-prefix".to_string()))
24 .with_basins(ResourceSet::Exact("my-perfect-basin".to_string())),
25 );
26 let token = client.issue_access_token(access_token_info).await?;
27
28 println!("Access token: {token}");
29
30 Ok(())
31}Sourcepub fn with_streams(self, streams: ResourceSet) -> Self
๐Deprecated since 0.21.1: This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
pub fn with_streams(self, streams: ResourceSet) -> Self
This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Overwrite resource set for streams.
Examples found in repository?
10async fn main() -> Result<(), Box<dyn std::error::Error>> {
11 let token = std::env::var("S2_ACCESS_TOKEN")?;
12 let config = ClientConfig::new(token);
13 let client = Client::new(config);
14
15 let access_token_id: AccessTokenId = "my-access-token".parse()?;
16 let access_token_info = AccessTokenInfo::new(access_token_id).with_scope(
17 AccessTokenScope::new()
18 .with_op_groups(
19 PermittedOperationGroups::new()
20 .with_account(ReadWritePermissions::new().with_read(true)),
21 )
22 .with_op(Operation::CreateStream)
23 .with_streams(ResourceSet::Prefix("my-stream-prefix".to_string()))
24 .with_basins(ResourceSet::Exact("my-perfect-basin".to_string())),
25 );
26 let token = client.issue_access_token(access_token_info).await?;
27
28 println!("Access token: {token}");
29
30 Ok(())
31}Sourcepub fn with_tokens(self, access_tokens: ResourceSet) -> Self
๐Deprecated since 0.21.1: This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
pub fn with_tokens(self, access_tokens: ResourceSet) -> Self
This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Overwrite resource set for access tokens.
Sourcepub fn with_op_groups(self, op_groups: PermittedOperationGroups) -> Self
๐Deprecated since 0.21.1: This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
pub fn with_op_groups(self, op_groups: PermittedOperationGroups) -> Self
This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Overwrite operation groups.
Examples found in repository?
10async fn main() -> Result<(), Box<dyn std::error::Error>> {
11 let token = std::env::var("S2_ACCESS_TOKEN")?;
12 let config = ClientConfig::new(token);
13 let client = Client::new(config);
14
15 let access_token_id: AccessTokenId = "my-access-token".parse()?;
16 let access_token_info = AccessTokenInfo::new(access_token_id).with_scope(
17 AccessTokenScope::new()
18 .with_op_groups(
19 PermittedOperationGroups::new()
20 .with_account(ReadWritePermissions::new().with_read(true)),
21 )
22 .with_op(Operation::CreateStream)
23 .with_streams(ResourceSet::Prefix("my-stream-prefix".to_string()))
24 .with_basins(ResourceSet::Exact("my-perfect-basin".to_string())),
25 );
26 let token = client.issue_access_token(access_token_info).await?;
27
28 println!("Access token: {token}");
29
30 Ok(())
31}Sourcepub fn with_ops(self, ops: impl IntoIterator<Item = Operation>) -> Self
๐Deprecated since 0.21.1: This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
pub fn with_ops(self, ops: impl IntoIterator<Item = Operation>) -> Self
This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Overwrite operations.
Sourcepub fn with_op(self, op: Operation) -> Self
๐Deprecated since 0.21.1: This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
pub fn with_op(self, op: Operation) -> Self
This crate has been renamed to s2-sdk. Please update your Cargo.toml to use s2-sdk instead.
Add an operation to operations.
Examples found in repository?
10async fn main() -> Result<(), Box<dyn std::error::Error>> {
11 let token = std::env::var("S2_ACCESS_TOKEN")?;
12 let config = ClientConfig::new(token);
13 let client = Client::new(config);
14
15 let access_token_id: AccessTokenId = "my-access-token".parse()?;
16 let access_token_info = AccessTokenInfo::new(access_token_id).with_scope(
17 AccessTokenScope::new()
18 .with_op_groups(
19 PermittedOperationGroups::new()
20 .with_account(ReadWritePermissions::new().with_read(true)),
21 )
22 .with_op(Operation::CreateStream)
23 .with_streams(ResourceSet::Prefix("my-stream-prefix".to_string()))
24 .with_basins(ResourceSet::Exact("my-perfect-basin".to_string())),
25 );
26 let token = client.issue_access_token(access_token_info).await?;
27
28 println!("Access token: {token}");
29
30 Ok(())
31}Trait Implementationsยง
Sourceยงimpl Clone for AccessTokenScope
impl Clone for AccessTokenScope
Sourceยงfn clone(&self) -> AccessTokenScope
fn clone(&self) -> AccessTokenScope
1.0.0 (const: unstable) ยท Sourceยงfn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSourceยงimpl Debug for AccessTokenScope
impl Debug for AccessTokenScope
Sourceยงimpl Default for AccessTokenScope
impl Default for AccessTokenScope
Sourceยงfn default() -> AccessTokenScope
fn default() -> AccessTokenScope
Auto Trait Implementationsยง
impl Freeze for AccessTokenScope
impl RefUnwindSafe for AccessTokenScope
impl Send for AccessTokenScope
impl Sync for AccessTokenScope
impl Unpin for AccessTokenScope
impl UnsafeUnpin for AccessTokenScope
impl UnwindSafe for AccessTokenScope
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