Make profile publicly accessible


#1

On my inrupt pod I accidentally set my card to private. How do I make it publicly available again?

$ curl https://yova.inrupt.net/profile/#me
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Log in</title>
  <link rel="stylesheet" href="/common/css/bootstrap.min.css">
  <link rel="stylesheet" href="/common/css/solid.css">
</head>
<body>
<div class="container">
  <div class="page-header">
    <div class="pull-right">
      <button class="btn btn-primary" onclick="register()">Register</button>
      <button class="btn btn-success" onclick="login()">Log in</button>
    </div>
    <h1>Log in to access this resource</h1>
  </div>

  <div class="alert alert-danger">
    <p>
      The resource you are trying to access
      (<code>https://yova.inrupt.net/profile/</code>)
      requires you to log in.
    </p>
  </div>

</div>
</div>
<script src="/common/js/solid-auth-client.bundle.js"></script>
<script>
  async function login () {
    const session = await solid.auth.popupLogin()
    if (session) {
      // Make authenticated request to the server to establish a session cookie
      const {status} = await solid.auth.fetch(location)
      if (status === 401) {
        alert(`Invalid login.\n\nDid you set ${session.idp} as your OIDC provider in your profile ${session.webId}?`)
        await solid.auth.logout()
      }
      // Now that we have a cookie, reload to display the authenticated page
      location.reload()
    }
  }

  function register () {
    const registration = new URL('/register', location)
    registration.searchParams.set('returnToUrl', location)
    location.href = registration
  }
</script>
</body>
</html>

#2

I think the best course of action is to send an email to support@inrupt.com and they will fix it for you :slight_smile:


#3

Finally I managed this on my own with the help of the great solid-ide from @jeffz.

The problem was that I deleted the profil/.acl, but couldn’t figure out how to create .acl files with it, why I used the tips from How to change the Sharing settings for a resource? with which I was able to create a .acl file but not a complex one.