added auth
This commit is contained in:
7 files changed
+119
-21
No files matched your search
@@ -0,0 +1,22 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
#[serde(rename_all = "snake_case")]
|
||||
pub struct LoginSuccess {
|
||||
#[serde(rename = "bak:UserId")]
|
||||
pub user_id: String,
|
||||
pub access_token: String,
|
||||
pub token_type: TokenType,
|
||||
pub expires_in: i64,
|
||||
pub refresh_token: String,
|
||||
#[serde(rename = "bak:ApiVersion")]
|
||||
pub api_version: String,
|
||||
#[serde(rename = "bak:AppVersion")]
|
||||
pub app_version: String,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
#[serde(rename_all = "snake_case")]
|
||||
pub enum TokenType {
|
||||
Bearer,
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
mod login;
|
||||
mod open_id_discovery;
|
||||
mod user_jwt_claim;
|
||||
|
||||
pub use login::{LoginSuccess, TokenType};
|
||||
pub use open_id_discovery::OpenIdDiscovery;
|
||||
pub use user_jwt_claim::UserJwtClaim;
|
||||
@@ -0,0 +1,24 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
#[serde(rename_all = "snake_case")]
|
||||
pub struct OpenIdDiscovery {
|
||||
pub issuer: String,
|
||||
pub authorization_endpoint: String,
|
||||
pub token_endpoint: String,
|
||||
pub userinfo_endpoint: String,
|
||||
pub jwks_uri: String,
|
||||
pub grant_types_supported: Vec<String>,
|
||||
pub response_types_supported: Vec<String>,
|
||||
pub response_modes_supported: Vec<String>,
|
||||
pub scopes_supported: Vec<String>,
|
||||
pub claims_supported: Vec<String>,
|
||||
pub id_token_signing_alg_values_supported: Vec<String>,
|
||||
pub code_challenge_methods_supported: Vec<String>,
|
||||
pub subject_types_supported: Vec<String>,
|
||||
pub token_endpoint_auth_methods_supported: Vec<String>,
|
||||
pub claims_parameter_supported: bool,
|
||||
pub request_parameter_supported: bool,
|
||||
pub request_uri_parameter_supported: bool,
|
||||
pub authorization_response_iss_parameter_supported: bool,
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
#[serde(rename_all = "snake_case")]
|
||||
pub struct UserJwtClaim {
|
||||
#[serde(rename = "Bakalari.AccountType")]
|
||||
pub account_type: String,
|
||||
#[serde(rename = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier")]
|
||||
pub xmlnameidentifier: Option<String>,
|
||||
#[serde(rename = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name")]
|
||||
pub xmlname: Option<String>,
|
||||
#[serde(rename = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn")]
|
||||
pub xmlupn: Option<String>,
|
||||
#[serde(rename = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/gender")]
|
||||
pub xmlgender: Option<String>,
|
||||
#[serde(rename = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/dateofbirth")]
|
||||
pub xmldateofbirth: Option<String>,
|
||||
#[serde(rename = "Bakalari.UserType")]
|
||||
pub user_type: String,
|
||||
#[serde(rename = "Bakalari.SessionId")]
|
||||
pub session_id: String,
|
||||
#[serde(rename = "Bakalari.TimeStamp")]
|
||||
pub time_stamp: String,
|
||||
#[serde(rename = "Bakalari.PersonIdWithType")]
|
||||
pub person_id_with_type: String,
|
||||
#[serde(rename = "Bakalari.EvidNumber")]
|
||||
pub evid_number: String,
|
||||
#[serde(rename = "Bakalari.MachineName")]
|
||||
pub machine_name: String,
|
||||
pub sub: String,
|
||||
pub name: String,
|
||||
pub oi_prst: String,
|
||||
pub oi_au_id: String,
|
||||
pub client_id: String,
|
||||
pub oi_tkn_id: String,
|
||||
pub aud: String,
|
||||
pub scope: String,
|
||||
pub jti: String,
|
||||
pub exp: i64,
|
||||
pub iss: String,
|
||||
pub iat: i64,
|
||||
}
|
||||
@@ -2,6 +2,7 @@ mod absence;
|
||||
mod api_info;
|
||||
mod attachment;
|
||||
//campaign
|
||||
mod auth;
|
||||
mod campaign;
|
||||
mod error;
|
||||
mod events;
|
||||
@@ -24,6 +25,7 @@ mod user; //TODOS
|
||||
pub use absence::{AbsenceDay, StudentAbsenceOverviewResponse, SubjectAbsence};
|
||||
pub use api_info::ApiInfo;
|
||||
pub use attachment::AttachmentInfo;
|
||||
pub use auth::*;
|
||||
pub use campaign::Campaign;
|
||||
pub use error::{Error, ModelState, StringArray};
|
||||
pub use events::{Event, EventTime, EventType, Events};
|
||||
|
||||
+21
-21
@@ -3,47 +3,47 @@ use serde::{Deserialize, Serialize};
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
#[serde(tag = "Module")]
|
||||
pub enum Module {
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Absence { rights: Vec<AbsenceRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
AccessSystem { rights: Vec<AccessSystemRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Application { rights: Vec<ApplicationRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Campaign { rights: Vec<CampaignRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Classbook { rights: Vec<ClassbookRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Emergency { rights: Vec<EmergencyRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Events { rights: Vec<EventsRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Gdpr { rights: Vec<GdprRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Homeworks { rights: Vec<HomeworksRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Komens { rights: Vec<KomensRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Marking { rights: Vec<MarkingRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Marks { rights: Vec<MarksRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Payments { rights: Vec<PaymentsRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Semester { rights: Vec<SemesterRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Subjects { rights: Vec<SubjectsRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Substitutions { rights: Vec<SubstitutionsRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Teaching { rights: Vec<TeachingRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Timetable { rights: Vec<TimetableRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
Unknown { rights: Vec<UnknownRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
UserAccount { rights: Vec<UserAccountRights> },
|
||||
#[serde(rename_all="PascalCase")]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
WebBased { rights: Vec<WebBasedRights> },
|
||||
}
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
- [ ] campaign error
|
||||
- [ ] class book
|
||||
- [x] events
|
||||
- [x] auth
|
||||
- [ ] error
|
||||
- [x] gdpr
|
||||
- [x] homeworks
|
||||
|
||||
Reference in new issue
Block a user