Skip to content
This repository was archived by the owner on Jun 25, 2024. It is now read-only.

Commit b5d8c81

Browse files
Merge pull request #1 from silinternational/develop
Deliver prod release
2 parents c343c84 + fc119fa commit b5d8c81

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+947
-169
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
.idea/
2+
vendor/
3+
composer.lock

Makefile

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
start:
2+
docker-compose up -d
3+
4+
errors:
5+
docker-compose exec hub cat /var/log/apache2/error.log
6+
docker-compose exec idp1 cat /var/log/apache2/error.log
7+
docker-compose exec idp2 cat /var/log/apache2/error.log
8+
9+
clean:
10+
docker-compose kill
11+
docker-compose rm -f

README.md

Lines changed: 67 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,81 @@ Material Design theme for use with SimpleSAMLphp
33
## Installation
44

55
```
6-
composer.phar require silinternational/simplesamlphp-module-theme-material:dev-master
6+
composer.phar require silinternational/simplesamlphp-module-material:dev-master
77
```
88

99
## Configuration
1010

1111
Update `/simplesamlphp/config/config.php`:
1212

1313
```
14-
'theme.use' => 'themematerial:material'
14+
'theme.use' => 'material:material'
1515
```
1616

17+
### Google reCAPTCHA
18+
If a site key has been provided in `$this->data['recaptcha.siteKey']`, the
19+
username/password page may require the user prove his/her humanity.
20+
21+
### Branding
22+
Update `/simplesamlphp/config/config.php`:
23+
24+
```
25+
'theme.color-scheme' => ['indigo-purple'|'blue_grey-teal'|'red-teal'|'orange-light_blue']
26+
```
27+
28+
### Analytics
29+
Update `/simplesamlphp/config/config.php`:
30+
31+
```
32+
'analytics.trackingId' => 'UA-some-unique-id-for-your-site'
33+
```
34+
35+
### Announcements
36+
If something is found in `$this->data['announcement']` an alert will be shown to the user filled with the
37+
content of that announcement. HTML is supported.
38+
1739
## Testing theme
1840

19-
1. Login to simplesaml's admin page, `//yourhost/module.php/core/loginuserpass.php`
20-
2. Click **Authentication** tab
21-
3. Click **Test configured authentication sources**
22-
4. Click **auth-choices** (this list is built up from `config/authsources.php`)
41+
[Make](https://www.gnu.org/software/make/), [Docker](https://www.docker.com/products/overview) and
42+
[Docker Compose](https://docs.docker.com/compose/install/) are required.
43+
44+
### Setup
45+
46+
1. Setup `localhost` aliases for `ssp-hub.local`, `ssp-hub-idp1.local`, and `ssp-hub-idp2.local`. This is typically done in `/etc/hosts`.
47+
2. Start test environment, e.g., `make` from the command line.
48+
3. Goto [http://ssp-hub.local](http://ssp-hub.local).
49+
4. Login as hub administrator, e.g., username=admin & password=abc123
50+
51+
### Hub
52+
1. Click **Authentication** tab
53+
2. Click **Test configured authentication sources**
54+
3. Click **hub-discovery**
55+
56+
### Error
57+
1. Click **Configuration** tab
58+
59+
### Logout
60+
1. Click **Authentication** tab
61+
2. Click **Test configured authentication sources**
62+
3. Click **admin**
63+
4. Click **Logout**
64+
65+
### Login
66+
1. Click **Authentication** tab
67+
2. Click **Test configured authentication sources**
68+
3. Click **hub-discovery**
69+
4. Click **Login with idp1** (NOTE: login page should NOT have material design)
70+
5. Login as idp1 administrator, e.g., username=admin & password=a
71+
6. Click **Logout**
72+
7. Click **Authentication** tab
73+
8. Click **Test configured authentication sources**
74+
9. Click **hub-discovery**
75+
10. Click **Login with idp2** (NOTE: login page should have material design)
76+
11. Login as idp2 administrator, e.g., username=admin & password=b
77+
78+
## i18n support
79+
Translations are categorized by page in definition files located in the `dictionaries` directory.
80+
81+
Localization is affected by the configuration setting `language.available`. Only language codes found in this property will be utilized.
82+
For example, if a translation is provided in Afrikaans for this module, the configuration must be adjusted to make 'af' an available
83+
language. If that's not done, the translation function will not utilize the translations even if provided.

composer.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "silinternational/simplesamlphp-module-theme-material",
2+
"name": "silinternational/simplesamlphp-module-material",
33
"description": "Material Design theme for IdP Hub based on SimpleSAMLphp",
44
"type": "simplesamlphp-module",
55
"license": "MIT",
@@ -13,7 +13,7 @@
1313
"require": {
1414
"php": ">=5.4",
1515
"roave/security-advisories": "dev-master",
16-
"simplesamlphp/composer-module-installer": "~1.1",
17-
"silinternational/ssp-utilities": "dev-develop"
16+
"simplesamlphp/composer-module-installer": "^1.1.5",
17+
"simplesamlphp/simplesamlphp": "^1.14.10"
1818
}
1919
}

development/hub/authsources.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?php
2+
$config = [
3+
'admin' => [
4+
'core:AdminPassword',
5+
],
6+
'hub-discovery' => [
7+
'saml:SP',
8+
'entityID' => 'ssp-hub.local',
9+
'discoURL' => null,
10+
],
11+
];

development/hub/cert/ssp-hub.crt

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIDzzCCAregAwIBAgIJANuvVcQPANecMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNV
3+
BAYTAlVTMQswCQYDVQQIDAJOQzEPMA0GA1UEBwwGV2F4aGF3MQwwCgYDVQQKDANT
4+
SUwxDTALBgNVBAsMBEdUSVMxDjAMBgNVBAMMBVN0ZXZlMSQwIgYJKoZIhvcNAQkB
5+
FhVzdGV2ZV9iYWd3ZWxsQHNpbC5vcmcwHhcNMTYxMDE3MTIzMTEyWhcNMjYxMDE3
6+
MTIzMTEyWjB+MQswCQYDVQQGEwJVUzELMAkGA1UECAwCTkMxDzANBgNVBAcMBldh
7+
eGhhdzEMMAoGA1UECgwDU0lMMQ0wCwYDVQQLDARHVElTMQ4wDAYDVQQDDAVTdGV2
8+
ZTEkMCIGCSqGSIb3DQEJARYVc3RldmVfYmFnd2VsbEBzaWwub3JnMIIBIjANBgkq
9+
hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxAimEkw4Teyf/gZelL7OuQYg/JbDIKHP
10+
XJhLPBm/HK6pM5ZZKydVXTdMgMqkl4xK+xZ2CnkozsUiMLhAuWBsX9Dcz1M4SkPR
11+
wk4puFhXzsp7fKIVP43zUhF7p2TmbernrrIQHjg6PuegKmCGyiKUpukcYvf2RXNw
12+
HwJx+Uq0zLP4PgBSrQ2t1eKZ1jQ+noBb1NqOuy969WRYmN4EmjXDuJB9d+b3Gwtb
13+
ZToWgiFxFjd/NN9BFJXZEaLzRj5LAq5bu2vPPDZDarHFMRUzVJ91eafoaz6zpR1i
14+
UGj9zR+y2sUPxD/fJMZ+4AHWA2LOrTBBIuuWbp96yvcJ4WjmlfhcFQIDAQABo1Aw
15+
TjAdBgNVHQ4EFgQUkJFAMJdr2lXsuezS6pDXHnmJspMwHwYDVR0jBBgwFoAUkJFA
16+
MJdr2lXsuezS6pDXHnmJspMwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOC
17+
AQEAOEPbchaUr45L5i+ueookevsABYnltwJZ4rYJbF9VURPcEhB6JxTMZqb4s113
18+
ftHvVYfoAfLYZ9swETaHL+esx41yAebf0kWpQ3f63S5F2FcrTj+HP0XsvW/EDrva
19+
TKM9jnKPNmbXrpq06eaUZfkVL0TAUsxYTKkttTSTiESEzp5wzYyhp7l3kpHhEvGO
20+
lh5suYjnZ2HN0uxscCR6PS47H6TMMEZuG032DWDC016/JniWvERtpf4Yw26V+I9x
21+
evp2E2MPcZne31Pe3sCh4Wpe4cV/SCFqZHlpnH96ncz4F+KvmmhbEx5VPhQSJNFI
22+
WEvI86k+lTNQOqj6YVvGvq95LQ==
23+
-----END CERTIFICATE-----

development/hub/cert/ssp-hub.pem

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDECKYSTDhN7J/+
3+
Bl6Uvs65BiD8lsMgoc9cmEs8Gb8crqkzllkrJ1VdN0yAyqSXjEr7FnYKeSjOxSIw
4+
uEC5YGxf0NzPUzhKQ9HCTim4WFfOynt8ohU/jfNSEXunZOZt6ueushAeODo+56Aq
5+
YIbKIpSm6Rxi9/ZFc3AfAnH5SrTMs/g+AFKtDa3V4pnWND6egFvU2o67L3r1ZFiY
6+
3gSaNcO4kH135vcbC1tlOhaCIXEWN38030EUldkRovNGPksCrlu7a888NkNqscUx
7+
FTNUn3V5p+hrPrOlHWJQaP3NH7LaxQ/EP98kxn7gAdYDYs6tMEEi65Zun3rK9wnh
8+
aOaV+FwVAgMBAAECggEAWgaixcptHRQrEYy5SNQruXrgET/nUogc46go/OvSAYkQ
9+
uVk1kATbRhjMMGVfmx1Znd/dy8eCfxq3LeqgBsIKYyJXFXthYXGt1e7xZ/BiOtxw
10+
Q3doDKzS7oCK6gADdr0nMuohTs+BqDvVKUD1BcVFwTVSzPyVA6YU+piz4Ml3KH46
11+
rQDHtr5pHZFLYvk3NmNlRNTsikMoB7beB8nvQE/HUgAyDNQfP+m8n+cyGK9cTGhb
12+
6gOkpPYeFrHyHH3mqXRf5G87MO7IvgA6iWPRmmy+ATulBjw+L2xKc98TvSAJVuTL
13+
9q+Uxc4VjpJO/hZRsYOidaBM4VufjdpG0bBkaPERIQKBgQD8Xpuy40nMtQy3ieQO
14+
rJ1ssuZ8N1GFW3kwcHyGsU8AmnVdXvFOxTuI+XUc+u5zBPaQ57uxfr6Cy6JMeWL8
15+
JbiTCFN3Dm9UC1mUyHGV6j7mG0ZVYV2T+X4e1toRdd73XW7wumP0EwiKPSHCLDZr
16+
kNXh28DeCFON6gqbIPKMCuMDPQKBgQDG2pMrpSNTFMDzlpKQsY07dkdQ08X8yi55
17+
ZC+FDXWPqu7AAcVv9VAyJg6indZ7sSYvkDppEwPWzoD7DiW3PDMXT+Ynm++yoCi/
18+
XGnIqDhbmjbSZkjSvxrc5KRnW+P0kHcBiUNlcqrMImeFAdpeBpNGwxCaZNinsCk8
19+
L1ewd2NpuQKBgB+afWb+fYxsE8acNvn7dc9Z6/EcQFIx7VA6le2MILeToCTsMc3K
20+
dzUlABx79AZlVbc5vdBxbcwVUiK/hLzMwHtxLHqZTSm6LiKqo0bBydSpD7q7cauJ
21+
L9kO0Mok96IEilMNFF1JUOV22FZnkP0RaydYjKOBaW05JNDeZGFTL7CFAoGAYXcc
22+
j1XfnIcdk8cHi3gbGzv79Hf4INEQOluKlxJjvskvQFkd5qQ8bHgO0FHAoNvRNZrh
23+
pkK1rQGGYocqoUcWW6TD0EI0GD87+Z9YEguxo+RQXovXwcP9bKt8kVSOxH5SdiRL
24+
LlwnrupmBuFDoLZkVViiuKoZLwe/Dkq+FjZOObECgYEA8kj+rlLcw0xI50SKLQtL
25+
Jg++TiUxugYoQt1qVVbNDTL33Ar3nXBss/vWSWInC7LUo7A5/FIA72HwK3vOyD7G
26+
GDY96Z5na22U4TqImhxA42fgz9BMIr8WM5l/W4qubt5jvaZuxLCWsd/Xv47WZkPx
27+
U6cvpCy7lsAaD4U6XYCtadM=
28+
-----END PRIVATE KEY-----
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?php
2+
$metadata['ssp-hub.local'] = [
3+
'host' => 'ssp-hub.local',
4+
'privatekey' => 'ssp-hub.pem',
5+
'certificate' => 'ssp-hub.crt',
6+
'auth' => 'hub-discovery',
7+
];
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<?php
2+
$metadata['http://ssp-hub-idp1.local:8085'] = [
3+
'metadata-set' => 'saml20-idp-remote',
4+
'entityid' => 'http://ssp-hub-idp1.local:8085',
5+
'name' => [
6+
'en' => 'IdP 1'
7+
],
8+
'SingleSignOnService' => 'http://ssp-hub-idp1.local:8085/saml2/idp/SSOService.php',
9+
'SingleLogoutService' => 'http://ssp-hub-idp1.local:8085/saml2/idp/SingleLogoutService.php',
10+
'certData' => 'MIIDzzCCAregAwIBAgIJAPlZYTAQSIbHMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOQzEPMA0GA1UEBwwGV2F4aGF3MQwwCgYDVQQKDANTSUwxDTALBgNVBAsMBEdUSVMxDjAMBgNVBAMMBVN0ZXZlMSQwIgYJKoZIhvcNAQkBFhVzdGV2ZV9iYWd3ZWxsQHNpbC5vcmcwHhcNMTYxMDE3MTIzMTQ1WhcNMjYxMDE3MTIzMTQ1WjB+MQswCQYDVQQGEwJVUzELMAkGA1UECAwCTkMxDzANBgNVBAcMBldheGhhdzEMMAoGA1UECgwDU0lMMQ0wCwYDVQQLDARHVElTMQ4wDAYDVQQDDAVTdGV2ZTEkMCIGCSqGSIb3DQEJARYVc3RldmVfYmFnd2VsbEBzaWwub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArssOaeKbdOQFpN6bBolwSJ/6QFBXA73Sotg60anx9v6aYdUTmi+b7SVtvOmHDgsD5X8pN/6Z11QCZfTYg2nW3ZevGZsj8W/R6C8lRLHzWUr7e7DXKfj8GKZptHlUs68kn0ndNVt9r/+irJe9KBdZ+4kAihykomNdeZg06bvkklxVcvpkOfLTQzEqJAmISPPIeOXes6hXORdqLuRNTuIKarcZ9rstLnpgAs2TE4XDOrSuUg3XFnM05eDpFQpUb0RXWcD16mLCPWw+CPrGoCfoftD5ZGfll+W2wZ7d0kQ4TbCpNyxQH35q65RPVyVNPgSNSsFFkmdcqP9DsFqjJ8YC6wIDAQABo1AwTjAdBgNVHQ4EFgQUD6oyJKOPPhvLQpDCC3027QcuQwUwHwYDVR0jBBgwFoAUD6oyJKOPPhvLQpDCC3027QcuQwUwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAA6tCLHJQGfXGdFerQ3J0wUu8YDSLb0WJqPtGdIuyeiywR5ooJf8G/jjYMPgZArepLQSSi6t8/cjEdkYWejGnjMG323drQ9M1sKMUhOJF4po9R3t7IyvGAL3fSqjXA8JXH5MuGuGtChWxaqhduA0dBJhFAtAXQ61IuIQF7vSFxhTwCvJnaWdWD49sG5OqjCfgIQdY/mw70e45rLnR/bpfoigL67sTJxy+Kx2ogbvMR6lITByOEQFMt7BYpMtXrwvKUM7k9NOo1jREmJacC8PTx//jRhCWwzUj1RsfIri24BuITrawwqMsYl8DZiiwMpjUf9m4NPaf4E7+QRpzo+MCcg==',
11+
];
12+
$metadata['http://ssp-hub-idp2.local:8086'] = [
13+
'metadata-set' => 'saml20-idp-remote',
14+
'entityid' => 'http://ssp-hub-idp2.local:8086',
15+
'name' => [
16+
'en' => 'IdP 2'
17+
],
18+
'SingleSignOnService' => 'http://ssp-hub-idp2.local:8086/saml2/idp/SSOService.php',
19+
'SingleLogoutService' => 'http://ssp-hub-idp2.local:8086/saml2/idp/SingleLogoutService.php',
20+
'certData' => 'MIIDzzCCAregAwIBAgIJALBaUrvz1X5DMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOQzEPMA0GA1UEBwwGV2F4aGF3MQwwCgYDVQQKDANTSUwxDTALBgNVBAsMBEdUSVMxDjAMBgNVBAMMBVN0ZXZlMSQwIgYJKoZIhvcNAQkBFhVzdGV2ZV9iYWd3ZWxsQHNpbC5vcmcwHhcNMTYxMDE4MTQwMDUxWhcNMjYxMDE4MTQwMDUxWjB+MQswCQYDVQQGEwJVUzELMAkGA1UECAwCTkMxDzANBgNVBAcMBldheGhhdzEMMAoGA1UECgwDU0lMMQ0wCwYDVQQLDARHVElTMQ4wDAYDVQQDDAVTdGV2ZTEkMCIGCSqGSIb3DQEJARYVc3RldmVfYmFnd2VsbEBzaWwub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx5mZNwjEnakJho+5etuFyx+2g9rs96iLX/LDC24aBAsdNxTNuIc1jJ7pxBxGrepEND4LkietLNBlOr1q50nq2+ddTrCfmoJB+9BqBOxcm9qWeqWbp8/arUjaxPzK3DfZrxJxIVFjzqFF7gI91y9yvEW/fqLRMhvnH1ns+N1ne59zr1y6h9mmHfBffGr1YXAfyEAuV1ich4AfTfjqhdwFwxhFLLCVnxA0bDbNw/0eGCSiA13N7a013xTurLeJu0AQaZYssMqvc/17UphH4gWDMEZAwy0EfRSBOsDOYCxeNxVajnWX1834VDpBDfpnZj996Gh8tzRQxQgT9/plHKhGiwIDAQABo1AwTjAdBgNVHQ4EFgQUApxlUQg26GrG3eH8lEG3SkqbH/swHwYDVR0jBBgwFoAUApxlUQg26GrG3eH8lEG3SkqbH/swDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEANhbm8WgIqBDlF7DIRVUbq04TEA9nOJG8wdjJYdoKrPX9f/E9slkFuD2StcK99RTcowa8Z2OmW7tksa+onyH611Lq21QXh4aHzQUAm2HbsmPQRZnkByeYoCJ/1tuEho+x+VGanaUICSBVWYiebAQVKHR6miFypRElibNBizm2nqp6Q9B87V8COzyDVngR1DlWDduxYaNOBgvht3Rk9Y2pVHqym42dIfN+pprcsB1PGBkY/BngIuS/aqTENbmoC737vcb06e8uzBsbCpHtqUBjPpL2psQZVJ2Y84JmHafC3B7nFQrjdZBbc9eMHfPo240Rh+pDLwxdxPqRAZdeLaUkCQ==',
21+
];

development/idp1/authsources.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?php
2+
$config = [
3+
'admin' => [
4+
'core:AdminPassword',
5+
],
6+
];

0 commit comments

Comments
 (0)