pub struct PasswordOptions {
pub query: Vec<(CFString, CFType)>,
}
Expand description
PasswordOptions
constructor
Fields§
§query: Vec<(CFString, CFType)>
query built for the keychain request
Implementations§
Source§impl PasswordOptions
impl PasswordOptions
Sourcepub fn new_generic_password(service: &str, account: &str) -> Self
pub fn new_generic_password(service: &str, account: &str) -> Self
Create a new generic password options Generic passwords are identified by service and account. They have other attributes, but this interface doesn’t allow specifying them.
Sourcepub fn new_internet_password(
server: &str,
security_domain: Option<&str>,
account: &str,
path: &str,
port: Option<u16>,
protocol: SecProtocolType,
authentication_type: SecAuthenticationType,
) -> Self
pub fn new_internet_password( server: &str, security_domain: Option<&str>, account: &str, path: &str, port: Option<u16>, protocol: SecProtocolType, authentication_type: SecAuthenticationType, ) -> Self
Create a new internet password options Internet passwords are identified by a number of attributes. They can have others, but this interface doesn’t allow specifying them.
Sourcepub fn set_access_control_options(&mut self, options: AccessControlOptions)
pub fn set_access_control_options(&mut self, options: AccessControlOptions)
Add access control to the password
Sourcepub fn set_access_control(&mut self, access_control: SecAccessControl)
pub fn set_access_control(&mut self, access_control: SecAccessControl)
Add access control to the password
Sourcepub fn set_access_group(&mut self, group: &str)
pub fn set_access_group(&mut self, group: &str)
Add access group to the password
Sourcepub fn set_access_synchronized(&mut self, synchronized: Option<bool>)
pub fn set_access_synchronized(&mut self, synchronized: Option<bool>)
Specify whether password is cloud-synchronized, not cloud-synchronized, or either (None
).
Note: cloud-synchronized and not-cloud-synchronized passwords are kept
in completely different stores, so they are uniquely identified not just
by their service
and account
but also their cloud-synchronized option.
If you specify a non-None
value for this option, any operation you
perform - whether set, get, or delete - will only affect the store matching
the value: Some(true
) will only affect the cloud-synchronized store and
Some(false
) will only affect the not-cloud-synchronized store.
If you specify None
for this option, the effect depends on your operation:
- Performing a delete will delete from both stores.
- Performing a get will return values from both stores, but since get only returns one value you can’t be sure which store that value was in.
- Performing a set will update existing values in both stores. But, before
doing any updates, set will first try to create a new value in the
not-cloud-synchronized store (interpreting
None
asfalse
). If that creation attempt succeeds, no update will be done of any existing value in the cloud-synchronized store. Thus, only if there is an existing value in the not-cloud-synchronized store will set update the cloud-synchronized store.
Sourcepub fn set_comment(&mut self, comment: &str)
pub fn set_comment(&mut self, comment: &str)
Set the comment on the password
Sourcepub fn set_description(&mut self, description: &str)
pub fn set_description(&mut self, description: &str)
Add a description to the password
Sourcepub fn use_protected_keychain(&mut self)
pub fn use_protected_keychain(&mut self)
Use the data protection keychain (always true except on macOS)