Skip to content

Refresh token still encrypted when sending to API #74

@timoinutilis

Description

@timoinutilis

The token refresh is broken, because "accessTokenModel.refresh_token" is still encrypted when using in "self.getAccessToken(refreshToken: ..."
It's only uncoded in "accessTokenModelToAccessTokenEntity"

`
public func getAccessToken(sub: String, callback: @escaping (Result) -> Void) {

    // getting current seconds
    let milliseconds = Date().timeIntervalSince1970
    let seconds = Int64(milliseconds)
    
    let accessTokenModel = DBHelper.shared.getAccessToken(key: sub)
    let expires = accessTokenModel.expires_in
    let secs: Int64 = Int64(accessTokenModel.seconds)
    let expires_in = expires + secs - 10
    
    if expires_in > seconds {
        
        if String(seconds).count < 10 {
            self.getAccessToken(refreshToken: accessTokenModel.refresh_token, callback: callback)
            return
        }
        
        EntityToModelConverter.shared.accessTokenModelToAccessTokenEntity(accessTokenModel: accessTokenModel) { (accessTokenEntity) in
            // return success callback
            let response = LoginResponseEntity()
            response.success = true
            response.status = 200
            response.data = accessTokenEntity
            
            DispatchQueue.main.async {
                callback(Result.success(result: response))
            }
            return
        }
    }
        
    else {
        self.getAccessToken(refreshToken: accessTokenModel.refresh_token, callback: callback)
    }
}

`

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions