Skip to content

201911 #25

merged 104 commits into from Jan 5, 2020
Merged
Changes from 1 commit
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
52dd6e1
Update Jenkinsfile
chubing Apr 19, 2019
67961e2
Update common.bash
chubing Apr 19, 2019
f323fbf
Update Jenkinsfile
chubing Apr 19, 2019
9497c39
Update manualBuild.sh
chubing Apr 19, 2019
7729514
Update Dockerfile
chubing Apr 19, 2019
39aef68
Update Jenkinsfile
chubing Apr 19, 2019
97305d6
Update Jenkinsfile
chubing Apr 19, 2019
a442729
Update manualBuild.sh
chubing Apr 19, 2019
97fc4a9
fixed context for oddball builds. paths will stay the same.
wgthom Apr 20, 2019
2dc9ad8
added gte tag to base
wgthom Apr 20, 2019
22f216b
fixed tagging scheme for image builds
wgthom Apr 20, 2019
d53ec91
fixed typo
wgthom Apr 20, 2019
dc720ba
added version tag
wgthom Apr 20, 2019
acd82d5
added version tag
wgthom Apr 20, 2019
4fbf26a
Update Dockerfile
wgthom Apr 20, 2019
2d75fc1
Create buildVersion.sh
wgthom Apr 20, 2019
41162de
updated 101 build to use VERSION_TAG
wgthom Apr 20, 2019
26b8dde
updated to use VERSION_TAG
wgthom Apr 20, 2019
6076c4d
updated to use VERSION_TAG
wgthom Apr 20, 2019
14cdb62
updated to use VERSION_TAG
wgthom Apr 20, 2019
d06a8ed
added VERSION_TAG to jenkins build
wgthom Apr 20, 2019
05e30ea
Update manualBuild.sh
wgthom Apr 20, 2019
1c99a6c
Update Jenkinsfile
wgthom Apr 20, 2019
dd934df
add VERSION_TAG to rest of build
wgthom Apr 20, 2019
40d0ec6
Update Jenkinsfile
wgthom Apr 20, 2019
9326941
Update buildVersion.sh
wgthom Apr 20, 2019
f0a55ed
Update Jenkinsfile
wgthom Apr 23, 2019
d463a7d
updated USERTOKEN
wgthom Apr 23, 2019
d8d92ac
Update README
dima767 Apr 23, 2019
bcb35c2
Update to tier shib-idp 3.4 immage wip
dima767 Apr 23, 2019
3820f6d
polishing
dima767 Apr 24, 2019
7e1c4f2
Merge pull request #13 from docker/201906-shib-upgrade
wgthom Apr 26, 2019
4957de7
Reworked readme
wgthom Apr 26, 2019
387d0e0
markdown updates
wgthom Apr 26, 2019
3e3c897
minor updates
wgthom Apr 26, 2019
91d1ffa
polish
wgthom Apr 26, 2019
83a5bd3
minor update
wgthom Apr 26, 2019
bd00217
minor update
wgthom Apr 27, 2019
f41a015
ignore spell check
wgthom Apr 27, 2019
38bcfc9
spelling
wgthom Apr 27, 2019
4bd952c
minor update
wgthom Apr 27, 2019
b188372
disable docker HEALTHCHECK
wgthom Apr 27, 2019
9a9ba2d
Merge branch '201906' of https://github.internet2.edu/docker/grouper_…
wgthom Apr 27, 2019
d9c6ad7
ignore .vscode
wgthom Apr 27, 2019
eb28c50
updated pspng config to match new app template
wgthom May 23, 2019
e355a46
initial docs import
wgthom May 29, 2019
2622d85
ignore build
wgthom May 29, 2019
5ec39bf
Merge branch '201906' of https://github.internet2.edu/docker/grouper_…
wgthom May 29, 2019
3cbe7e5
content added to index.rst
wgthom May 29, 2019
7b7bb06
moved ref and basis groups up to 201.1.1
wgthom May 30, 2019
2893834
rabbitmq start script
wgthom May 30, 2019
cb58886
content updates for 201
wgthom May 30, 2019
f1e39d8
gte command
wgthom May 30, 2019
d74239e
Merge pull request #16 from docker/201906-201-updates
wgthom May 30, 2019
03f891f
fixed docker image tag
wgthom May 30, 2019
0a5206b
added ref and basis tags to class groups
wgthom May 30, 2019
698c393
typo fix
wgthom May 30, 2019
82a7cb3
updated content for 2.1.2
wgthom May 31, 2019
6b9c6d9
updated gte for 201.2
wgthom May 31, 2019
58e9a1f
Merge branch '201906-201-updates' of https://github.internet2.edu/doc…
wgthom May 31, 2019
14448df
added gte version folders
wgthom May 31, 2019
ef92a1f
content update for 201.3
wgthom May 31, 2019
9ef07c2
added gte version folder
wgthom May 31, 2019
7bb5970
gte update for 201.3
wgthom May 31, 2019
0535d6c
Merge pull request #17 from docker/201906-201-updates
wgthom May 31, 2019
15eadaa
update headings
wgthom Jun 1, 2019
b2a62bf
content and gte updates for 201.4
wgthom Jun 1, 2019
1b6e586
Merge pull request #18 from docker/201906-201-updates
wgthom Jun 1, 2019
a934c58
content and gte updates for 201.5
wgthom Jun 2, 2019
df4b2b5
Merge pull request #19 from docker/201906-201-updates
wgthom Jun 2, 2019
604dde4
401.1 updates WIP
wgthom Jun 3, 2019
686644c
401 updates
wgthom Jun 6, 2019
8c80828
updates for 401 gte
wgthom Jun 6, 2019
db80bcc
Merge pull request #20 from docker/201906-201-updates
wgthom Jun 6, 2019
5b7d16c
content and gte updates for 401.2
wgthom Jun 7, 2019
6241645
Merge pull request #21 from docker/201906-201-updates
wgthom Jun 7, 2019
95c7d3b
401.3 content and gte updates
wgthom Jun 8, 2019
cd4cb48
401.5.7 updates
wgthom Jun 8, 2019
6cefbad
updates for 401.3
wgthom Jun 8, 2019
2adc619
updates for 401.3
wgthom Jun 8, 2019
59f9271
Merge pull request #22 from docker/201906-201-updates
wgthom Jun 8, 2019
01335e7
gte and content updates for 401.4
wgthom Jun 8, 2019
42680ba
Merge pull request #23 from docker/201906-201-updates
wgthom Jun 8, 2019
6a86074
gte helper scripts
wgthom Jun 9, 2019
fdf8fec
shib idp branding
wgthom Jun 9, 2019
3df83f2
updates for 201.1 and 201.2
wgthom Jun 10, 2019
fa3e0d9
updates for 201.3
wgthom Jun 10, 2019
2538c22
updates for 201.4
wgthom Jun 10, 2019
88437a0
201.5 updates
wgthom Jun 10, 2019
cb1ff40
404.4 update
wgthom Jun 10, 2019
2b188dd
Merge pull request #24 from docker/201906-201-updates
wgthom Jun 10, 2019
caf0648
cleaned up readme a bit
wgthom Jun 10, 2019
a98f774
readme fix
wgthom Jun 10, 2019
dc80644
added gdg folders, groups, and subjects to 101.1.1
wgthom Jun 10, 2019
31e9d88
added gdg folders, ref/basis groups, subjects
wgthom Jun 10, 2019
7eb4a39
grouper version at 2.4.0-a47-u25-w5-p6-20190611
wgthom Jun 12, 2019
a5c7fdb
grouper 2.4a64 101/201 updates
wgthom Jun 13, 2019
9c33823
updates for 401
wgthom Jun 13, 2019
7d70be3
only build setup and end for each module
wgthom Jun 13, 2019
80b9a9f
update for 201911 build
wgthom Oct 5, 2019
aa25e9e
updates for 201911 build
wgthom Oct 5, 2019
7f58304
update to grouper:latest and fix mysql install
wgthom Oct 9, 2019
2741016
enable config in ui for any IP address
wgthom Oct 29, 2019
9314d1f
grouper build for temple
wgthom Nov 1, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Prev Previous commit
Next Next commit
gte and content updates for 401.4
wgthom committed Jun 8, 2019
commit 01335e7aac7b2ad26eed3bb1bc439024142c4f30
2 changes: 1 addition & 1 deletion docs/401/401.3.rst
@@ -316,4 +316,4 @@ The End

.. _Grouper Deployment Guide: https://spaces.at.internet2.edu/display/Grouper/Grouper+Deployment+Guide+Work+-TIER+Program
.. _Grouper ESB Connector: https://spaces.at.internet2.edu/display/Grouper/Grouper+ESB+Connector
.. _COmanage: https://www.internet2.edu/products-services/trust-identity/comanage/
.. _COmanage: https://www.internet2.edu/products-services/trust-identity/comanage/
36 changes: 18 additions & 18 deletions docs/401/401.4-example-solution.rst
@@ -3,24 +3,24 @@
401.4 Untangling Legacy Access Policies - Example Solution
==========================================================

The follwing solution uses techniques demonstrated in the other 401 series
labs in order to create an independent policy for the LMS service.
The following solution uses techniques demonstrated in the 201 and 401 labs.
The general solution is to create an independent access policy for the LMS
service based on the legacy community members LDAP group and a new visiting
scholars reference group.

#. Use Grouper Loader to import existing LDAP cohort group into a "community
members" reference group-- `ref:legacy:community_members`
#. Add loader job to populate `communtiy_members` from
`cn=community_members,ou=groups,dc=example,dc=edu`.
#. Run loader job to import members into reference group.
#. Create a Grouper service folder for the LMS with a policy for LMS
authorization: `app:lms:lms_authorize|allow|deny`
#. Add the "institutional people" reference group, `ref:community_members`,
to the allow policy for the LMS, `app:lms:lms_allow`.
#. Create `app:lms:ref:visiting_scholars`. Import the NetIDs for the visiting
scholors into this reference group.
#. Add `visiting_scholars` to `lms_allow`.
#. Provision this policy to a new group in the LDAP DIT that the LMS group can
use to allow access to the service.
#. Create a new application folder `lms`
#. Create a new access policy group `lms_access`
#. Configure PSPNG attributes to `provision_to` `groupOfNames` on `lms_access`
#. Create a new institutional reference `ref:legacy:community_members`.
#. Configure `community_members` with an LDAP loader job.
#. Add `community_members` to `lms_access_allow`
#. Create an application-specific reference group for the visiting scholars
`app:lms:service:ref:visiting_scholars`
#. Import the NetID list into `visiting_scholars`
#. Add `visiting_scholars` to `lms_access_allow`
#. File a ticket with Vicky to switch the LMS LDAP access control group
#. Head to your happy place! :)

Congrats! You are now a certified Grouper Guru associate level 1!
And remember nothing gets'em going like chum!
.. figure:: ../figures/401-lms-solution.png

Congrats! You are now a certified Grouper Guru associate level 1!
143 changes: 105 additions & 38 deletions docs/401/401.4.rst
@@ -14,54 +14,121 @@ Lab Components
--------------

* Grouper
* OpenLDAP
* `Grouper Deployment Guide`_


--------
Overview
--------

A baseline of core services services are enabled by default for a broad range of
community cohorts. The current approach uses a hodge-podge of scripts and
manual intervention to establish a group of "institutional people" that are
granted access to a wide range of services. The system can best be described as
fragile, brittle, and difficult, if not impossible, to evolve and maintain. In
other words-- state of the industry.
A baseline of core services services are enabled by default for a broad range
of community cohorts. The current approach uses a hodge-podge of scripts and
manual intervention to establish a group of "community members" that are
granted access to a wide range of services. The system can best be described
as fragile, brittle, and difficult, if not impossible, to evolve and maintain.
In other words-- state-of-the-industry!

Last year your CIO came back from Internet2 Summit and declared that your
institution is going to deploy TIER. You've just managed to get the Grouper
software up and running, when the head of your LMS group, Vicky, bursts into your
office space and tells you that there are 50 visiting scholars showing up on
campus tomorrow, and they all need access to the LMS for a campus-wide lecture
series.
Last year your CIO came back from Internet2 Summit, and declared that your
institution was going to deploy the InCommon Trusted Access Platform. You have
just managed to get Grouper up and running, when the head of your Learning
Management System group, Vicky, bursts into your office and tells you that
there are 50 visiting scholars showing up on campus tomorrow, and they all need
access to the LMS for a campus-wide lecture series.

Your co-worker had mentioned this to you before she left for her month long
vacation. She had told you she had taken care of creating the guest accounts,
and not to worry. You just need to grant access to the LMS when the time comes.
No problem.

But suddenly, you realize that access is controlled via the "institutional
people" group in your Enterprise Directory Information Tree! If you add the
scholars to that group, they'll have access to everything on campus!
vacation. She had told you she had taken care of creating the sponsored
accounts in `COmanage`_, and not to worry. You just need to grant access to the
LMS when the time comes. No problem.

Before panic sets in, you remember your Grouper training. You'll need a little
help from Vicky, but with Grouper, you've got this covered. "OK, Vicky," you say
in a calm, steady voice. "Here's what I'm going to need your team to do ..."
But suddenly, you realize that access to the LMS is controlled via the dreaded
"community members" group in your Enterprise LDAP! If you add the scholars
to that group, they'll have access to everything on campus!

----------------
Exercise 401.4.1
----------------
Before panic sets in, you remember your Grouper training. You will need a
little help from Vicky, but with Grouper, you've got this covered. "OK,
Vicky," you say in a calm, steady voice. "Here's what I'm going to need your
team to do ..."

*Untangling Policies from Cohorts*
--------------------------------------------------------
Exercise 401.4.1 Untangling policies from legacy cohorts
--------------------------------------------------------

The goal of this exercise is to grant access to the LMS for the 50 visiting
scholar guest accounts *without* granting additional access to those accounts.
Since access control does not happen in a vacuum, you'll need some minimal
assistance from the LMS team. Vicky's team can configure the LMS to point to a
new group in the LDAP DIT, but that's all the help you'll get.

The basic issue is that the legacy access control mechanisms are based on a
cohort of loosely defined "institutional people". All your institution's services
are using this cohort directly to determine who is supposed to have access.

You'll need to use your new Grouper skills to resolve this issue.


scholar sponsored accounts *without* granting any additional unnecessary
access. Since access control does not happen in a vacuum, you'll need some
minimal assistance from the LMS team. Vicky's team can configure the LMS to
point to a new authorization group in LDAP, but that's all the help you'll get.

The basic issue is that the legacy access control mechanisms are based on a
cohort of loosely defined "institutional people". All your institution's
services are using this cohort directly to determine who is supposed to have
access, so any changes or additions have far reaching impact.

The dreaded "community members" group that the LMS currenty uses for access
control is in LDAP at "cn=community_members,ou=groups,dc=internet2,dc=edu". You
can log in to https://localhost:8443/phpldapadmin/ to review the group.

Here are the 50 visiting scholar NetIDs:

.. code-block::
adoe852
agonazles804
alopez751
alopez802
anielson378
anielson51
athompson526
athompson713
athompson866
awalters247
awhite131
awhite631
bdavis150
bdavis999
bgasper2
bgonazles239
bgrady115
blee298
cjohnson933
clangenberg923
clee357
cthompson231
cthompson287
cwalters316
cwalters536
cwilliams606
danderson959
dbrown402
ddavis762
ddoe822
dwhite663
dwilliams299
eanderson919
escott173
gbutler381
ggrady118
ggrady649
glangenberg234
gwalters810
gwhite647
hpeterson10
jgrady499
jlee308
jnielson505
jsmith466
jvales111
jvales645
jwalters24
kdavis686
kjohnson872
You will need to use your new Grouper skills to resolve this issue. Your next
step is up to you!

If you get stuck or bored, check out the `401.4 example solution`_!

.. _Grouper Deployment Guide: https://spaces.at.internet2.edu/display/Grouper/Grouper+Deployment+Guide+Work+-TIER+Program
.. _COmanage: https://www.internet2.edu/products-services/trust-identity/comanage/
.. _401.4 example solution: 401.4-example-solution.html
1 change: 0 additions & 1 deletion docs/401/index.rst
@@ -17,6 +17,5 @@ experience.
401.3
401.4
401.4-example-solution
appendix

.. _InCommon Trusted Access Platform: https://www.incommon.org/tap/
Binary file added docs/figures/401-lms-solution.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 2 additions & 1 deletion ex401/ex401.4.1/container_files/seed-data/bootstrap.gsh
@@ -1,2 +1,3 @@
gs = GrouperSession.startRootSession();

delStem("401.3.end")
addRootStem("401.4.1", "401.4.1")