Difference between revisions of "WISE-PaaS/Single Sign-On(SSO)"

From ESS-WIKI
Jump to: navigation, search
Line 1: Line 1:
<p><font color="#000000">WISE-PaaS/OpenID is part of Advantech WISE-PaaS cloud solution and &#160;</font>plays an important role in the interoperability of Internet identity<font color="#000000">.</font>&#160;It provides a central login&#160;mechanism.
+
<font color="#000000">WISE-PaaS/OpenID is part of Advantech WISE-PaaS cloud solution and &nbsp;</font>plays an important role in the interoperability of Internet identity<font color="#000000">.</font>&nbsp;It provides a central login&nbsp;mechanism.
</p><p><font color="#000000">WISE-PaaS/OpenID Connect utilizes Keycloak which is&#160;an open source identity and access management for modern applications and services.</font>
+
 
</p><p>
+
<font color="#000000">WISE-PaaS/OpenID Connect utilizes Keycloak which is&nbsp;an open source identity and access management for modern applications and services.</font>
</p>
+
 
<h2> Features Overview </h2>
+
 
<p>Single-Sign On&#160;:&#160;Login once to multiple applications
+
 
</p><p>Standard Protocols&#160;:&#160;OpenID Connect, OAuth 2.0 and SAML 2.0
+
== Features Overview ==
</p><p>Centralized Management&#160;:&#160;For admins and users
+
 
</p><p>Adapters&#160;:&#160;Secure applications and services easily
+
Single-Sign On&nbsp;:&nbsp;Login once to multiple applications
</p><p>High Performance&#160;:&#160;Lightweight, fast and scalable
+
 
</p><p>Clustering&#160;:&#160;For scalability and availability
+
Standard Protocols&nbsp;:&nbsp;OpenID Connect, OAuth 2.0 and SAML 2.0
</p><p>Themes&#160;:&#160;Customize look and feel
+
 
</p><p>Extensible&#160;:&#160;Customize through code
+
Centralized Management&nbsp;:&nbsp;For admins and users
</p><p>Password Policies&#160;:&#160;Customize password policies
+
 
</p><p>
+
Adapters&nbsp;:&nbsp;Secure applications and services easily
</p>
+
 
<h2> Implementation </h2>
+
High Performance&nbsp;:&nbsp;Lightweight, fast and scalable
<h3> Apply a manager account for OpenID Central Server </h3>
+
 
<p><i>Please sen a request to <a href="WISE-Paas%2FOpenID%20Connect%20service%20manager">WISE-Paas/OpenID Connect service manager</a> by E-mail. And provide the following information</i>
+
Clustering&nbsp;:&nbsp;For scalability and availability
</p>
+
 
<ul><li>Service name&#160;: [<i>RMM</i>] as your&#160;realm.
+
Themes&nbsp;:&nbsp;Customize look and feel
</li>
+
 
<li>Client name&#160;: [<i>RMMClient</i>] a client definition for a app to login in.
+
Extensible&nbsp;:&nbsp;Customize through code
</li>
+
 
<li>User registration&#160;: [<i>True/False</i>] Enable/Disable user registeration.
+
Password Policies&nbsp;:&nbsp;Customize password policies
</li>
+
 
<li>Administrator account&#160;: [<i>RMMAdmin</i>] Use this account to manage this realm. The default password is same as account name. Change password after first login.
+
 
</li></ul><h3> Setting your service on OpenID server </h3>
+
 
<p>Open the <a href="https://openidserver.redirectme.net:8443/auth/admin/" alt="https://openidserver.redirectme.net:8443/auth/admin/" title="https://openidserver.redirectme.net:8443/auth/admin/">https://openidserver.redirectme.net:8443/auth/admin/</a>&#160;and login with applied administrator account to&#160;config your realm before implement your client app.
+
== Implementation ==
</p>
+
 
<ul><li>(Essential) Public key&#160;:&#160;OpenID server generate a unique key for client app identification. Copy the public key to json setting file include in the client app .
+
=== Apply a manager account for OpenID Central Server ===
</li>
+
 
<li>(Essential) Valid Redirect URIs &amp;&#160;Web Origins&#160;: Provide valid uri pattern for your client app. OpenID server would redirect to your client page while a successful login or logout. Your client page must be publicly accessible.
+
''Please sen a request to &lt;a href="WISE-Paas%2FOpenID%20Connect%20service%20manager"&gt;WISE-Paas/OpenID Connect service manager&lt;/a&gt; by E-mail. And provide the following information''
</li>
+
 
<li>(Optional) User registration&#160;:&#160;
+
*Service name&nbsp;: [''RMM''] as your&nbsp;realm.
</li></ul><h3> Implement client codes </h3>
+
*Client name&nbsp;: [''RMMClient''] a client definition for a app to login in.
<p><i>....</i>
+
*User registration&nbsp;: [''True/False''] Enable/Disable user registeration.
</p>
+
*Administrator account&nbsp;: [''RMMAdmin''] Use this account to manage this realm. The default password is same as account name. Change password after first login.
<h2> Sample code </h2>
+
 
<p>OpenID.json
+
=== Setting your service on OpenID server ===
<pre class="fck_mw_syntaxhighlight">&lt;syntaxhighlight lang=&quot;C&quot;&gt;int JSON_Validator(const char *json);&lt;/syntaxhighlight&gt;</pre>
+
 
</p>
+
Open the <a href="[https://openidserver.redirectme.net:8443/auth/admin/ https://openidserver.redirectme.net:8443/auth/admin/]" alt="[https://openidserver.redirectme.net:8443/auth/admin/ https://openidserver.redirectme.net:8443/auth/admin/]" title="[https://openidserver.redirectme.net:8443/auth/admin/ https://openidserver.redirectme.net:8443/auth/admin/]">[https://openidserver.redirectme.net:8443/auth/admin/ https://openidserver.redirectme.net:8443/auth/admin/]&lt;/a&gt;&nbsp;and login with applied administrator account to&nbsp;config your realm before implement your client app.
 +
 
 +
*(Essential) Public key&nbsp;:&nbsp;OpenID server generate a unique key for client app identification. Copy the public key to json setting file include in the client app .
 +
*(Essential) Valid Redirect URIs &&nbsp;Web Origins&nbsp;: Provide valid uri pattern for your client app. OpenID server would redirect to your client page while a successful login or logout. Your client page must be publicly accessible.
 +
*(Optional) User registration&nbsp;:&nbsp;
 +
 
 +
=== Implement client codes ===
 +
 
 +
''....''
 +
 
 +
== Sample code ==
 +
 
 +
OpenID.json
 +
 
 +
'''Result:'''
 +
<pre>{
 +
    "name":      "Jurassic World",
 +
    "width":      1920,
 +
    "height":    1080,
 +
    "frame rate": {15, 25, 30}
 +
    "info": {
 +
        "video": ["H264","6000"],
 +
        "audio": ["AAC", "14400"]
 +
    }
 +
}</pre>

Revision as of 06:20, 10 January 2017

WISE-PaaS/OpenID is part of Advantech WISE-PaaS cloud solution and  plays an important role in the interoperability of Internet identity. It provides a central login mechanism.

WISE-PaaS/OpenID Connect utilizes Keycloak which is an open source identity and access management for modern applications and services.


Features Overview

Single-Sign On : Login once to multiple applications

Standard Protocols : OpenID Connect, OAuth 2.0 and SAML 2.0

Centralized Management : For admins and users

Adapters : Secure applications and services easily

High Performance : Lightweight, fast and scalable

Clustering : For scalability and availability

Themes : Customize look and feel

Extensible : Customize through code

Password Policies : Customize password policies


Implementation

Apply a manager account for OpenID Central Server

Please sen a request to <a href="WISE-Paas%2FOpenID%20Connect%20service%20manager">WISE-Paas/OpenID Connect service manager</a> by E-mail. And provide the following information

  • Service name : [RMM] as your realm.
  • Client name : [RMMClient] a client definition for a app to login in.
  • User registration : [True/False] Enable/Disable user registeration.
  • Administrator account : [RMMAdmin] Use this account to manage this realm. The default password is same as account name. Change password after first login.

Setting your service on OpenID server

Open the <a href="https://openidserver.redirectme.net:8443/auth/admin/" alt="https://openidserver.redirectme.net:8443/auth/admin/" title="https://openidserver.redirectme.net:8443/auth/admin/">https://openidserver.redirectme.net:8443/auth/admin/</a> and login with applied administrator account to config your realm before implement your client app.

  • (Essential) Public key : OpenID server generate a unique key for client app identification. Copy the public key to json setting file include in the client app .
  • (Essential) Valid Redirect URIs & Web Origins : Provide valid uri pattern for your client app. OpenID server would redirect to your client page while a successful login or logout. Your client page must be publicly accessible.
  • (Optional) User registration : 

Implement client codes

....

Sample code

OpenID.json

Result:

{
    "name":       "Jurassic World",
    "width":      1920,
    "height":     1080,
    "frame rate": {15, 25, 30}
    "info": {
        "video": ["H264","6000"],
        "audio": ["AAC", "14400"]
    }
}