You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The README describes the installation of the host tooling on a
per-browser level. As the steps are almost identical, we group them to
reduce the amount of duplicated text. We further improve the readability
by re-ordering some aspects to stress that the extension consists of
both native and browser parts.
Signed-off-by: Felix Moessbauer <felix.moessbauer@siemens.com>
Copy file name to clipboardExpand all lines: README.md
+38-61Lines changed: 38 additions & 61 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,30 +9,27 @@ This browser extension uses a locally running Microsoft Identity Broker to authe
9
9
By that, also sites behind conditional access policies can be accessed.
10
10
The extension is written for Firefox but provides a limited support for Google Chrome, Chromium and Thunderbird.
11
11
12
-
## Pre-conditions
13
-
14
-
This extension will only work on intune-enabled Linux devices. Please double
15
-
check this by running the `intune-portal` application and check if your user
16
-
is logged in (after clicking `sign-in`).
17
-
Also make sure to install the host components (see *Installation* below).
12
+
> [!NOTE]
13
+
> This extension will only work on intune-enabled Linux devices. Please double
14
+
> check this by running the `intune-portal` application and check if your user
15
+
> is logged in (after clicking `sign-in`).
18
16
19
17
## Installation
20
18
19
+
The extension consists of two parts:
20
+
21
+
- a host program that communicates with the Microsoft Identity Broker via DBus
22
+
- a WebExtension that injects the acquired tokens into the corresponding requests
23
+
24
+
### Dependencies
25
+
21
26
The extension requires [PyGObject](https://pygobject.gnome.org/) and [pydbus](https://github.com/LEW21/pydbus) as runtime dependencies.
22
27
23
28
- On Debian: `sudo apt-get install python3-gi python3-pydbus`
24
29
- On Arch Linux: `sudo pacman -S python-gobject python-pydbus`
25
30
- If you are using a Python version manager such as `asdf` you must install the Python packages manually: `pip install PyGObject pydbus`
26
31
27
-
**Note:** System-wide installation and configuration is supported. For more information, see [Global Install](docs/global_install.md).
28
-
29
-
### Firefox & Thunderbird: Signed Version from GitHub Releases
30
-
31
-
You can download a **signed version** of the browser extension directly from our [GitHub Releases](https://github.com/siemens/linux-entra-sso/releases).
32
-
33
-
> This package includes only the **browser extension**. The **host tooling** must still be installed manually.
2. Run the local install command (for the intended target):
45
42
46
43
```bash
44
+
$ # Firefox & Thunderbird
47
45
$ make local-install-firefox
46
+
$ # Chromium, Chrome and Brave
47
+
$ make local-install-chrome
48
+
$ # All supported browsers
49
+
$ make local-install
48
50
```
49
51
50
-
3. Download the extension file:
51
-
52
-
Get the `linux_entra_sso-<version>.xpi` file from the [project's releases page](https://github.com/siemens/linux-entra-sso/releases).
53
-
54
-
> If you are installing for Thunderbird, right-click the link and select "Save Link As..." to avoid installing it in Firefox.
55
-
56
-
4. Enable required permissions:
57
-
58
-
After installing the extension, enable the following permission:
59
-
60
-
Access your data for `https://login.microsoftonline.com`.
61
-
To support transparent re-login on applications using this identity provider, you need to grant permission for these domains as well.
62
-
For details, see [PRIVACY.md](PRIVACY.md).
63
-
64
-
### Chrome & Brave: Signed Extension from Chrome Web Store
65
-
66
-
You can install the signed browser extension from the [Chrome Web Store](https://chrome.google.com/webstore/detail/jlnfnnolkbjieggibinobhkjdfbpcohn), which works for both **Google Chrome** and **Brave Browser**.
67
-
68
-
> **Note:** This only installs the browser extension. You still need to install the host integration manually.
69
-
70
-
#### Installation Steps:
71
-
72
-
1. Clone this repository:
73
-
74
-
```bash
75
-
$ git@github.com:siemens/linux-entra-sso.git
76
-
$ cd linux-entra-sso
77
-
```
78
-
79
-
2. Run the local install command:
52
+
> [!NOTE]
53
+
> System-wide installation and configuration is supported. For more information, see [Global Install](docs/global_install.md).
80
54
81
-
```bash
82
-
$ make local-install-chrome # command for Chrome Browser
83
-
$ make local-install-brave # command for Brave Browser
84
-
```
55
+
### Installation of WebExtension
85
56
86
-
3. Install the extension file:
57
+
To complete the setup, install the WebExtension in your browser. This is necessary alongside the host tooling for the extension to function properly.
**Firefox & Thunderbird: Signed Version from GitHub Releases**:
60
+
Install the signed webextension `linux_entra_sso-<version>.xpi` from the [project's releases page](https://github.com/siemens/linux-entra-sso/releases).
61
+
If you are installing for Thunderbird, right-click the link and select "Save Link As..." to avoid installing it in Firefox.
89
62
90
-
### Development Version and Other Browsers
63
+
**Chromium, Chrome & Brave: Signed Extension from Chrome Web Store**:
64
+
Install the signed browser extension from the [Chrome Web Store](https://chrome.google.com/webstore/detail/jlnfnnolkbjieggibinobhkjdfbpcohn).
91
65
66
+
**Development Version and Other Browsers**:
92
67
If you want to execute unsigned versions of the extension (e.g. test builds) on Firefox, you have to use either Firefox ESR,
93
68
nightly or developer, as [standard Firefox does not allow installing unsigned extensions](https://support.mozilla.org/en-US/kb/add-on-signing-in-firefox#w_what-are-my-options-if-i-want-to-use-an-unsigned-add-on-advanced-users)
94
69
since version 48.
95
70
96
-
To build the extension and install the host parts, perform the following steps:
71
+
To build the extension, perform the following steps:
97
72
98
-
1. clone this repository
99
-
2. run `make local-install-<firefox|chrome|brave>` to install the native messaging app in the user's `.mozilla` (or Chrome) folder
100
-
3. run `make` to build the extension (For Firefox, `build/<platform>/linux-entra-sso-*.xpi` is generated)
101
-
4. Firefox only: Permit unsigned extensions in Firefox by setting `xpinstall.signatures.required` to `false`
102
-
4. Chrome only: In extension menu, enable `Developer mode`.
103
-
5. Install the extension in the Browser from the local `linux-entra-sso-*.xpi` file (Firefox). On Chrome, use `load unpacked` and point to `build/chrome`
104
-
6. Enable "Access your data for `https://login.microsoftonline.com`" under the extension's permissions
73
+
1. run `make` to build the extension (For Firefox, `build/<platform>/linux-entra-sso-*.xpi` is generated)
74
+
2. Firefox only: Permit unsigned extensions in Firefox by setting `xpinstall.signatures.required` to `false`
75
+
3. Chrome only: In extension menu, enable `Developer mode`.
76
+
4. Install the extension in the Browser from the local `linux-entra-sso-*.xpi` file (Firefox). On Chrome, use `load unpacked` and point to `build/chrome`
105
77
106
78
## Usage
107
79
80
+
After installing the extension, you might need to manually grant the following permission:
81
+
82
+
- Access your data for `https://login.microsoftonline.com`.
83
+
108
84
**No configuration is required.** The SSO is automatically enabled.
109
85
If you want to disable the SSO for this session, click on the tray icon and select the guest account.
110
86
In case you are already logged in, you might need to clear all cookies on `login.microsoftonline.com`.
@@ -124,6 +100,7 @@ To grant the necessary permissions, follow these steps:
124
100
125
101
Once configured, no further authentication requests will be needed.
126
102
To revoke permissions, return to the extension's settings and select the domain again.
0 commit comments