This is an automated email from the ASF dual-hosted git repository.

asf-gitbox-commits pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/jena-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 6fe0f656c Updated site from main 
(b9df7072f42373ed2db51723e26afac40edd8e26)
6fe0f656c is described below

commit 6fe0f656c52eddd748bfc8f5f784c4101ba2e2dd
Author: jenkins <[email protected]>
AuthorDate: Sat Aug 29 08:15:22 2026 +0000

    Updated site from main (b9df7072f42373ed2db51723e26afac40edd8e26)
---
 content/documentation/fuseki2/fuseki-security.html | 55 +++++++++++++++++-----
 content/index.json                                 |  2 +-
 content/sitemap.xml                                |  2 +-
 3 files changed, 44 insertions(+), 15 deletions(-)

diff --git a/content/documentation/fuseki2/fuseki-security.html 
b/content/documentation/fuseki2/fuseki-security.html
index c717c4f45..c22215dfb 100644
--- a/content/documentation/fuseki2/fuseki-security.html
+++ b/content/documentation/fuseki2/fuseki-security.html
@@ -187,8 +187,9 @@
   <ul>
     <li><a href="#examples">Examples</a>
       <ul>
-        <li><a href="#the-default-configuration">The default 
configuration.</a></li>
-        <li><a href="#simple-userpassword">Simple user/password</a></li>
+        <li><a href="#the-default-configuration">The default 
configuration</a></li>
+        <li><a href="#simple-userpasswordgroup-setup">Simple 
user/password/group setup</a></li>
+        <li><a href="#example-of-using-a-more-secure-password-setup">Example 
of using a more secure password setup</a></li>
       </ul>
     </li>
   </ul>
@@ -208,7 +209,7 @@ considered as localhost and thus restricted.</p>
 <p>A simple example to enable basic user/password authentication is shown in 
the
 default <code>shiro.ini</code> configuration. The default admin user is 
<code>admin</code> and the
 password is <code>pw</code>. This can be changed directly in the INI file. 
Note that this
-setup is not recommended for production for various reasons  (no TLS, passwords
+setup is not recommended for production for various reasons (no TLS, passwords
 in plain text etc.), consult the <a 
href="https://shiro.apache.org/configuration.html#Configuration-INIConfiguration-Sections";>Shiro
 INI</a>
 documentation for best practices.</p>
@@ -223,6 +224,9 @@ restricting access to the <code>../query</code> SPARQL 
endpoint for all datasets
 could be done with this wildcard pattern:</p>
 <p><code>/**/query = authcBasic,user[admin]</code></p>
 <p>Anonymous SPARQL queries would no longer be possible in this example.</p>
+<p>Note that this <code>authcBasic,user[admin]</code> configuration construct 
allows any authenticated user to access the
+endpoint, regardless of the value of user. See the simple user/password/group 
example below for
+more fine-grained control, using roles.</p>
 <p>Again, please consult the <a href="https://shiro.apache.org/";>Apache 
Shiro</a> website for
 details and more sophisticated setups. The default configuration of Fuseki is
 kept simple but is <em>not</em> recommended for setups where sensitive data is
@@ -231,7 +235,7 @@ provided.</p>
 <p>Contributions of more examples are very welcome.</p>
 <h2 id="examples">Examples</h2>
 <p>The shipped <code>shiro.ini</code> has additional comments.</p>
-<h3 id="the-default-configuration">The default configuration.</h3>
+<h3 id="the-default-configuration">The default configuration</h3>
 <p>This is a minimal configuration for the default configuration.</p>
 <pre><code>[main]
 localhost=org.apache.jena.fuseki.authz.LocalhostFilter
@@ -245,19 +249,43 @@ localhost=org.apache.jena.fuseki.authz.LocalhostFilter
 /$/** = localhost
 /**=anon
 </code></pre>
-<h3 id="simple-userpassword">Simple user/password</h3>
-<p>This extract shows the simple user/password setup.</p>
-<p>It adds a <code>[users]</code> section and changes the <code>/$/**</code> 
line in <code>[urls]</code></p>
+<h3 id="simple-userpasswordgroup-setup">Simple user/password/group setup</h3>
+<p>This extract shows the simple user/password/group setup.</p>
+<p>It adds a <code>[users]</code> section with admin in group admins, and user 
in group users, limits one path to accept both groups, and one for admin only 
in <code>[urls]</code></p>
 <pre><code>[users]
-admin=pw
+admin=password,admins
+user=password,users
 
 [urls]
-## Control functions open to anyone
-/$/status = anon
+# Control function open to users and admins groups
+/$/status = authcBasic,roles[users,admins]
+# Control functions open to anyone
 /$/ping   = anon
-/$/** = authcBasic,user[admin]
+# Other administration API paths only available for users in admins group
+/$/** = authcBasic,roles[admins]
 # Everything else
 /**=anon
+</code></pre>
+<h3 id="example-of-using-a-more-secure-password-setup">Example of using a more 
secure password setup</h3>
+<p>Apache Shiro provides a <a 
href="https://shiro.apache.org/command-line-hasher.html";>command line hasher 
tool</a> to generate password hashes</p>
+<pre><code># Set to the newest Shiro version
+export SHIRO_VERSION=N.N.N
+# download shiro-tools-hasher to local repository
+mvn dependency:get -DgroupId=org.apache.shiro.tools 
-DartifactId=shiro-tools-hasher -Dclassifier=cli -Dversion=$SHIRO_VERSION
+# run shiro tool from local repository (prompts for password)
+java -jar 
~/.m2/repository/org/apache/shiro/tools/shiro-tools-hasher/${SHIRO_VERSION}/shiro-tools-hasher-${SHIRO_VERSION}-cli.jar
 -p
+</code></pre>
+<p>This outputs something like: 
<code>*$shiro2$argon2id$v=19$t=1,m=65536,p=4$Wr/2XKxWeYZt8JE5HCONQw$yev4bLiGzbeIZ8qDWrIY7J2msL2vRO/aYksb4RMeX7Y*</code></p>
+<p>A simple configuration using this password looks like:</p>
+<pre><code>[main]
+passwordMatcher = org.apache.shiro.authc.credential.PasswordMatcher
+iniRealm.credentialsMatcher = $passwordMatcher
+
+[users]
+# user &quot;user&quot; with hashed password
+# quote required for password
+# in group users
+user=&quot;$shiro2$argon2id$v=19$t=1,m=65536,p=4$Wr/2XKxWeYZt8JE5HCONQw$yev4bLiGzbeIZ8qDWrIY7J2msL2vRO/aYksb4RMeX7Y&quot;,users
 </code></pre>
 
   </article>
@@ -268,8 +296,9 @@ admin=pw
   <ul>
     <li><a href="#examples">Examples</a>
       <ul>
-        <li><a href="#the-default-configuration">The default 
configuration.</a></li>
-        <li><a href="#simple-userpassword">Simple user/password</a></li>
+        <li><a href="#the-default-configuration">The default 
configuration</a></li>
+        <li><a href="#simple-userpasswordgroup-setup">Simple 
user/password/group setup</a></li>
+        <li><a href="#example-of-using-a-more-secure-password-setup">Example 
of using a more secure password setup</a></li>
       </ul>
     </li>
   </ul>
diff --git a/content/index.json b/content/index.json
index 8b6e9e9ee..3fd3c605c 100644
--- a/content/index.json
+++ b/content/index.json
@@ -1 +1 @@
-[{"categories":null,"contents":"This page is historical \u0026ldquo;for 
information only\u0026rdquo; - there is no Apache release of Eyeball and the 
code has not been updated for Jena3.\nThe original source code is available. So 
you\u0026rsquo;ve got Eyeball installed and you\u0026rsquo;ve run it on one of 
your files, and Eyeball doesn\u0026rsquo;t like it. You\u0026rsquo;re not sure 
why, or what to do about it. Here\u0026rsquo;s what\u0026rsquo;s going 
on.\nEyeball inspects your model a [...]
\ No newline at end of file
+[{"categories":null,"contents":"This page is historical \u0026ldquo;for 
information only\u0026rdquo; - there is no Apache release of Eyeball and the 
code has not been updated for Jena3.\nThe original source code is available. So 
you\u0026rsquo;ve got Eyeball installed and you\u0026rsquo;ve run it on one of 
your files, and Eyeball doesn\u0026rsquo;t like it. You\u0026rsquo;re not sure 
why, or what to do about it. Here\u0026rsquo;s what\u0026rsquo;s going 
on.\nEyeball inspects your model a [...]
\ No newline at end of file
diff --git a/content/sitemap.xml b/content/sitemap.xml
index 9392fea47..2202e1455 100644
--- a/content/sitemap.xml
+++ b/content/sitemap.xml
@@ -536,7 +536,7 @@
     <lastmod>2026-08-21T13:38:46+01:00</lastmod>
   </url><url>
     
<loc>https://jena.apache.org/documentation/fuseki2/fuseki-security.html</loc>
-    <lastmod>2025-07-15T11:51:08+01:00</lastmod>
+    <lastmod>2026-06-01T21:41:25+02:00</lastmod>
   </url><url>
     
<loc>https://jena.apache.org/documentation/query/service_enhancer.html</loc>
     <lastmod>2026-02-09T22:21:16+01:00</lastmod>

Reply via email to