<div dir="ltr">Hi Paul,<div><br></div><div>try running 





<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:normal;font-family:"Andale Mono";color:rgb(255,141,0);background-color:rgba(0,0,0,0.9)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">INSERT IGNORE INTO user_project_rel SELECT u.ID, p.ProjectID FROM users u JOIN Project p;</span></p><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><br></div><div>If that doesn't work, could you send us your project list ? (SELECT * FROM Project)</div><div dir="ltr">Rida Abou-Haidar<br>Software Developer<br>Montreal Neurological Institute<br>McGill University<br><div><a href="mailto:rida.abou-haidar@mcin.ca" target="_blank">rida.abou-haidar@mcin.ca</a></div></div></div></div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jul 27, 2020 at 4:33 PM Paul Novak <<a href="mailto:pnovak2@uoregon.edu">pnovak2@uoregon.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">





<div lang="EN-US">
<div class="gmail-m_-300815707830881046WordSection1">
<p class="MsoNormal">In the user_accounts module only one project is listed (it is some project named “loris” that I don’t recall creating) and it is selected already. No other projects are listed, so I think that is another bug. How can a user change project
 associations if the list of projects is incomplete? See attached screenshot.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">How can I give this user access to ProjectID 2? I couldn’t find documentation on how to modify user_project_rel table, and I do not know what SQL command exactly needs to be issued. I don’t know if that is the only modification that needs
 to be done.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Paul<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(181,196,223);padding:3pt 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12pt;color:black">From: </span></b><span style="font-size:12pt;color:black">Dave MacFarlane <<a href="mailto:dave.macfarlane@mcin.ca" target="_blank">dave.macfarlane@mcin.ca</a>><br>
<b>Date: </b>Monday, July 27, 2020 at 11:00 AM<br>
<b>To: </b>Paul Novak <<a href="mailto:pnovak2@uoregon.edu" target="_blank">pnovak2@uoregon.edu</a>><br>
<b>Cc: </b>Cecile Madjar <<a href="mailto:cecile.madjar@mcin.ca" target="_blank">cecile.madjar@mcin.ca</a>>, "<a href="mailto:loris-dev@bic.mni.mcgill.ca" target="_blank">loris-dev@bic.mni.mcgill.ca</a>" <<a href="mailto:loris-dev@bic.mni.mcgill.ca" target="_blank">loris-dev@bic.mni.mcgill.ca</a>><br>
<b>Subject: </b>Re: [Loris-dev] 403 Unauthorized when trying to use imaging_browser<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<div>
<p class="MsoNormal">That seems to be the cause of the problem, your user isn't affiliated with Project 2. Cecile's first hunch was right, but it's using the candidate's registration project, not the session. I think there's 2 issues:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">1. I don't know why it's checking the candidate's registrationProjectID and not the session's projectID. This is a bug that we should fix in LORIS.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2. Your admin user should probably have access to ProjectID 2. You can adjust the project affiliations either in the user_accounts module or in the<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">backend, if they are indeed supposed to be affiliated with that project.<u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal">On Mon, Jul 27, 2020 at 1:44 PM Paul Novak <<a href="mailto:pnovak2@uoregon.edu" target="_blank">pnovak2@uoregon.edu</a>> wrote:<u></u><u></u></p>
</div>
<blockquote style="border-top:none;border-right:none;border-bottom:none;border-left:1pt solid rgb(204,204,204);padding:0in 0in 0in 6pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<p class="MsoNormal">The result of that query is:<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">SELECT c.RegistrationProjectID from candidate c JOIN session s USING (CandID) WHERE s.ID=2;<u></u><u></u></p>
<p class="MsoNormal">+-----------------------+<u></u><u></u></p>
<p class="MsoNormal">| RegistrationProjectID |<u></u><u></u></p>
<p class="MsoNormal">+-----------------------+<u></u><u></u></p>
<p class="MsoNormal">|                     2 |<u></u><u></u></p>
<p class="MsoNormal">+-----------------------+<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Paul<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<div style="border-right:none currentcolor;border-bottom:none currentcolor;border-left:none currentcolor;border-top:1pt solid currentcolor;padding:3pt 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12pt;color:black">From:
</span></b><span style="font-size:12pt;color:black">Dave MacFarlane <<a href="mailto:dave.macfarlane@mcin.ca" target="_blank">dave.macfarlane@mcin.ca</a>><br>
<b>Date: </b>Monday, July 27, 2020 at 10:41 AM<br>
<b>To: </b>Paul Novak <<a href="mailto:pnovak2@uoregon.edu" target="_blank">pnovak2@uoregon.edu</a>><br>
<b>Cc: </b>Cecile Madjar <<a href="mailto:cecile.madjar@mcin.ca" target="_blank">cecile.madjar@mcin.ca</a>>, "<a href="mailto:loris-dev@bic.mni.mcgill.ca" target="_blank">loris-dev@bic.mni.mcgill.ca</a>" <<a href="mailto:loris-dev@bic.mni.mcgill.ca" target="_blank">loris-dev@bic.mni.mcgill.ca</a>><br>
<b>Subject: </b>Re: [Loris-dev] 403 Unauthorized when trying to use imaging_browser</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<div>
<p class="MsoNormal">I was trying to determine which code path the hasAccess function is going down to trace through the code manually, but I was mistaken about the project. The access function seems
 to use the candidate's registration project, not the session's project.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Based on it being 'Human' and the user having 'imaging_browser_view_allsites' it's still possible for the  $user->hasProject check (which is enforced regardless of the<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">site permission) to fail.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Can you check the candidate's RegistrationProjectID? SELECT c.RegistrationProjectID from candidate c JOIN session s USING (CandID) WHERE s.ID=2<u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"> <u></u><u></u></p>
<div>
<div>
<p class="MsoNormal">On Mon, Jul 27, 2020 at 1:21 PM Paul Novak <<a href="mailto:pnovak2@uoregon.edu" target="_blank">pnovak2@uoregon.edu</a>> wrote:<u></u><u></u></p>
</div>
<blockquote style="border-top:none currentcolor;border-right:none currentcolor;border-bottom:none currentcolor;border-left:1pt solid rgb(204,204,204);padding:0in 0in 0in 6pt;margin:5pt 0in 5pt 4.8pt">
<div>
<div>
<p class="MsoNormal">I am not able to edit as suggested.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">For the other checks:<u></u><u></u></p>
<ol start="1" type="1">
<li class="MsoNormal">
Human<u></u><u></u></li><li class="MsoNormal">
ProjectID = 1, CenterID = 2<u></u><u></u></li><li class="MsoNormal">
The user with userID 1 has permissions [1,20] [22,25], [28,65]. Put another way, the user has all permissions from 1 to 65, except the user does not have permissions with IDs 21, 26 or 27. The missing permissions appear to not exist (from permissions table).<u></u><u></u></li><li class="MsoNormal">
User with userID 1 has CenterID 1 and 2, from table user_psc_rel.<u></u><u></u></li><li class="MsoNormal">
Yes.<u></u><u></u></li></ol>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">I am guessing that you are trying to determine if the user has the site that the session is associated with, which it appears to be, and if the user has permissions to use imaging_browser,
 which I think it does. Following the module documentation: <a href="https://urldefense.com/v3/__https:/github.com/aces/Loris/tree/main/modules/imaging_browser__;!!C5qS4YX3!VrcBLT8Jq9zDw4cTtp1WcF0RDpwQZKmf65G7SB88Qh-kK54-9JUASHCPaVzoY5LroS4$" target="_blank">
https://github.com/aces/Loris/tree/main/modules/imaging_browser</a>, this user has permissions:<u></u><u></u></p>
<p>imaging_browser_view_allsites (View all-sites Imaging Browser pages<br>
imaging_browser_view_site (View own-site Imaging Browser pages)<br>
imaging_browser_phantom_allsites (Can access only phantom data from all sites in Imaging Browser<br>
imaging_browser_phantom_ownsite (Can access only phantom data from own site in Imaging Browser<br>
imaging_browser_qc (Edit imaging browser QC status)<u></u><u></u></p>
<p class="MsoNormal">Paul<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<div style="border-right:none currentcolor;border-bottom:none currentcolor;border-left:none currentcolor;border-top:1pt solid currentcolor;padding:3pt 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12pt;color:black">From:
</span></b><span style="font-size:12pt;color:black">Dave MacFarlane <<a href="mailto:dave.macfarlane@mcin.ca" target="_blank">dave.macfarlane@mcin.ca</a>><br>
<b>Date: </b>Monday, July 27, 2020 at 9:58 AM<br>
<b>To: </b>Paul Novak <<a href="mailto:pnovak2@uoregon.edu" target="_blank">pnovak2@uoregon.edu</a>><br>
<b>Cc: </b>Cecile Madjar <<a href="mailto:cecile.madjar@mcin.ca" target="_blank">cecile.madjar@mcin.ca</a>>, "<a href="mailto:loris-dev@bic.mni.mcgill.ca" target="_blank">loris-dev@bic.mni.mcgill.ca</a>" <<a href="mailto:loris-dev@bic.mni.mcgill.ca" target="_blank">loris-dev@bic.mni.mcgill.ca</a>><br>
<b>Subject: </b>Re: [Loris-dev] 403 Unauthorized when trying to use imaging_browser</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<div>
<p class="MsoNormal">Hi Paul,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">The permissions for the imaging_browser are fairly complex because of the interactions between all site/own site/project/entity type permissions.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">If it's not production and you can modify the code, it might help to add error_log statements (which will print to your apache error log) in the function _hasAccess<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">in modules/imaging_browser/php/viewsession.class.inc in order to narrow down exactly part of the criteria is causing it to return false.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">If you can't add debug statements, can you check:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">1. Is the candidate a Human or Scanner entity type? (The query select Entity_type FROM session JOIN candidate USING (CandID) Where session.ID=2 will tell you)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">2. What is the project and site of the session? (SELECT ProjectID, CenterID FROM session WHERE ID=2)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">3. What permissions does the user have in user_perm_rel? (The ones required will vary based on the results of the above queries)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">4. What sites does the user have in user_psc_rel?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">5. Are you sure that the user ID of the user is "1" (since that was the only user_project_rel permission result in your query..)?<u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"> <u></u><u></u></p>
<div>
<div>
<p class="MsoNormal">On Mon, Jul 27, 2020 at 12:19 PM Paul Novak <<a href="mailto:pnovak2@uoregon.edu" target="_blank">pnovak2@uoregon.edu</a>> wrote:<u></u><u></u></p>
</div>
<blockquote style="border-top:none currentcolor;border-right:none currentcolor;border-bottom:none currentcolor;border-left:1pt solid rgb(204,204,204);padding:0in 0in 0in 6pt;margin:5pt 0in 5pt 4.8pt">
<div>
<div>
<p class="MsoNormal">I don’t understand what is meant by recent. This is a new installation using a released version.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">There is a single project and a single user.  The entire contents of user_project_rel are:<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">select * from user_project_rel;<u></u><u></u></p>
<p class="MsoNormal">+--------+-----------+<u></u><u></u></p>
<p class="MsoNormal">| UserID | ProjectID |<u></u><u></u></p>
<p class="MsoNormal">+--------+-----------+<u></u><u></u></p>
<p class="MsoNormal">|      1 |         1 |<u></u><u></u></p>
<p class="MsoNormal">+--------+-----------+<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Paul<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<div style="border-right:none currentcolor;border-bottom:none currentcolor;border-left:none currentcolor;border-top:1pt solid currentcolor;padding:3pt 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12pt;color:black">From:
</span></b><span style="font-size:12pt;color:black">Cecile Madjar <<a href="mailto:cecile.madjar@mcin.ca" target="_blank">cecile.madjar@mcin.ca</a>><br>
<b>Date: </b>Monday, July 27, 2020 at 9:01 AM<br>
<b>To: </b>Paul Novak <<a href="mailto:pnovak2@uoregon.edu" target="_blank">pnovak2@uoregon.edu</a>><br>
<b>Cc: </b>"<a href="mailto:loris-dev@bic.mni.mcgill.ca" target="_blank">loris-dev@bic.mni.mcgill.ca</a>" <<a href="mailto:loris-dev@bic.mni.mcgill.ca" target="_blank">loris-dev@bic.mni.mcgill.ca</a>><br>
<b>Subject: </b>Re: [Loris-dev] 403 Unauthorized when trying to use imaging_browser</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Hello Paul,<u></u><u></u></p>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">does your admin user have access to all projects in the table user_project_rel? <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">In order for the user to see that page, it needs to have access to the project of the sessions. We recently added the project layer to LORIS so my guess would be that your admin
 user does not have the project of that session listed in his associated project in user_project_rel.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Hope this helps,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Cécile<u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"> <u></u><u></u></p>
<div>
<div>
<p class="MsoNormal">On Mon, Jul 27, 2020 at 11:45 AM Paul Novak <<a href="mailto:pnovak2@uoregon.edu" target="_blank">pnovak2@uoregon.edu</a>> wrote:<u></u><u></u></p>
</div>
<blockquote style="border-top:none currentcolor;border-right:none currentcolor;border-bottom:none currentcolor;border-left:1pt solid rgb(204,204,204);padding:0in 0in 0in 6pt;margin:5pt 0in 5pt 4.8pt">
<div>
<div>
<p class="MsoNormal"><span style="color:black">Hello,</span><u></u><u></u></p>
<p class="MsoNormal"><span style="color:black"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="color:black">After uploading images using the imaging_uploader module, I am trying to view the images through the imaging browser (imaging_browser/viewSession/?sessionID=2).
 However, that page always returns 403 Unauthorized and displays a standard “You do not have access to this page” page. I am currently logged in as an admin user to LORIS and the list of permissions have all the permissions for imaging_browser module selected
 or enabled. The loris-error.log in /var/log/apache2/ doesn’t have any errors at the time I am trying to access this module. I am using LORIS 23.0.1.</span><u></u><u></u></p>
<p class="MsoNormal"><span style="color:black"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="color:black">How can I view the images? What can I do to further troubleshoot this problem?</span><u></u><u></u></p>
<p class="MsoNormal"><span style="color:black"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="color:black">Paul</span><u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
</div>
<p class="MsoNormal">_______________________________________________<br>
Loris-dev mailing list<br>
<a href="mailto:Loris-dev@bic.mni.mcgill.ca" target="_blank">Loris-dev@bic.mni.mcgill.ca</a><br>
<a href="https://urldefense.com/v3/__https:/mailman.bic.mni.mcgill.ca/mailman/listinfo/loris-dev__;!!C5qS4YX3!RaUzKf_Ejz14svGcpy9OTpb33FxMa3Q_EYqoakIc0ZWCERS9DVPy5AAlZpVsQM0YeUQ$" target="_blank">https://mailman.bic.mni.mcgill.ca/mailman/listinfo/loris-dev</a><u></u><u></u></p>
</blockquote>
</div>
</div>
</div>
<p class="MsoNormal">_______________________________________________<br>
Loris-dev mailing list<br>
<a href="mailto:Loris-dev@bic.mni.mcgill.ca" target="_blank">Loris-dev@bic.mni.mcgill.ca</a><br>
<a href="https://urldefense.com/v3/__https:/mailman.bic.mni.mcgill.ca/mailman/listinfo/loris-dev__;!!C5qS4YX3!VlUQsuvElQeJl7SvZ5k1KYoB45nhq6LbALY-SXFa_kZsVkt1i7sRv0_Ougf72vFJDjs$" target="_blank">https://mailman.bic.mni.mcgill.ca/mailman/listinfo/loris-dev</a><u></u><u></u></p>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>

_______________________________________________<br>
Loris-dev mailing list<br>
<a href="mailto:Loris-dev@bic.mni.mcgill.ca" target="_blank">Loris-dev@bic.mni.mcgill.ca</a><br>
<a href="https://mailman.bic.mni.mcgill.ca/mailman/listinfo/loris-dev" rel="noreferrer" target="_blank">https://mailman.bic.mni.mcgill.ca/mailman/listinfo/loris-dev</a><br>
</blockquote></div>