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
@@ -37,10 +37,9 @@ Edit `config.php`, and enable the SAML 2.0 IdP:
37
37
'enable.saml20-idp' => true,
38
38
'enable.shib13-idp' => false,
39
39
40
-
## Setting up a SSL signing certificate
41
-
42
-
For test purposes, you can skip this section, and use the certificate included in the SimpleSAMLphp distribution. For a production system, you MUST generate a new certificate for your IdP.
40
+
## Setting up a signing certificate
43
41
42
+
You must generate a certificate for your IdP.
44
43
Here is an example of an openssl command to generate a new key and a self signed certificate to use for signing SAML messages:
@@ -65,8 +64,6 @@ Here is an example of typical user input when creating a certificate request:
65
64
**Note**: SimpleSAMLphp will only work with RSA and not DSA certificates.
66
65
67
66
68
-
69
-
70
67
Authentication source
71
68
---------------------
72
69
@@ -86,7 +83,7 @@ For more authentication modules, see [SimpleSAMLphp Identity Provider QuickStart
86
83
87
84
In this guide, we will use the `exampleauth:UserPass` authentication module. This module does not have any dependencies, and is therefore simple to set up.
88
85
89
-
After you have successfuly tested that everything is working with the simple `exampleauth:UserPass`, you are encouraged to setup SimpleSAMLphp IdP towards your user storage, such as an LDAP directory. (Use the links on the authentication sources above to read more about these setups. `ldap:LDAP` is the most common authentication source).
86
+
After you have successfuly tested that everything is working with the simple `exampleauth:UserPass`, you are encouraged to setup SimpleSAMLphp IdP towards your user storage, such as an LDAP directory. (Use the links on the authentication sources above to read more about these setups. `ldap:LDAP` is the most common authentication source.)
90
87
91
88
92
89
Configuring the authentication source
@@ -100,7 +97,7 @@ On unix, this can be done by running (from the SimpleSAMLphp installation direct
100
97
101
98
The next step is to create an authentication source with this module. An authentication source is an authentication module with a specific configuration. Each authentication source has a name, which is used to refer to this specific configuration in the IdP configuration. Configuration for authentication sources can be found in `config/authsources.php`.
102
99
103
-
In this example we will use the `example-userpass`, and hence that section is what matters and will be used.
100
+
In this example we will use `example-userpass`, and hence that section is what matters and will be used.
104
101
105
102
<?php
106
103
$config = array(
@@ -116,11 +113,7 @@ In this example we will use the `example-userpass`, and hence that section is wh
116
113
);
117
114
?>
118
115
119
-
This configuration creates two users - `student` and `employee`, with the passwords `studentpass` and `employeepass`. The username and password is stored in the array index `student:studentpass` for the `student`-user. The attributes (only `uid` in this example) will be returned by the IdP when the user logs on.
120
-
121
-
122
-
123
-
116
+
This configuration creates two users - `student` and `employee`, with the passwords `studentpass` and `employeepass`. The username and password are stored in the array index `student:studentpass` for the `student`-user. The attributes (only `uid` in this example) will be returned by the IdP when the user logs on.
124
117
125
118
126
119
@@ -133,7 +126,7 @@ If you want to setup a SAML 2.0 IdP for Google Apps, you need to configure two m
133
126
134
127
This is the configuration of the IdP itself. Here is some example config:
135
128
136
-
// The SAML entity ID is the index of this config. Dynamic:X will automatically generate an entity ID (Reccomended)
129
+
// The SAML entity ID is the index of this config. Dynamic:X will automatically generate an entity ID (recommended)
137
130
$metadata['__DYNAMIC:1__'] => array(
138
131
139
132
// The hostname of the server (VHOST) that this SAML entity will use.
@@ -146,17 +139,17 @@ This is the configuration of the IdP itself. Here is some example config:
146
139
'auth' => 'example-userpass',
147
140
)
148
141
149
-
**Note**: You can only have one entry in the file with host equal `__DEFAULT__`, therefore you should replace the existing entry with this one, instead of adding this entry as a new entry in the file.
142
+
**Note**: You can only have one entry in the file with host equal to `__DEFAULT__`, therefore you should replace the existing entry with this one, instead of adding this entry as a new entry in the file.
150
143
151
144
152
145
### Configuring SAML 2.0 SP Remote metadata
153
146
154
-
In the (`saml20-sp-remote.php`) file we will configure an entry for Google Apps for education. There is already an entry for Google Apps in the template, but we will change the domain name:
147
+
In the `saml20-sp-remote.php` file we will configure an entry for G Suite (Google Apps) for Education. There is already an entry for G Suite in the template, but we will change the domain name:
155
148
156
149
/*
157
-
* This example shows an example config that works with Google Apps for education.
150
+
* This example shows an example config that works with G Suite (Google Apps) for education.
158
151
* What is important is that you have an attribute in your IdP that maps to the local part of the email address
159
-
* at Google Apps. E.g. if your google account is foo.com, and you have a user with email john@foo.com, then you
152
+
* at G Suite. E.g. if your google account is foo.com, and you have a user with email john@foo.com, then you
160
153
* must set the simplesaml.nameidattribute to be the name of an attribute that for this user has the value of 'john'.
161
154
*/
162
155
$metadata['google.com'] => array(
@@ -170,14 +163,14 @@ You must also map some attributes received from the authentication module into e
170
163
171
164
For an e-mail address `student@g.feide.no`, the `uid` should be set to `student`.
172
165
173
-
You should modify the `AssertionConsumerService` to include your Google Apps domain name instead of `g.feide.no`.
166
+
You should modify the `AssertionConsumerService` to include your G Suite domain name instead of `g.feide.no`.
You must also configure the IdP initiated Single LogOut endpoint of your server. The RelayState parameter of the endpoint is the URL where the user is redirected after successfull logout. Recommended value:
202
+
You must also configure the IdP initiated Single LogOut endpoint of your server.
203
+
You will find this in your metadata XML in the tag
204
+
`<md:SingleLogoutService>`. It will look something like:
The Sign-out page or change password URL can be static pages on your server.
213
211
214
-
The network mask determines which IP addresses will be asked for SSO login. IP addresses not matching this mask will be presented with the normal Google Apps login page. I think you can leave this field empty to enable authentication for all URLs.
212
+
The network mask determines which IP addresses will be asked for SSO login.
213
+
IP addresses not matching this mask will be presented with the normal G Suite login page.
214
+
It is normally best to leave this field empty to enable authentication for all URLs.
215
215
216
216
**Figure 4. Fill out the remaining fields**
217
217
218
218

219
219
220
-
### Add a user in Google Apps that is known to the IdP
220
+
### Add a user in G Suite that is known to the IdP
221
221
222
-
Before we can test login, a new user must be defined in Google Apps. This user must have a mail field matching the email prefix mapped from the attribute as described above in the metadata section.
222
+
Before we can test login, a new user must be defined in G Suite. This user must have a mail field matching the email prefix mapped from the attribute as described above in the metadata section.
223
223
224
-
## Test to login to Google Apps for education
224
+
## Test to login to G Suite for education
225
225
226
226
Go to the URL of your mail account for this domain, the URL is similar to the following:
227
227
228
228
http://mail.google.com/a/yourgoogleappsdomain.com
229
229
230
-
replacing the last part with your own google apps domain name.
230
+
replacing the last part with your own G Suite domain name.
231
231
232
232
## Security Considerations
233
233
234
-
Make sure that your IdP server runs HTTPS (SSL). The Apache documentation contains information for how to configure HTTPS.
235
-
236
-
Make sure you have replaced the default certificate delivered with the SimpleSAMLphp distribution with your own certificate.
234
+
Make sure that your IdP server runs HTTPS (TLS). The Apache documentation contains information for how to configure HTTPS.
237
235
238
236
Support
239
237
-------
@@ -244,4 +242,3 @@ If you need help to make this work, or want to discuss SimpleSAMLphp with other
244
242
-[List of all available SimpleSAMLphp documentation](https://simplesamlphp.org/docs/)
245
243
-[Join the SimpleSAMLphp user's mailing list](https://simplesamlphp.org/lists)
0 commit comments