blob: 8df628973022518dfd6759e3a7a6c271866c06b8 [file] [log] [blame]
<!doctype html>
<!--
Generated by Apache Maven Doxia at $dateFormat.format( $currentDate ) Rendered using Reflow Maven Skin 2.3.0 (http://devacfr.github.io/reflow-maven-skin)
-->
<html xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<title>Apache OpenMeetings Project &#x2013; OAuth2 integration</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="" />
<meta name="author" content="Apache OpenMeetings Team" />
<meta http-equiv="content-language" content="en" />
<link href="./css/themes/cerulean/bootstrap.min.css" rel="stylesheet" />
<link href="./css/fontawesome/all.min.css" rel="stylesheet" />
<link href="./css/reflow-skin.css" rel="stylesheet" />
<link rel="stylesheet" href="./js/styles/github.min.css" />
<link href="./css/lightbox.css" rel="stylesheet" />
<link href="./css/site.css" rel="stylesheet" />
<link href="./css/print.css" rel="stylesheet" media="print" />
<link rel="stylesheet" href="./css/site.css"/>
</head> <!-- end : head -->
<body class="page-oauth2 project-openmeetings-server anchorjs-enabled scrolltop-smooth-enabled m-toc-sidebar-enabled m-toc-sidebar-expanded m-toc-sidebar-autoexpandable toc-sidebar-fixed">
<nav id="m-top-navbar" class="navbar navbar-expand-lg fixed-top navbar-dark bg-primary">
<div class="container"> <a class="navbar-brand mb-0 h1" href="index.html">
<span class="color-highlight">Apache</span> OpenMeetings
</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#top-navbar-collapse-1" aria-controls="top-navbar-collapse-1" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="top-navbar-collapse-1">
<ul class="nav navbar-nav ml-auto">
<li class="nav-item " ><a href="demo.html" title="Demo" class="nav-link" >Demo</a></li>
<li class="nav-item " ><a href="downloads.html" title="Download" class="nav-link" >Download</a></li>
<li class="nav-item " ><a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS" title="Wiki" class="externalLink nav-link" >Wiki</a></li>
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">General <b class="caret"></b></a>
<div class="dropdown-menu">
<a href="index.html" title="Home" class="dropdown-item ">Home</a>
<a href="https://www.apache.org/licenses/" title="License" class="dropdown-item ">License</a>
<a href="https://www.apache.org/" title="ASF" class="dropdown-item ">ASF</a>
<a href="https://www.apache.org/foundation/sponsorship" title="Sponsorship" class="dropdown-item ">Sponsorship</a>
<a href="https://www.apache.org/foundation/thanks" title="Thanks" class="dropdown-item ">Thanks</a>
<a href="CallForLogo.html" title="Call For Logo" class="dropdown-item ">Call For Logo</a>
<a href="NewsArchive.html" title="News archive" class="dropdown-item ">News archive</a>
<a href="security.html" title="Security" class="dropdown-item ">Security</a>
<a href="commercial-support.html" title="Commercial Support" class="dropdown-item ">Commercial Support</a>
</div>
</li>
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Installation <b class="caret"></b></a>
<div class="dropdown-menu">
<a href="installation.html" title="Installation" class="dropdown-item ">Installation</a>
<a href="Upgrade.html" title="Upgrade" class="dropdown-item ">Upgrade</a>
<a href="InstallMediaServer.html" title="Media Server Installation" class="dropdown-item ">Media Server Installation</a>
<a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools" title="Tutorials" class="dropdown-item ">Tutorials</a>
<a href="CommandLineAdmin.html" title="Command Line Admin" class="dropdown-item ">Command Line Admin</a>
</div>
</li>
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Community <b class="caret"></b></a>
<div class="dropdown-menu">
<a href="get-involved.html" title="Get Involved" class="dropdown-item ">Get Involved</a>
<a href="team.html" title="Committers" class="dropdown-item ">Committers</a>
<a href="OurUsers.html" title="Our Users" class="dropdown-item ">Our Users</a>
<a href="mailing-lists.html" title="Mailing Lists" class="dropdown-item ">Mailing Lists</a>
<a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS/" title="Wiki" class="dropdown-item ">Wiki</a>
</div>
</li>
<li class="nav-item dropdown active">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Configuration <b class="caret"></b></a>
<div class="dropdown-menu">
<div class="dropdown-submenu">
<a href="oauth2.html#integration" title="Integration" class="dropdown-item active" >Integration</a> <div class="dropdown-menu">
<a href="swagger" title="REST API Swagger" target="_blank" class="dropdown-item ">REST API Swagger</a>
<a href="openmeetings-webservice/apidocs/index.html" title="SOAP/REST API JavaDoc" target="_blank" class="dropdown-item ">SOAP/REST API JavaDoc</a>
<a href="RestAPISample.html" title="REST API Sample" class="dropdown-item ">REST API Sample</a>
<a href="LdapAndADS.html" title="Ldap and ADS" class="dropdown-item ">Ldap and ADS</a>
<a href="" title="OAuth2" class="dropdown-item active">OAuth2</a>
<a href="AsteriskIntegration.html" title="VoIP and SIP" class="dropdown-item ">VoIP and SIP</a>
<a href="errorvalues.html" title="Errors table" class="dropdown-item ">Errors table</a>
<a href="CalDAVandGCal.html" title="CalDAV and Google Calendar integration" class="dropdown-item ">CalDAV and Google Calendar integration</a>
<a href="ExternalVideo.html" title="External Video/Camera" class="dropdown-item ">External Video/Camera</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#plugins" title="Plugins" class="dropdown-item" >Plugins</a> <div class="dropdown-menu">
<a href="MoodlePlugin.html" title="Moodle Plugin" class="dropdown-item ">Moodle Plugin</a>
<a href="SakaiPlugin.html" title="Sakai Plugin" class="dropdown-item ">Sakai Plugin</a>
<a href="JiraPlugin.html" title="Jira Plugin" class="dropdown-item ">Jira Plugin</a>
<a href="JoomlaPlugin.html" title="Joomla Plugin" class="dropdown-item ">Joomla Plugin</a>
<a href="DrupalPlugin.html" title="Drupal Plugin" class="dropdown-item ">Drupal Plugin</a>
<a href="BitrixPlugin.html" title="Bitrix Plugin" class="dropdown-item ">Bitrix Plugin</a>
<a href="ConfluencePlugin.html" title="Confluence Plugin" class="dropdown-item ">Confluence Plugin</a>
<a href="SugarCRMPlugin.html" title="SugarCRM Plugin" class="dropdown-item ">SugarCRM Plugin</a>
<a href="RedminePlugin.html" title="Redmine Plugin" class="dropdown-item ">Redmine Plugin</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#db" title="DB Sample Configurations" class="dropdown-item" >DB Sample Configurations</a> <div class="dropdown-menu">
<a href="H2Config.html" title="H2" class="dropdown-item ">H2</a>
<a href="IBMDB2Config.html" title="IBM DB2" class="dropdown-item ">IBM DB2</a>
<a href="OracleConfig.html" title="Oracle" class="dropdown-item ">Oracle</a>
<a href="MySQLConfig.html" title="MySQL" class="dropdown-item ">MySQL</a>
<a href="PostgresConfig.html" title="Postgres" class="dropdown-item ">Postgres</a>
<a href="MSSQLConfig.html" title="MSSQL" class="dropdown-item ">MSSQL</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#localization" title="Localization and languages" class="dropdown-item" >Localization and languages</a> <div class="dropdown-menu">
<a href="Internationalisation.html" title="Internationalisation" class="dropdown-item ">Internationalisation</a>
<a href="LanguageEditor.html" title="LanguageEditor" class="dropdown-item ">LanguageEditor</a>
<a href="TimeZoneHandling.html" title="TimeZoneHandling" class="dropdown-item ">TimeZoneHandling</a>
<a href="EditTemplates.html" title="EditTemplates" class="dropdown-item ">EditTemplates</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#port" title="NAT Port Settings" class="dropdown-item" >NAT Port Settings</a> <div class="dropdown-menu">
<a href="PortSettings.html" title="Port settings" class="dropdown-item ">Port settings</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#performance" title="Performance" class="dropdown-item" >Performance</a> <div class="dropdown-menu">
<a href="JVMPerformanceTuning.html" title="JVM performance tuning" class="dropdown-item ">JVM performance tuning</a>
<a href="NetworkCalculator.html" title="Network bandwidth calculator" class="dropdown-item ">Network bandwidth calculator</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#interface" title="User Interface" class="dropdown-item" >User Interface</a> <div class="dropdown-menu">
<a href="LogoAndIcons.html" title="Logo and icons" class="dropdown-item ">Logo and icons</a>
<a href="themes-and-branding.html" title="Themes" class="dropdown-item ">Themes</a>
<a href="Dashboard.html" title="Dashboard" class="dropdown-item ">Dashboard</a>
<a href="WebcamResolutions.html" title="Webcam resolutions" class="dropdown-item ">Webcam resolutions</a>
<a href="ConferenceRoomLayoutOptions.html" title="Room layout options" class="dropdown-item ">Room layout options</a>
<a href="HotKeys.html" title="Hot Keys" class="dropdown-item ">Hot Keys</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#customize" title="Customization" class="dropdown-item" >Customization</a> <div class="dropdown-menu">
<a href="WebappNamePath.html" title="Webapp name/path" class="dropdown-item ">Webapp name/path</a>
<a href="CalendarAndTimezone.html" title="Calendar and timezone" class="dropdown-item ">Calendar and timezone</a>
<a href="CustomRoomTypeHowTo.html" title="Custom room type" class="dropdown-item ">Custom room type</a>
<a href="CustomCryptMechanism.html" title="Custom crypt mechanism" class="dropdown-item ">Custom crypt mechanism</a>
<a href="GeneralConfiguration.html" title="General Configuration" class="dropdown-item ">General Configuration</a>
<a href="PrivacyStatement.html" title="Privacy Statement" class="dropdown-item ">Privacy Statement</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#security" title="Security" class="dropdown-item" >Security</a> <div class="dropdown-menu">
<a href="RestrictedAccess.html" title="Restricted Access" class="dropdown-item ">Restricted Access</a>
<a href="HTTPS.html" title="HTTPS" class="dropdown-item ">HTTPS</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#convert" title="Converters" class="dropdown-item" >Converters</a> <div class="dropdown-menu">
<a href="OpenOfficeConverter.html" title="OpenOffice Converter" class="dropdown-item ">OpenOffice Converter</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#cluster" title="Clustering" class="dropdown-item" >Clustering</a> <div class="dropdown-menu">
<a href="Clustering.html" title="Clustering" class="dropdown-item ">Clustering</a>
</div>
</div>
<div class="dropdown-submenu">
<a href="oauth2.html#misc" title="Misc" class="dropdown-item" >Misc</a> <div class="dropdown-menu">
<a href="GetVersionInfo.html" title="Get version info" class="dropdown-item ">Get version info</a>
</div>
</div>
</div>
</li>
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Development <b class="caret"></b></a>
<div class="dropdown-menu">
<a href="scm.html" title="Source Code" class="dropdown-item ">Source Code</a>
<a href="issue-management.html" title="Bugs / Issues" class="dropdown-item ">Bugs / Issues</a>
<a href="dependencies.html" title="Dependencies" class="dropdown-item ">Dependencies</a>
<a href="ci-management.html" title="Continuous Integration" class="dropdown-item ">Continuous Integration</a>
<a href="BuildInstructions.html" title="Build Instructions" class="dropdown-item ">Build Instructions</a>
<a href="JUnitTesting.html" title="JUnit Testing" class="dropdown-item ">JUnit Testing</a>
<a href="ManualTesting.html" title="Manual Testing" class="dropdown-item ">Manual Testing</a>
<a href="ReleaseGuide.html" title="Release Guide" class="dropdown-item ">Release Guide</a>
<a href="WebsiteGuide.html" title="Website Guide" class="dropdown-item ">Website Guide</a>
</div>
</li>
</ul><!--/ul.navbar-nav -->
</div><!--/.nav-collapse -->
</div> <!--/.container --> </nav> <!--/.navbar -->
<div class="main-body">
<div class="header text-light bg-secondary" role="main">
<div class="container container-fluid">
<div id="banner" class="header--banner">
<div class="row m-1">
<div class="col-md-12">
<div class="float-left header--banner--left bannerLeft">
<a href="index.html">
<img class="float-left m-2 img-fluid" src="images/logo.png" alt="Apache OpenMeetings" />
</a>
</div>
<div class="float-right header--banner--right bannerRight">
<a href="https://apache.org">
<img class="float-left m-2 img-fluid" src="https://apache.org/img/asf_logo.png" alt="Apache" />
</a>
</div>
</div>
</div>
</div>
</div>
</div> <!-- end : header -->
<div class="row mt-5">
<div class="d-xs-none d-sm-none d-md-none d-lg-block col-lg-2">
</div>
<main class="col-xs-12 col-sm-12 col-md-12 col-lg-12 col-xl-8" role="main">
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<li class="publishDate version-date">$dateFormat.applyPattern( $format ) $i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateValue</li>
</ol>
</nav>
<section>
<div class="page-header">
<h2 id="oauth2-integration">OAuth2 integration</h2>
</div>
<p>You need Apache Openmeetings <b>version 3.0</b> to apply this guide!</p>
<p>You can manage various OAuth2 servers by opening "Administration =&gt; OAuth2". There are already created servers like Facebook or Google. You can use them as example or in production. To add your own servers you need to get their documentation to set necessary attributes.</p>
</section>
<section>
<h2 id="attributes1">Attributes</h2>
<ul>
<li><i>Name</i> - displayed in the login dialog text</li>
<li><i>client_id</i> and <i>client_secret</i> - credentials which you got from your oauth2 server.</li>
<li><i>Redirect uri</i> - put this value into application settings in the oauth2 server.</li>
<li><i>Request key URL</i> - an URL which will be used to request access key.</li>
<li><i>Request token URL</i> - an URL which will be used to request access token.</li>
<li><i>Request token attributes</i> - attributes for access token request.</li>
<li><i>Request info URL</i> - an URL which will be used to request authentication attributes.</li>
<li><i>Login param name</i> - login key name to get value from info response.</li>
<li><i>Email param name</i> - email key name to get value from info response.</li>
<li><i>Firstname param name</i> - firstname key name to get value from info response.</li>
<li><i>Lastname param name</i> - lastname key name to get value from info response.</li>
</ul>
<p>Request attributes (request key url, request token url, request token attributes, request info url) may contain next variables as a part:</p>
<ul>
<li>{$client_id}</li>
<li>{$client_secret}</li>
<li>{$redirect_uri}</li>
<li>{$code}</li>
<li>{$access_token}</li>
</ul>
</section> </main>
<div class="d-none d-sm-none d-md-none d-lg-none d-xl-block col-xl-2">
<div id="m-toc-sidebar" class="d-print-none m-toc-sidebar-enabled m-toc-sidebar-expanded m-toc-sidebar-autoexpandable toc-sidebar-fixed">
<nav id="m-toc-sidebar-nav flex-column">
<ul class="m-nav--sidebar nav flex-column flex-nowrap">
<li class="h2">
<a class="nav-link" href="#oauth2-integration" title="OAuth2 integration">OAuth2 integration</a>
</li>
<li class="h2">
<a class="nav-link" href="#attributes1" title="Attributes">Attributes</a>
</li>
</ul>
</nav>
</div>
</div>
</div> <!-- row: end -->
</div> <!-- .main-body: end -->
<div id="m_scrolltop" class="m-scrolltop">
<i class="fa fa-arrow-up"></i>
</div>
<!-- Footer -->
<footer class="footer-light bg-light">
<div class="container">
<div class="row">
<div class="col bottom-nav">
<ul class="nav flex-column nav-list">
<li class="nav-header">
General
</li>
<li class="nav-item "><a href="index.html" title="Home" class="nav-link" >Home</a></li>
<li class="nav-item "><a href="https://www.apache.org/licenses/" title="License" class="externalLink nav-link" >License</a></li>
<li class="nav-item "><a href="https://www.apache.org/" title="ASF" class="externalLink nav-link" >ASF</a></li>
<li class="nav-item "><a href="https://www.apache.org/foundation/sponsorship" title="Sponsorship" class="externalLink nav-link" >Sponsorship</a></li>
<li class="nav-item "><a href="https://www.apache.org/foundation/thanks" title="Thanks" class="externalLink nav-link" >Thanks</a></li>
<li class="nav-item "><a href="CallForLogo.html" title="Call For Logo" class="nav-link" >Call For Logo</a></li>
<li class="nav-item "><a href="NewsArchive.html" title="News archive" class="nav-link" >News archive</a></li>
<li class="nav-item "><a href="security.html" title="Security" class="nav-link" >Security</a></li>
<li class="nav-item "><a href="commercial-support.html" title="Commercial Support" class="nav-link" >Commercial Support</a></li>
</ul>
</div>
<div class="col bottom-nav">
<ul class="nav flex-column nav-list">
<li class="nav-header">
Installation
</li>
<li class="nav-item "><a href="installation.html" title="Installation" class="nav-link" >Installation</a></li>
<li class="nav-item "><a href="Upgrade.html" title="Upgrade" class="nav-link" >Upgrade</a></li>
<li class="nav-item "><a href="InstallMediaServer.html" title="Media Server Installation" class="nav-link" >Media Server Installation</a></li>
<li class="nav-item "><a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools" title="Tutorials" class="externalLink nav-link" >Tutorials</a></li>
<li class="nav-item "><a href="CommandLineAdmin.html" title="Command Line Admin" class="nav-link" >Command Line Admin</a></li>
</ul>
</div>
<div class="col bottom-nav">
<ul class="nav flex-column nav-list">
<li class="nav-header">
Community
</li>
<li class="nav-item "><a href="get-involved.html" title="Get Involved" class="nav-link" >Get Involved</a></li>
<li class="nav-item "><a href="team.html" title="Committers" class="nav-link" >Committers</a></li>
<li class="nav-item "><a href="OurUsers.html" title="Our Users" class="nav-link" >Our Users</a></li>
<li class="nav-item "><a href="mailing-lists.html" title="Mailing Lists" class="nav-link" >Mailing Lists</a></li>
<li class="nav-item "><a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS/" title="Wiki" class="externalLink nav-link" >Wiki</a></li>
</ul>
</div>
<div class="col bottom-nav">
<ul class="nav flex-column nav-list">
<li class="nav-header">
Development
</li>
<li class="nav-item "><a href="scm.html" title="Source Code" class="nav-link" >Source Code</a></li>
<li class="nav-item "><a href="issue-management.html" title="Bugs / Issues" class="nav-link" >Bugs / Issues</a></li>
<li class="nav-item "><a href="dependencies.html" title="Dependencies" class="nav-link" >Dependencies</a></li>
<li class="nav-item "><a href="ci-management.html" title="Continuous Integration" class="nav-link" >Continuous Integration</a></li>
<li class="nav-item "><a href="BuildInstructions.html" title="Build Instructions" class="nav-link" >Build Instructions</a></li>
<li class="nav-item "><a href="JUnitTesting.html" title="JUnit Testing" class="nav-link" >JUnit Testing</a></li>
<li class="nav-item "><a href="ManualTesting.html" title="Manual Testing" class="nav-link" >Manual Testing</a></li>
<li class="nav-item "><a href="ReleaseGuide.html" title="Release Guide" class="nav-link" >Release Guide</a></li>
<li class="nav-item "><a href="WebsiteGuide.html" title="Website Guide" class="nav-link" >Website Guide</a></li>
</ul>
</div>
</div> <!-- END: .row -->
</div> <!-- END: .container -->
</footer>
<div class="container subfooter text-center">
<div class="row">
<div class="col-md-12">
<p class="copyright">Copyright &copy;2012-${currentYear}
<a href="https://apache.org">Apache Software Foundation</a>
. All Rights Reserved.</p>
</div>
</div>
</div>
<!-- Le javascript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="./js/jquery.min.js" crossorigin="anonymous"></script>
<script src="./js/popper.min.js" crossorigin="anonymous"></script>
<script src="./js/bootstrap.min.js" crossorigin="anonymous"></script>
<script src="./js/lightbox.min.js" crossorigin="anonymous"></script>
<script src="./js/highlight.min.js" crossorigin="anonymous"></script>
<script src="https://www.apachecon.com/event-images/snippet.js"></script>
<script src="./js/site.js" type="text/javascript"></script>
<script src="./js/jquery-ui.min.js" type="text/javascript"></script>
<script src="./js/netcalc.js" type="text/javascript"></script>
<div class="text-center">Apache OpenMeetings, OpenMeetings, Apache, the Apache feather, and the Apache OpenMeetings project logo</div>
<div class="text-center">are trademarks of the Apache Software Foundation.</div>
<div class="text-center">
<a href="https://privacy.apache.org/policies/privacy-policy-public.html">Privacy policy</a>
</div> <script src="./js/reflow-skin.js" crossorigin="anonymous"></script>
<script src="./js/anchor.min.js" crossorigin="anonymous"></script>
</body>
</html>