Skip to content

Commit 47eb559

Browse files
authored
Add to_omni_account for UserId (#3811)
* init * update rustc * update * update * update * update * update * push changes
1 parent c59e5ed commit 47eb559

File tree

35 files changed

+443
-552
lines changed

35 files changed

+443
-552
lines changed

parachain/primitives/src/identity.rs

Lines changed: 6 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,12 @@ impl IdentityString {
8181
}
8282
}
8383

84+
impl From<&str> for IdentityString {
85+
fn from(value: &str) -> Self {
86+
IdentityString::new(value.as_bytes().to_vec())
87+
}
88+
}
89+
8490
impl Debug for IdentityString {
8591
fn fmt(&self, f: &mut Formatter<'_>) -> core::fmt::Result {
8692
if_development_or!(
@@ -624,43 +630,6 @@ impl Identity {
624630
pub fn hash(&self) -> H256 {
625631
self.using_encoded(blake2_256).into()
626632
}
627-
628-
pub fn from_web2_account(handle: &str, identity_type: Web2IdentityType) -> Self {
629-
match identity_type {
630-
Web2IdentityType::Twitter => {
631-
Identity::Twitter(IdentityString::new(handle.as_bytes().to_vec()))
632-
},
633-
Web2IdentityType::Discord => {
634-
Identity::Discord(IdentityString::new(handle.as_bytes().to_vec()))
635-
},
636-
Web2IdentityType::Apple => {
637-
Identity::Apple(IdentityString::new(handle.as_bytes().to_vec()))
638-
},
639-
Web2IdentityType::Email => {
640-
Identity::Email(IdentityString::new(handle.as_bytes().to_vec()))
641-
},
642-
Web2IdentityType::Google => {
643-
Identity::Google(IdentityString::new(handle.as_bytes().to_vec()))
644-
},
645-
Web2IdentityType::Pumpx => {
646-
Identity::Pumpx(IdentityString::new(handle.as_bytes().to_vec()))
647-
},
648-
Web2IdentityType::Passkey => {
649-
Identity::Passkey(IdentityString::new(handle.as_bytes().to_vec()))
650-
},
651-
}
652-
}
653-
}
654-
655-
#[derive(Clone, Debug, PartialEq, Eq)]
656-
pub enum Web2IdentityType {
657-
Twitter,
658-
Discord,
659-
Apple,
660-
Email,
661-
Google,
662-
Pumpx,
663-
Passkey,
664633
}
665634

666635
impl From<ed25519::Public> for Identity {

tee-worker/identity/enclave-runtime/src/rpc/common_api.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ use lc_identity_verification::{
3333
};
3434
use litentry_primitives::{
3535
aes_decrypt, decode_hex, if_development, if_development_or, AesRequest, DecryptableRequest,
36-
Identity, Web2IdentityType,
36+
Identity,
3737
};
3838
use log::debug;
3939
use sgx_crypto_helper::rsa3072::Rsa3072PubKey;
@@ -468,8 +468,7 @@ pub fn add_common_api<Author, GetterExecutor, AccessShieldingKey, OcallApi, Stat
468468
)))
469469
},
470470
};
471-
let google_identity =
472-
Identity::from_web2_account(&google_account, Web2IdentityType::Google);
471+
let google_identity = Identity::Google(google_account.as_str().into());
473472
let state = generate_verification_code();
474473
let authorize_data = google::get_authorize_data(&google_client_id, &redirect_uri);
475474

@@ -505,7 +504,7 @@ pub fn add_common_api<Author, GetterExecutor, AccessShieldingKey, OcallApi, Stat
505504
data_provider_config.sendgrid_from_email.clone(),
506505
);
507506
let verification_code = generate_verification_code();
508-
let email_identity = Identity::from_web2_account(&email, Web2IdentityType::Email);
507+
let email_identity = Identity::Email(email.as_str().into());
509508

510509
match email::VerificationCodeStore::insert(
511510
omni_account,

tee-worker/identity/litentry/core/identity-verification/src/web2/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -215,8 +215,7 @@ pub fn verify(
215215
_ => return Err(Error::LinkIdentityFailed(ErrorDetail::InvalidIdentity)),
216216
};
217217

218-
let email_identity =
219-
Identity::from_web2_account(&email, litentry_primitives::Web2IdentityType::Email);
218+
let email_identity = Identity::Email(email.as_str().into());
220219
let stored_verification_code =
221220
match VerificationCodeStore::get(&account_id, email_identity.hash()) {
222221
Ok(data) => data.ok_or_else(|| {

tee-worker/identity/litentry/core/native-task/receiver/src/authentication_utils.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use lc_authentication::jwt;
88
use lc_data_providers::{google::GoogleOAuth2Client, DataProviderConfig};
99
use lc_identity_verification::web2::{email::VerificationCodeStore, google};
1010
use lc_omni_account::InMemoryStore as OmniAccountStore;
11-
use litentry_primitives::{hex_encode, Identity, ShardIdentifier, Web2IdentityType};
11+
use litentry_primitives::{hex_encode, Identity, ShardIdentifier};
1212
use sp_core::{blake2_256, crypto::AccountId32 as AccountId, H256};
1313

1414
#[derive(Encode, Decode, Clone, Debug, PartialEq, Eq)]
@@ -134,7 +134,7 @@ fn verify_google_oauth2(
134134
})?;
135135
let claims = google::decode_jwt(&token)
136136
.map_err(|e| AuthenticationError::OAuth2Error(format!("Failed to decode JWT: {:?}", e)))?;
137-
let google_identity = Identity::from_web2_account(&claims.email, Web2IdentityType::Google);
137+
let google_identity = Identity::Google(claims.email.as_str().into());
138138
let identity_omni_account = match OmniAccountStore::get_omni_account(google_identity.hash()) {
139139
Ok(Some(account_id)) => account_id,
140140
_ => google_identity.to_omni_account(DEFAULT_CLIENT_ID),

0 commit comments

Comments
 (0)