Skip to main content
Skip table of contents

How to implement Access Control Plugin for Portal

Innoactive Portal is a platform to securely deploy and distribute your VR content. With Portal you are in control of your applications until they are installed to a users’ PC. To protect your applications from being used without your control, e.g., by miss-use, unauthorized distribution to other PCs or using the applications without granted permission, you may add the Innoactive Portal access control plugin to your Unity or Unreal project. An application that includes the access control plugin can only be started by using the Innoactive Portal desktop client. You can even control the access rights if the client PC goes offline.

This user manual will guide you, as a developer, on how to setup the access control plugin for Unity (5.5, 2019.4) on a Windows machine. Be aware that other Versions of Unity and Unreal should work but are not thoroughly tested.

If you are looking for more technical documentation including README files, please visit this page.

Add Access Control to your Unity project

  1. Visit this page

  2. Download the Innoactive Portal - Access Control Plugin – Unity

  3. Import the ‘Innoactive-Access-Control.unitypackage’ to your project

  4. Configure the InnoactiveAccessControlScene to work with your Portal instance and related application:

    1. Go to Innoactive Access Controls’ Scenes Folder

    2. Double click to open on InnoactiveAccessControlScene

    3. Click on AccessControl in the Hierarchy

    4. Double click on OAuth2ClientSettings in inspector to open

  5. Add:

    1. your ClientID (see Obtain the ClientID)

    2. Backend URL: https://orgname.innoactive.io

  6. Save the Unity Scene (Strg+s)

  7. Open the Build settings (1), add the InnoactiveAccessControlScene to your Scenes In Build by clicking on Add Open Scene (2)

  8. Make the InnoactiveAccessControlScene the Scene zero by drag and drop to the first position.

  9. Now your Unity project is set up and can be build with access control included.

Please make sure - after the build has finished - to upload the project to the corresponding application that you created in Innoactive Portal.

Obtain the ClientID

  1. Visit your Portal Control Panel https://orgname.innoactive.io/control-panel/v2/

  2. Click Applications tab on the left.

  3. Click on New Application on the right.


    You will now create a placeholder application to create the OAUTH2 CLIENT ID. You will update the version of this placeholder application with your final Unity app. In case you want to upgrade an application that exists in your Portal, please browse to it and proceed to step 11.

  4. On your local machine create an empty text file and rename it to dummy.exe

  5. Compress the dummy.exe file as a .zip archive named dummy.zip

  6. Go back to the browser with the Upload a new application tab to upload the dummy.zip

  7. Provide all the information that describes your application like name and description. Set the version to an alpha state number like 0.0.1.

  8. When finishing to upload you can simply click on Finish.

  9. Now open the application from the list.

  10. In the Builds tab you will find several information. What you need to double-check is that dummy.exe is contained in the Executable path.

  11. You can then switch to Integrations tab and copy the OAUTH2 CLIENT ID.

  12. Copy the OAUTH2 CLIENT ID and use it in as the ClientID in the OAuth2ClientSettings of your Unity project.

Updating your project

  1. Set your project build architecture to x86_64

  2. Set your scripting runtime version and API compatibility level (names may vary between Unity versions) to .NET 4.x

  3. In rare cases with Unity versions below Unity 2019, the authentication might fail most of the time when starting the finished application. A quick fix is to go to ‘Standalone Player Options’ and set the ‘Display Resolution Dialog’ option to ‘Enabled’.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.