Security

Token

There is no security token.

Firewall

main Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.app_user_provider
context main
entry_point App\Security\KbinAuthenticator
user_checker App\Security\UserChecker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "two_factor"
  "remember_me"
  "App\Security\KbinAuthenticator"
  "App\Security\FacebookAuthenticator"
  "App\Security\GoogleAuthenticator"
  "App\Security\GithubAuthenticator"
  "App\Security\KeycloakAuthenticator"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#723
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
  -logger: Monolog\Logger {#783 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#706
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#1017 …}
  -sessionKey: "_security_main"
  -logger: Monolog\Logger {#783 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#705 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
  -registered: false
  -trustResolver: Scheb\TwoFactorBundle\Security\Authentication\AuthenticationTrustResolver {#780 …}
  -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#703 …}
}
0.22 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#584
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#595 …}
}
0.00 ms (none)
Scheb\TwoFactorBundle\Security\Http\Firewall\TwoFactorAccessListener {#582
  -twoFactorFirewallConfig: Scheb\TwoFactorBundle\Security\TwoFactor\TwoFactorFirewallConfig {#842 …}
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -twoFactorAccessDecider: Scheb\TwoFactorBundle\Security\Authorization\TwoFactorAccessDecider {#581 …}
}
0.04 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#579
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#937 …}
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\LogoutListener {#786
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -options: [
    "csrf_parameter" => "_csrf_token"
    "csrf_token_id" => "logout"
    "logout_path" => "app_logout"
  ]
  -httpUtils: Symfony\Component\Security\Http\HttpUtils {#841 …}
  -csrfTokenManager: Symfony\Component\Security\Csrf\CsrfTokenManager {#1015 …}
  -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
}
0.00 ms (none)

Authenticators

No authenticators have been recorded. Check previous profiles on your authentication endpoint.

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
4
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
5
"App\Security\Voter\EntryCommentVoter"
6
"App\Security\Voter\EntryVoter"
7
"App\Security\Voter\MagazineVoter"
8
"App\Security\Voter\MessageThreadVoter"
9
"App\Security\Voter\MessageVoter"
10
"App\Security\Voter\NotificationVoter"
11
"App\Security\Voter\OAuth2UserConsentVoter"
12
"App\Security\Voter\PostCommentVoter"
13
"App\Security\Voter\PostVoter"
14
"App\Security\Voter\UserVoter"

Access decision log

# Result Attributes Object
1 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
2 DENIED moderate
App\Entity\Entry {#1846
  +user: Proxies\__CG__\App\Entity\User {#1899 …}
  +magazine: App\Entity\Magazine {#289
    +icon: Proxies\__CG__\App\Entity\Image {#270 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#299
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#261 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
    +entries: Doctrine\ORM\PersistentCollection {#204 …}
    +posts: Doctrine\ORM\PersistentCollection {#162 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
    +bans: Doctrine\ORM\PersistentCollection {#141 …}
    +reports: Doctrine\ORM\PersistentCollection {#127 …}
    +badges: Doctrine\ORM\PersistentCollection {#105 …}
    +logs: Doctrine\ORM\PersistentCollection {#95 …}
    +awards: Doctrine\ORM\PersistentCollection {#84 …}
    +categories: Doctrine\ORM\PersistentCollection {#71 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#293
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#292
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1911 …}
  +slug: "Pinry-the-open-source-tiling-image-board"
  +title: "Pinry, the open-source tiling image board"
  +url: "https://docs.getpinry.com/"
  +body: """
    Pinry is like Pinterest, but open source and you can very easily self-host it. I just installed it a few days ago and it’s really easy to learn; I’ve saved a few images in it that I wanted to keep. It’s very handy, IMO.\n
    \n
    This is the first self-hosted app I’ve installed that I think my family will want to use as well. Now, my SO and I can share pictures of things we want to work on around the house and such, and my kid can share pics of the dogs. Not exactly essential software but fun nonetheless!\n
    \n
    The install via Docker was very easy. Just [follow these steps](https://docs.getpinry.com/install-with-docker/). Just ***don’t*** do what I did at first and follow the readme from [a now out of date github repo](https://github.com/pinry/docker-pinry). That doesn’t work any more.\n
    \n
    The source is here - [github.com/pinry/pinry](https://github.com/pinry/pinry)\n
    \n
    Once you have it up, there’s a bookmarklet visible from the home page that makes it very easy to “post” an image from any other site to your Pinry site in just a couple of clicks. There are Chrome and Firefox extensions instead, if you prefer. But wait - there’s more! There’s also an API included which would allow you to, for instance, post a Pin to your boards from the console via curl.\n
    \n
    All in all, this is good stuff and I thank the team who are working on it very much.
    """
  +type: "link"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 3
  +favouriteCount: 66
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1720459799 {#1861
    date: 2024-07-08 19:29:59.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1949 …}
  +votes: Doctrine\ORM\PersistentCollection {#1894 …}
  +reports: Doctrine\ORM\PersistentCollection {#2402 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1386 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1370 …}
  +badges: Doctrine\ORM\PersistentCollection {#1375 …}
  +children: []
  -id: 28299
  -titleTs: "'board':8 'imag':7 'open':4 'open-sourc':3 'pinri':1 'sourc':5 'tile':6"
  -bodyTs: "'/install-with-docker/).':121 '/pinry/docker-pinry).':145 '/pinry/pinry](https://github.com/pinry/pinry)':158 'ago':24 'allow':219 'also':213 'api':215 'app':57 'around':87 'board':229 'bookmarklet':167 'chrome':198 'click':195 'consol':232 'coupl':193 'curl':234 'date':140 'day':23 'docker':111 'docs.getpinry.com':120 'docs.getpinry.com/install-with-docker/).':119 'doesn':147 'dog':100 'easi':29,114,177 'easili':12 'essenti':103 'exact':102 'extens':201 'famili':65 'firefox':200 'first':53,130 'follow':116,132 'fun':106 'github':141 'github.com':144,157 'github.com/pinry/docker-pinry).':143 'github.com/pinry/pinry](https://github.com/pinry/pinry)':156 'good':240 'handi':48 'home':171 'host':15,56 'hous':89 'imag':37,181 'imo':49 'includ':216 'instal':19,60,109 'instanc':223 'instead':202 'keep':44 'kid':94 'learn':31 'like':3 'make':174 'much':253 'nonetheless':107 'open':6 'page':172 'pic':97 'pictur':79 'pin':226 'pinri':1,188 'pinterest':4 'post':179,224 'prefer':205 'readm':134 'realli':28 'repo':142 'save':34 'self':14,55 'self-host':13,54 'share':78,96 'site':185,189 'softwar':104 'sourc':7,153 'step':118 'stuff':241 'team':246 'thank':244 'thing':81 'think':63 'use':69 've':33,59 'via':110,233 'visibl':168 'wait':207 'want':42,67,83 'well':71 'work':85,149,249 'would':218"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1704863634
  +visibility: "visible             "
  +apId: "https://lemm.ee/post/20527214"
  +editedAt: null
  +createdAt: DateTimeImmutable @1704777234 {#75
    date: 2024-01-09 06:13:54.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
3 DENIED edit
App\Entity\Entry {#1846
  +user: Proxies\__CG__\App\Entity\User {#1899 …}
  +magazine: App\Entity\Magazine {#289
    +icon: Proxies\__CG__\App\Entity\Image {#270 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#299
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#261 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
    +entries: Doctrine\ORM\PersistentCollection {#204 …}
    +posts: Doctrine\ORM\PersistentCollection {#162 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
    +bans: Doctrine\ORM\PersistentCollection {#141 …}
    +reports: Doctrine\ORM\PersistentCollection {#127 …}
    +badges: Doctrine\ORM\PersistentCollection {#105 …}
    +logs: Doctrine\ORM\PersistentCollection {#95 …}
    +awards: Doctrine\ORM\PersistentCollection {#84 …}
    +categories: Doctrine\ORM\PersistentCollection {#71 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#293
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#292
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1911 …}
  +slug: "Pinry-the-open-source-tiling-image-board"
  +title: "Pinry, the open-source tiling image board"
  +url: "https://docs.getpinry.com/"
  +body: """
    Pinry is like Pinterest, but open source and you can very easily self-host it. I just installed it a few days ago and it’s really easy to learn; I’ve saved a few images in it that I wanted to keep. It’s very handy, IMO.\n
    \n
    This is the first self-hosted app I’ve installed that I think my family will want to use as well. Now, my SO and I can share pictures of things we want to work on around the house and such, and my kid can share pics of the dogs. Not exactly essential software but fun nonetheless!\n
    \n
    The install via Docker was very easy. Just [follow these steps](https://docs.getpinry.com/install-with-docker/). Just ***don’t*** do what I did at first and follow the readme from [a now out of date github repo](https://github.com/pinry/docker-pinry). That doesn’t work any more.\n
    \n
    The source is here - [github.com/pinry/pinry](https://github.com/pinry/pinry)\n
    \n
    Once you have it up, there’s a bookmarklet visible from the home page that makes it very easy to “post” an image from any other site to your Pinry site in just a couple of clicks. There are Chrome and Firefox extensions instead, if you prefer. But wait - there’s more! There’s also an API included which would allow you to, for instance, post a Pin to your boards from the console via curl.\n
    \n
    All in all, this is good stuff and I thank the team who are working on it very much.
    """
  +type: "link"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 3
  +favouriteCount: 66
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1720459799 {#1861
    date: 2024-07-08 19:29:59.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1949 …}
  +votes: Doctrine\ORM\PersistentCollection {#1894 …}
  +reports: Doctrine\ORM\PersistentCollection {#2402 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1386 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1370 …}
  +badges: Doctrine\ORM\PersistentCollection {#1375 …}
  +children: []
  -id: 28299
  -titleTs: "'board':8 'imag':7 'open':4 'open-sourc':3 'pinri':1 'sourc':5 'tile':6"
  -bodyTs: "'/install-with-docker/).':121 '/pinry/docker-pinry).':145 '/pinry/pinry](https://github.com/pinry/pinry)':158 'ago':24 'allow':219 'also':213 'api':215 'app':57 'around':87 'board':229 'bookmarklet':167 'chrome':198 'click':195 'consol':232 'coupl':193 'curl':234 'date':140 'day':23 'docker':111 'docs.getpinry.com':120 'docs.getpinry.com/install-with-docker/).':119 'doesn':147 'dog':100 'easi':29,114,177 'easili':12 'essenti':103 'exact':102 'extens':201 'famili':65 'firefox':200 'first':53,130 'follow':116,132 'fun':106 'github':141 'github.com':144,157 'github.com/pinry/docker-pinry).':143 'github.com/pinry/pinry](https://github.com/pinry/pinry)':156 'good':240 'handi':48 'home':171 'host':15,56 'hous':89 'imag':37,181 'imo':49 'includ':216 'instal':19,60,109 'instanc':223 'instead':202 'keep':44 'kid':94 'learn':31 'like':3 'make':174 'much':253 'nonetheless':107 'open':6 'page':172 'pic':97 'pictur':79 'pin':226 'pinri':1,188 'pinterest':4 'post':179,224 'prefer':205 'readm':134 'realli':28 'repo':142 'save':34 'self':14,55 'self-host':13,54 'share':78,96 'site':185,189 'softwar':104 'sourc':7,153 'step':118 'stuff':241 'team':246 'thank':244 'thing':81 'think':63 'use':69 've':33,59 'via':110,233 'visibl':168 'wait':207 'want':42,67,83 'well':71 'work':85,149,249 'would':218"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1704863634
  +visibility: "visible             "
  +apId: "https://lemm.ee/post/20527214"
  +editedAt: null
  +createdAt: DateTimeImmutable @1704777234 {#75
    date: 2024-01-09 06:13:54.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
4 DENIED moderate
App\Entity\Entry {#1846
  +user: Proxies\__CG__\App\Entity\User {#1899 …}
  +magazine: App\Entity\Magazine {#289
    +icon: Proxies\__CG__\App\Entity\Image {#270 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#299
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#261 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
    +entries: Doctrine\ORM\PersistentCollection {#204 …}
    +posts: Doctrine\ORM\PersistentCollection {#162 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
    +bans: Doctrine\ORM\PersistentCollection {#141 …}
    +reports: Doctrine\ORM\PersistentCollection {#127 …}
    +badges: Doctrine\ORM\PersistentCollection {#105 …}
    +logs: Doctrine\ORM\PersistentCollection {#95 …}
    +awards: Doctrine\ORM\PersistentCollection {#84 …}
    +categories: Doctrine\ORM\PersistentCollection {#71 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#293
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#292
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1911 …}
  +slug: "Pinry-the-open-source-tiling-image-board"
  +title: "Pinry, the open-source tiling image board"
  +url: "https://docs.getpinry.com/"
  +body: """
    Pinry is like Pinterest, but open source and you can very easily self-host it. I just installed it a few days ago and it’s really easy to learn; I’ve saved a few images in it that I wanted to keep. It’s very handy, IMO.\n
    \n
    This is the first self-hosted app I’ve installed that I think my family will want to use as well. Now, my SO and I can share pictures of things we want to work on around the house and such, and my kid can share pics of the dogs. Not exactly essential software but fun nonetheless!\n
    \n
    The install via Docker was very easy. Just [follow these steps](https://docs.getpinry.com/install-with-docker/). Just ***don’t*** do what I did at first and follow the readme from [a now out of date github repo](https://github.com/pinry/docker-pinry). That doesn’t work any more.\n
    \n
    The source is here - [github.com/pinry/pinry](https://github.com/pinry/pinry)\n
    \n
    Once you have it up, there’s a bookmarklet visible from the home page that makes it very easy to “post” an image from any other site to your Pinry site in just a couple of clicks. There are Chrome and Firefox extensions instead, if you prefer. But wait - there’s more! There’s also an API included which would allow you to, for instance, post a Pin to your boards from the console via curl.\n
    \n
    All in all, this is good stuff and I thank the team who are working on it very much.
    """
  +type: "link"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 3
  +favouriteCount: 66
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1720459799 {#1861
    date: 2024-07-08 19:29:59.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1949 …}
  +votes: Doctrine\ORM\PersistentCollection {#1894 …}
  +reports: Doctrine\ORM\PersistentCollection {#2402 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1386 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1370 …}
  +badges: Doctrine\ORM\PersistentCollection {#1375 …}
  +children: []
  -id: 28299
  -titleTs: "'board':8 'imag':7 'open':4 'open-sourc':3 'pinri':1 'sourc':5 'tile':6"
  -bodyTs: "'/install-with-docker/).':121 '/pinry/docker-pinry).':145 '/pinry/pinry](https://github.com/pinry/pinry)':158 'ago':24 'allow':219 'also':213 'api':215 'app':57 'around':87 'board':229 'bookmarklet':167 'chrome':198 'click':195 'consol':232 'coupl':193 'curl':234 'date':140 'day':23 'docker':111 'docs.getpinry.com':120 'docs.getpinry.com/install-with-docker/).':119 'doesn':147 'dog':100 'easi':29,114,177 'easili':12 'essenti':103 'exact':102 'extens':201 'famili':65 'firefox':200 'first':53,130 'follow':116,132 'fun':106 'github':141 'github.com':144,157 'github.com/pinry/docker-pinry).':143 'github.com/pinry/pinry](https://github.com/pinry/pinry)':156 'good':240 'handi':48 'home':171 'host':15,56 'hous':89 'imag':37,181 'imo':49 'includ':216 'instal':19,60,109 'instanc':223 'instead':202 'keep':44 'kid':94 'learn':31 'like':3 'make':174 'much':253 'nonetheless':107 'open':6 'page':172 'pic':97 'pictur':79 'pin':226 'pinri':1,188 'pinterest':4 'post':179,224 'prefer':205 'readm':134 'realli':28 'repo':142 'save':34 'self':14,55 'self-host':13,54 'share':78,96 'site':185,189 'softwar':104 'sourc':7,153 'step':118 'stuff':241 'team':246 'thank':244 'thing':81 'think':63 'use':69 've':33,59 'via':110,233 'visibl':168 'wait':207 'want':42,67,83 'well':71 'work':85,149,249 'would':218"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1704863634
  +visibility: "visible             "
  +apId: "https://lemm.ee/post/20527214"
  +editedAt: null
  +createdAt: DateTimeImmutable @1704777234 {#75
    date: 2024-01-09 06:13:54.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
5 DENIED edit
App\Entity\Magazine {#289
  +icon: Proxies\__CG__\App\Entity\Image {#270 …}
  +name: "selfhosted@lemmy.world"
  +title: "selfhosted"
  +description: """
    A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
    \n
    Rules:\n
    \n
    - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
    - No spam posting.\n
    - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
    - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
    - No trolling.\n
    \n
    Resources:\n
    \n
    - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
    - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
    - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
    \n
    > Any issues on the community? Report it using the report flag.\n
    \n
    > Questions? DM the mods!
    """
  +rules: null
  +subscriptionsCount: 1
  +entryCount: 222
  +entryCommentCount: 3916
  +postCount: 0
  +postCommentCount: 0
  +isAdult: false
  +customCss: null
  +lastActive: DateTime @1729582735 {#299
    date: 2024-10-22 09:38:55.0 +02:00
  }
  +markedForDeletionAt: null
  +tags: null
  +moderators: Doctrine\ORM\PersistentCollection {#261 …}
  +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
  +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
  +entries: Doctrine\ORM\PersistentCollection {#204 …}
  +posts: Doctrine\ORM\PersistentCollection {#162 …}
  +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
  +bans: Doctrine\ORM\PersistentCollection {#141 …}
  +reports: Doctrine\ORM\PersistentCollection {#127 …}
  +badges: Doctrine\ORM\PersistentCollection {#105 …}
  +logs: Doctrine\ORM\PersistentCollection {#95 …}
  +awards: Doctrine\ORM\PersistentCollection {#84 …}
  +categories: Doctrine\ORM\PersistentCollection {#71 …}
  -id: 120
  +apId: "selfhosted@lemmy.world"
  +apProfileId: "https://lemmy.world/c/selfhosted"
  +apPublicUrl: "https://lemmy.world/c/selfhosted"
  +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
  +apInboxUrl: "https://lemmy.world/inbox"
  +apDomain: "lemmy.world"
  +apPreferredUsername: "selfhosted"
  +apDiscoverable: true
  +apManuallyApprovesFollowers: null
  +privateKey: null
  +publicKey: null
  +apFetchedAt: DateTime @1703473826 {#293
    date: 2023-12-25 04:10:26.0 +01:00
  }
  +apDeletedAt: null
  +apTimeoutAt: null
  +visibility: "visible             "
  +createdAt: DateTimeImmutable @1703473826 {#292
    date: 2023-12-25 04:10:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS DENIED
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details