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 …}
}
42.40 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.05 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\EntryComment {#1365
  +user: Proxies\__CG__\App\Entity\User {#1371 …}
  +entry: App\Entity\Entry {#1832 …}
  +magazine: App\Entity\Magazine {#311
    +icon: Proxies\__CG__\App\Entity\Image {#292 …}
    +name: "memes@lemmy.ml"
    +title: "memes"
    +description: """
      #### Rules:\n
      \n
      1. Be civil and nice.\n
      2. Try not to excessively repost, as a rule of thumb, wait at least 2 months to do it if you *have* to.
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 5926
    +entryCommentCount: 65073
    +postCount: 25
    +postCommentCount: 152
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729583092 {#319
      date: 2024-10-22 09:44:52.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#283 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#279 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#268 …}
    +entries: Doctrine\ORM\PersistentCollection {#226 …}
    +posts: Doctrine\ORM\PersistentCollection {#184 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#246 …}
    +bans: Doctrine\ORM\PersistentCollection {#163 …}
    +reports: Doctrine\ORM\PersistentCollection {#149 …}
    +badges: Doctrine\ORM\PersistentCollection {#127 …}
    +logs: Doctrine\ORM\PersistentCollection {#117 …}
    +awards: Doctrine\ORM\PersistentCollection {#106 …}
    +categories: Doctrine\ORM\PersistentCollection {#93 …}
    -id: 38
    +apId: "memes@lemmy.ml"
    +apProfileId: "https://lemmy.ml/c/memes"
    +apPublicUrl: "https://lemmy.ml/c/memes"
    +apFollowersUrl: "https://lemmy.ml/c/memes/followers"
    +apInboxUrl: "https://lemmy.ml/inbox"
    +apDomain: "lemmy.ml"
    +apPreferredUsername: "memes"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728572889 {#320
      date: 2024-10-10 17:08:09.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1696428223 {#314
      date: 2023-10-04 16:03:43.0 +02:00
    }
  }
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#2353 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#2451 …}
  +body: """
    First of all, this comment chain is about being able to keep tabs on someone without storing information locally on the user’s computer. If we create a new form of session ID equivalent that doesn’t store information locally, I have achieved the goal to the problem that was raised. The issue wasn’t whether or not we needed concept of something equivalent to a session ID.\n
    \n
    > […] will need to include that session ID passed back to the server.\n
    \n
    Yes, that’s exactly what we used to do in the '00s. Look at softwares like osCommerce v1 and 2. We literally put money behind this method of tracking.\n
    \n
    > And this talk about IP addresses is complete nonsense because of Proxies and NAT and a ton of other reasons. You can attempt to use it in combination with a session ID, but you certainly cannot use that alone.\n
    \n
    Yes, you can use that alone. Without session ID. The other commenter already addressed why this isn’t true. Also context matters. Pretty close is a good enough of a session ID replacement for purpose of tracking whether or not they consented to the cookie policy. If I did a concat of IP, and various fingerprints (and put a hash on it to make it shorter), I can easily reach one in trillion probabilities. I wouldn’t build a secure military website on it because it’s easily forgeable, but it’s more than enough for cookie policy popup.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1697340636 {#1602
    date: 2023-10-15 05:30:36.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Albin9326@kerala.party"
    "@pauldfaria@infosec.pub"
    "@uphillbothways@kbin.social"
    "@SpaceNoodle@lemmy.world"
    "@Grumpy@sh.itjust.works"
    "@jaybone@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#2476 …}
  +nested: Doctrine\ORM\PersistentCollection {#2355 …}
  +votes: Doctrine\ORM\PersistentCollection {#2428 …}
  +reports: Doctrine\ORM\PersistentCollection {#2436 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2473 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1359 …}
  -id: 49954
  -bodyTs: "'00s':92 '2':100 'abl':10 'achiev':43 'address':115,162 'alon':148,154 'alreadi':161 'also':168 'attempt':132 'back':77 'behind':105 'build':226 'cannot':145 'certain':144 'chain':6 'close':172 'combin':137 'comment':5,160 'complet':117 'comput':24 'concat':199 'concept':61 'consent':190 'context':169 'cooki':193,245 'creat':27 'doesn':36 'easili':217,236 'enough':176,243 'equival':34,64 'exact':84 'fingerprint':204 'first':1 'forgeabl':237 'form':30 'goal':45 'good':175 'hash':208 'id':33,68,75,141,157,180 'includ':72 'inform':18,39 'ip':114,201 'isn':165 'issu':53 'keep':12 'like':96 'liter':102 'local':19,40 'look':93 'make':212 'matter':170 'method':107 'militari':229 'money':104 'nat':123 'need':60,70 'new':29 'nonsens':118 'one':219 'oscommerc':97 'pass':76 'polici':194,246 'popup':247 'pretti':171 'probabl':222 'problem':48 'proxi':121 'purpos':183 'put':103,206 'rais':51 'reach':218 'reason':129 'replac':181 'secur':228 'server':80 'session':32,67,74,140,156,179 'shorter':214 'softwar':95 'someon':15 'someth':63 'store':17,38 'tab':13 'talk':112 'ton':126 'track':109,185 'trillion':221 'true':167 'use':87,134,146,152 'user':22 'v1':98 'various':203 'wasn':54 'websit':230 'whether':56,186 'without':16,155 'wouldn':224 'yes':81,149"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/4444557"
  +editedAt: null
  +createdAt: DateTimeImmutable @1697340636 {#1941
    date: 2023-10-15 05:30:36.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"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
3 DENIED edit
App\Entity\EntryComment {#1365
  +user: Proxies\__CG__\App\Entity\User {#1371 …}
  +entry: App\Entity\Entry {#1832 …}
  +magazine: App\Entity\Magazine {#311
    +icon: Proxies\__CG__\App\Entity\Image {#292 …}
    +name: "memes@lemmy.ml"
    +title: "memes"
    +description: """
      #### Rules:\n
      \n
      1. Be civil and nice.\n
      2. Try not to excessively repost, as a rule of thumb, wait at least 2 months to do it if you *have* to.
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 5926
    +entryCommentCount: 65073
    +postCount: 25
    +postCommentCount: 152
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729583092 {#319
      date: 2024-10-22 09:44:52.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#283 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#279 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#268 …}
    +entries: Doctrine\ORM\PersistentCollection {#226 …}
    +posts: Doctrine\ORM\PersistentCollection {#184 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#246 …}
    +bans: Doctrine\ORM\PersistentCollection {#163 …}
    +reports: Doctrine\ORM\PersistentCollection {#149 …}
    +badges: Doctrine\ORM\PersistentCollection {#127 …}
    +logs: Doctrine\ORM\PersistentCollection {#117 …}
    +awards: Doctrine\ORM\PersistentCollection {#106 …}
    +categories: Doctrine\ORM\PersistentCollection {#93 …}
    -id: 38
    +apId: "memes@lemmy.ml"
    +apProfileId: "https://lemmy.ml/c/memes"
    +apPublicUrl: "https://lemmy.ml/c/memes"
    +apFollowersUrl: "https://lemmy.ml/c/memes/followers"
    +apInboxUrl: "https://lemmy.ml/inbox"
    +apDomain: "lemmy.ml"
    +apPreferredUsername: "memes"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728572889 {#320
      date: 2024-10-10 17:08:09.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1696428223 {#314
      date: 2023-10-04 16:03:43.0 +02:00
    }
  }
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#2353 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#2451 …}
  +body: """
    First of all, this comment chain is about being able to keep tabs on someone without storing information locally on the user’s computer. If we create a new form of session ID equivalent that doesn’t store information locally, I have achieved the goal to the problem that was raised. The issue wasn’t whether or not we needed concept of something equivalent to a session ID.\n
    \n
    > […] will need to include that session ID passed back to the server.\n
    \n
    Yes, that’s exactly what we used to do in the '00s. Look at softwares like osCommerce v1 and 2. We literally put money behind this method of tracking.\n
    \n
    > And this talk about IP addresses is complete nonsense because of Proxies and NAT and a ton of other reasons. You can attempt to use it in combination with a session ID, but you certainly cannot use that alone.\n
    \n
    Yes, you can use that alone. Without session ID. The other commenter already addressed why this isn’t true. Also context matters. Pretty close is a good enough of a session ID replacement for purpose of tracking whether or not they consented to the cookie policy. If I did a concat of IP, and various fingerprints (and put a hash on it to make it shorter), I can easily reach one in trillion probabilities. I wouldn’t build a secure military website on it because it’s easily forgeable, but it’s more than enough for cookie policy popup.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1697340636 {#1602
    date: 2023-10-15 05:30:36.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Albin9326@kerala.party"
    "@pauldfaria@infosec.pub"
    "@uphillbothways@kbin.social"
    "@SpaceNoodle@lemmy.world"
    "@Grumpy@sh.itjust.works"
    "@jaybone@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#2476 …}
  +nested: Doctrine\ORM\PersistentCollection {#2355 …}
  +votes: Doctrine\ORM\PersistentCollection {#2428 …}
  +reports: Doctrine\ORM\PersistentCollection {#2436 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2473 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1359 …}
  -id: 49954
  -bodyTs: "'00s':92 '2':100 'abl':10 'achiev':43 'address':115,162 'alon':148,154 'alreadi':161 'also':168 'attempt':132 'back':77 'behind':105 'build':226 'cannot':145 'certain':144 'chain':6 'close':172 'combin':137 'comment':5,160 'complet':117 'comput':24 'concat':199 'concept':61 'consent':190 'context':169 'cooki':193,245 'creat':27 'doesn':36 'easili':217,236 'enough':176,243 'equival':34,64 'exact':84 'fingerprint':204 'first':1 'forgeabl':237 'form':30 'goal':45 'good':175 'hash':208 'id':33,68,75,141,157,180 'includ':72 'inform':18,39 'ip':114,201 'isn':165 'issu':53 'keep':12 'like':96 'liter':102 'local':19,40 'look':93 'make':212 'matter':170 'method':107 'militari':229 'money':104 'nat':123 'need':60,70 'new':29 'nonsens':118 'one':219 'oscommerc':97 'pass':76 'polici':194,246 'popup':247 'pretti':171 'probabl':222 'problem':48 'proxi':121 'purpos':183 'put':103,206 'rais':51 'reach':218 'reason':129 'replac':181 'secur':228 'server':80 'session':32,67,74,140,156,179 'shorter':214 'softwar':95 'someon':15 'someth':63 'store':17,38 'tab':13 'talk':112 'ton':126 'track':109,185 'trillion':221 'true':167 'use':87,134,146,152 'user':22 'v1':98 'various':203 'wasn':54 'websit':230 'whether':56,186 'without':16,155 'wouldn':224 'yes':81,149"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/4444557"
  +editedAt: null
  +createdAt: DateTimeImmutable @1697340636 {#1941
    date: 2023-10-15 05:30:36.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"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
4 DENIED moderate
App\Entity\EntryComment {#1365
  +user: Proxies\__CG__\App\Entity\User {#1371 …}
  +entry: App\Entity\Entry {#1832 …}
  +magazine: App\Entity\Magazine {#311
    +icon: Proxies\__CG__\App\Entity\Image {#292 …}
    +name: "memes@lemmy.ml"
    +title: "memes"
    +description: """
      #### Rules:\n
      \n
      1. Be civil and nice.\n
      2. Try not to excessively repost, as a rule of thumb, wait at least 2 months to do it if you *have* to.
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 5926
    +entryCommentCount: 65073
    +postCount: 25
    +postCommentCount: 152
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729583092 {#319
      date: 2024-10-22 09:44:52.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#283 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#279 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#268 …}
    +entries: Doctrine\ORM\PersistentCollection {#226 …}
    +posts: Doctrine\ORM\PersistentCollection {#184 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#246 …}
    +bans: Doctrine\ORM\PersistentCollection {#163 …}
    +reports: Doctrine\ORM\PersistentCollection {#149 …}
    +badges: Doctrine\ORM\PersistentCollection {#127 …}
    +logs: Doctrine\ORM\PersistentCollection {#117 …}
    +awards: Doctrine\ORM\PersistentCollection {#106 …}
    +categories: Doctrine\ORM\PersistentCollection {#93 …}
    -id: 38
    +apId: "memes@lemmy.ml"
    +apProfileId: "https://lemmy.ml/c/memes"
    +apPublicUrl: "https://lemmy.ml/c/memes"
    +apFollowersUrl: "https://lemmy.ml/c/memes/followers"
    +apInboxUrl: "https://lemmy.ml/inbox"
    +apDomain: "lemmy.ml"
    +apPreferredUsername: "memes"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1728572889 {#320
      date: 2024-10-10 17:08:09.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1696428223 {#314
      date: 2023-10-04 16:03:43.0 +02:00
    }
  }
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#2353 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#2451 …}
  +body: """
    First of all, this comment chain is about being able to keep tabs on someone without storing information locally on the user’s computer. If we create a new form of session ID equivalent that doesn’t store information locally, I have achieved the goal to the problem that was raised. The issue wasn’t whether or not we needed concept of something equivalent to a session ID.\n
    \n
    > […] will need to include that session ID passed back to the server.\n
    \n
    Yes, that’s exactly what we used to do in the '00s. Look at softwares like osCommerce v1 and 2. We literally put money behind this method of tracking.\n
    \n
    > And this talk about IP addresses is complete nonsense because of Proxies and NAT and a ton of other reasons. You can attempt to use it in combination with a session ID, but you certainly cannot use that alone.\n
    \n
    Yes, you can use that alone. Without session ID. The other commenter already addressed why this isn’t true. Also context matters. Pretty close is a good enough of a session ID replacement for purpose of tracking whether or not they consented to the cookie policy. If I did a concat of IP, and various fingerprints (and put a hash on it to make it shorter), I can easily reach one in trillion probabilities. I wouldn’t build a secure military website on it because it’s easily forgeable, but it’s more than enough for cookie policy popup.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1697340636 {#1602
    date: 2023-10-15 05:30:36.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Albin9326@kerala.party"
    "@pauldfaria@infosec.pub"
    "@uphillbothways@kbin.social"
    "@SpaceNoodle@lemmy.world"
    "@Grumpy@sh.itjust.works"
    "@jaybone@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#2476 …}
  +nested: Doctrine\ORM\PersistentCollection {#2355 …}
  +votes: Doctrine\ORM\PersistentCollection {#2428 …}
  +reports: Doctrine\ORM\PersistentCollection {#2436 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2473 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1359 …}
  -id: 49954
  -bodyTs: "'00s':92 '2':100 'abl':10 'achiev':43 'address':115,162 'alon':148,154 'alreadi':161 'also':168 'attempt':132 'back':77 'behind':105 'build':226 'cannot':145 'certain':144 'chain':6 'close':172 'combin':137 'comment':5,160 'complet':117 'comput':24 'concat':199 'concept':61 'consent':190 'context':169 'cooki':193,245 'creat':27 'doesn':36 'easili':217,236 'enough':176,243 'equival':34,64 'exact':84 'fingerprint':204 'first':1 'forgeabl':237 'form':30 'goal':45 'good':175 'hash':208 'id':33,68,75,141,157,180 'includ':72 'inform':18,39 'ip':114,201 'isn':165 'issu':53 'keep':12 'like':96 'liter':102 'local':19,40 'look':93 'make':212 'matter':170 'method':107 'militari':229 'money':104 'nat':123 'need':60,70 'new':29 'nonsens':118 'one':219 'oscommerc':97 'pass':76 'polici':194,246 'popup':247 'pretti':171 'probabl':222 'problem':48 'proxi':121 'purpos':183 'put':103,206 'rais':51 'reach':218 'reason':129 'replac':181 'secur':228 'server':80 'session':32,67,74,140,156,179 'shorter':214 'softwar':95 'someon':15 'someth':63 'store':17,38 'tab':13 'talk':112 'ton':126 'track':109,185 'trillion':221 'true':167 'use':87,134,146,152 'user':22 'v1':98 'various':203 'wasn':54 'websit':230 'whether':56,186 'without':16,155 'wouldn':224 'yes':81,149"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/4444557"
  +editedAt: null
  +createdAt: DateTimeImmutable @1697340636 {#1941
    date: 2023-10-15 05:30:36.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"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
5 DENIED edit
App\Entity\Magazine {#311
  +icon: Proxies\__CG__\App\Entity\Image {#292 …}
  +name: "memes@lemmy.ml"
  +title: "memes"
  +description: """
    #### Rules:\n
    \n
    1. Be civil and nice.\n
    2. Try not to excessively repost, as a rule of thumb, wait at least 2 months to do it if you *have* to.
    """
  +rules: null
  +subscriptionsCount: 1
  +entryCount: 5926
  +entryCommentCount: 65073
  +postCount: 25
  +postCommentCount: 152
  +isAdult: false
  +customCss: null
  +lastActive: DateTime @1729583092 {#319
    date: 2024-10-22 09:44:52.0 +02:00
  }
  +markedForDeletionAt: null
  +tags: null
  +moderators: Doctrine\ORM\PersistentCollection {#283 …}
  +ownershipRequests: Doctrine\ORM\PersistentCollection {#279 …}
  +moderatorRequests: Doctrine\ORM\PersistentCollection {#268 …}
  +entries: Doctrine\ORM\PersistentCollection {#226 …}
  +posts: Doctrine\ORM\PersistentCollection {#184 …}
  +subscriptions: Doctrine\ORM\PersistentCollection {#246 …}
  +bans: Doctrine\ORM\PersistentCollection {#163 …}
  +reports: Doctrine\ORM\PersistentCollection {#149 …}
  +badges: Doctrine\ORM\PersistentCollection {#127 …}
  +logs: Doctrine\ORM\PersistentCollection {#117 …}
  +awards: Doctrine\ORM\PersistentCollection {#106 …}
  +categories: Doctrine\ORM\PersistentCollection {#93 …}
  -id: 38
  +apId: "memes@lemmy.ml"
  +apProfileId: "https://lemmy.ml/c/memes"
  +apPublicUrl: "https://lemmy.ml/c/memes"
  +apFollowersUrl: "https://lemmy.ml/c/memes/followers"
  +apInboxUrl: "https://lemmy.ml/inbox"
  +apDomain: "lemmy.ml"
  +apPreferredUsername: "memes"
  +apDiscoverable: true
  +apManuallyApprovesFollowers: null
  +privateKey: null
  +publicKey: null
  +apFetchedAt: DateTime @1728572889 {#320
    date: 2024-10-10 17:08:09.0 +02:00
  }
  +apDeletedAt: null
  +apTimeoutAt: null
  +visibility: "visible             "
  +createdAt: DateTimeImmutable @1696428223 {#314
    date: 2023-10-04 16:03:43.0 +02: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