string AuthCallback::GetToken(shared_ptr<AuthenticationParameters>& ap) { try { if (redirectUrl_.empty()) { throw rmscore::exceptions::RMSInvalidArgumentException( "redirect Url is empty"); } if (clientId_.empty()) { throw rmscore::exceptions::RMSInvalidArgumentException("client Id is empty"); } AuthenticationContext authContext( ap->Authority(), AuthorityValidationType::False, FileCachePtr); auto result = authContext.acquireToken(ap->Resource(), clientId_, redirectUrl_, PromptBehavior::Auto, ap->UserId()); return result->accessToken(); } catch (const rmsauth::Exception& /*ex*/) { // out logs throw; } }
string AuthCallback::GetToken(shared_ptr<AuthenticationParameters>& ap) { string redirect = ap->Scope().empty() ? redirectUrl_.toStdString() : ap->Scope(); try { if (redirect.empty()) { throw rmscore::exceptions::RMSInvalidArgumentException( "redirect Url is empty"); } if (clientId_.isEmpty()) { throw rmscore::exceptions::RMSInvalidArgumentException("client Id is empty"); } AuthenticationContext authContext( ap->Authority(), AuthorityValidationType::False, FileCachePtr); auto result = authContext.acquireToken(ap->Resource(), clientId_.toStdString(), redirect, PromptBehavior::Auto, ap->UserId()); return result->accessToken(); } catch (const rmsauth::Exception& ex) { qDebug() << "!!!!! Auth error: " << ex.error().c_str(); throw; } return ""; }