μžλŠ” 씨앗
  • λΆ„λ₯˜ 전체보기
    • 🐣 기초 κ°œλ…
    • πŸ“Ž 유튜브
    • πŸ’Ύ 쑰각λͺ¨μŒ
    • πŸ‘©‍πŸ’» Error
    • ❄ React
    • πŸ₯Python
    • πŸ€ Spring
    • πŸ₯ž JS
    • πŸ‹ Docker
    • 🧭 WSO2
    • 🐧 Linux
    • πŸ”— SQL
    • 🐒 C#
    • πŸ“‘ 읽을거리
    • πŸ‘€μ§ˆλ¬Έλ“€
    • πŸ‘©‍πŸ’» κ΅­λΉ„ μˆ˜μ—…
      • Java μžλ°”
      • Oracle 였라클
      • JDBC
      • HTML & CSS
      • JavaScript
      • JSP
      • Servlet
      • Spring
      • MyBatis
    • πŸ“• 개발 혼곡
      • μžλ°”μ˜ 정석
      • μžλ°” ORM ν‘œμ€€ JPA ν”„λ‘œκ·Έλž˜λ°
hELLO Β· Designed By μ •μƒμš°.
μžλŠ” 씨앗

🌱

Fine-grained access
🧭 WSO2

Fine-grained access

2024. 1. 31. 22:04

 

Fine-grained access :

  • μ„Έλ°€ν•œ μˆ˜μ€€μ˜ μ ‘κ·Ό μ œμ–΄
  • μ‚¬μš©μžλ‚˜ 역할이 νŠΉμ • 데이터, λ¦¬μ†ŒμŠ€ λ˜λŠ” κΈ°λŠ₯에 λŒ€ν•œ 접근을 μ„Έλ°€ν•˜κ²Œ μ œμ–΄ν•  수 μžˆλŠ” 방식
  • κΈ°λ³Έμ μœΌλ‘œλŠ” μ‚¬μš©μžμ˜ μ „λ°˜μ μΈ κΆŒν•œμ„ ν• λ‹Ήν•˜λŠ” 것이 μ•„λ‹ˆλΌ, νŠΉμ • μ‘°κ±΄μ΄λ‚˜ κ·œμΉ™μ— 따라 μƒμ„Έν•œ μ ‘κ·Ό κΆŒν•œμ„ λΆ€μ—¬ν•˜λŠ” 것을 말함
    • Fine-grained accessλ₯Ό μ‚¬μš©ν•˜λ©΄ νŠΉμ • μ‚¬μš©μžμ—κ²Œ ν•΄λ‹Ή ν…Œμ΄λΈ”μ— λŒ€ν•œ 읽기 κΆŒν•œλ§Œ λΆ€μ—¬λ˜κ³ , λ‹€λ₯Έ ν…Œμ΄λΈ”μ— λŒ€ν•œ 접근은 μ œν•œλ  수 있음
  • 이와 같은 μ ‘κ·Ό μ œμ–΄ 방식은 λ³΄μ•ˆμ„ κ°•ν™”ν•˜κ³  데이터에 λŒ€ν•œ 접근을 μ΅œμ†Œν•œμ˜ ν•„μš”ν•œ λ²”μœ„λ‘œ μ œν•œν•˜μ—¬ λ―Όκ°ν•œ μ •λ³΄μ˜ μœ μΆœμ„ λ°©μ§€ν•  수 있음
  • 주둜 λ°μ΄ν„°λ² μ΄μŠ€, 파일 μ‹œμŠ€ν…œ, μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λ“± λ‹€μ–‘ν•œ μ‹œμŠ€ν…œμ—μ„œ μ‚¬μš©λ¨

 

**/Entitlement_WebApp/protected/둜 μ‹œμž‘ν•˜λŠ” μ—”λ“œν¬μΈνŠΈλ‘œμ˜ GET 접근을 Laurence와 Philipμ—κ²Œλ§Œ ν—ˆλ½

  1. Laurence, Philip, Elizabeth μΆ”κ°€
  2. XACML Policy λ§Œλ“€κΈ° (WSO2κ°€ μ œκ³΅ν•˜λŠ” Standard Policy Editorλ₯Ό μ‚¬μš©)
    • Entitlement Policy(μ•‘μ„ΈμŠ€ κΆŒν•œ μ •μ±…)
      • μ‹œμŠ€ν…œμ—μ„œ νŠΉμ • μžμ› λ˜λŠ” μ„œλΉ„μŠ€μ— λŒ€ν•œ μ ‘κ·Ό κΆŒν•œμ„ μ •μ˜ν•˜κ³  μ‘°μ ˆν•˜λŠ” κ·œμΉ™ λ˜λŠ” μ§€μΉ¨μ˜ μ§‘ν•©
      • 이 정책듀은 일반적으둜 λ³΄μ•ˆκ³Ό μ—‘μ„ΈμŠ€ μ œμ–΄λ₯Ό κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ¨
      • Entitlement Policy의 λͺ©μ μ€ νŠΉμ • μ‚¬μš©μžλ‚˜ 그룹에 λŒ€ν•œ κΆŒν•œμ„ κ²°μ •ν•˜κ³  μ œμ–΄ν•˜λŠ” 것
      • WSO2 Identity Server 및 λ‹€λ₯Έ λ³΄μ•ˆ 및 인증 κ΄€λ ¨ μ œν’ˆμ—μ„œλŠ” Entitlement Policiesλ₯Ό μ‚¬μš©ν•˜μ—¬ μ‚¬μš©μžμ— λŒ€ν•œ κΆŒν•œμ„ μ§€μ •ν•˜κ³  관리할 수 있음
      • 정책듀은 주둜 μ—­ν•  기반 μ•‘μ„ΈμŠ€ μ œμ–΄(Role-Based Access Control, RBAC) λ˜λŠ” 속성 기반 μ•‘μ„ΈμŠ€ μ œμ–΄(Attribute-Based Access Control, ABAC) λ“±μ˜ λ³΄μ•ˆ λͺ¨λΈμ— κΈ°λ°˜ν•˜μ—¬ ꡬ성됨
      • Entitlement Policyλ₯Ό μ‚¬μš©ν•˜λ©΄ 쑰직은 세뢀적인 κΆŒν•œ 및 μ•‘μ„ΈμŠ€ μ œμ–΄λ₯Ό μ •μ˜ν•˜μ—¬ λ³΄μ•ˆμ„ κ°•ν™”ν•˜κ³  λΉ„μ¦ˆλ‹ˆμŠ€ κ·œμΉ™μ— 따라 μžμ›μ— λŒ€ν•œ κΆŒν•œμ„ λ™μ μœΌλ‘œ 관리할 수 있음
      Entitlement Policy μ£Όμš” ꡬ성 μš”μ†Œ :
      1. Subject: 정책이 μ μš©λ˜λŠ” 주체, 즉 μ‚¬μš©μž λ˜λŠ” 그룹을 μ§€μ •
      2. Resource: 보호 λŒ€μƒ μžμ› λ˜λŠ” μ„œλΉ„μŠ€λ₯Ό μ§€μ •
      3. Action: ν—ˆμš©λ˜κ±°λ‚˜ κ±°λΆ€λ˜λŠ” νŠΉμ • μž‘μ—… λ˜λŠ” λ™μž‘μ„ μ§€μ •
      4. Condition: 정책이 μ μš©λ˜λŠ” 쑰건을 μ§€μ •
      5. Effect: ν—ˆμš© λ˜λŠ” 거뢀와 같은 κ²°κ³Όλ₯Ό μ •μ˜

 

  • "Restricted_User_Access" κ·œμΉ™ : "/Entitlement_WebApp/protected/" λ¦¬μ†ŒμŠ€μ— λŒ€ν•œ 접근을 Laurence λ˜λŠ” Philip이 GET λ™μž‘μ„ μˆ˜ν–‰ν•  λ•Œλ§Œ ν—ˆμš©ν•˜λŠ” κ·œμΉ™

  • Deny_access κ·œμΉ™ : νŠΉμ • ν™˜κ²½ 쑰건을 λ§Œμ‘±ν•˜λŠ” 경우 λͺ¨λ“  접근을 κ±°λΆ€ν•˜λŠ” κ·œμΉ™
  1. Policy Administrationμ—μ„œ Try
    1. μœ μ € Phil은 μžμ› /Entitlement_WebApp/protected/index.jsp에 λŒ€ν•΄ GETμš”μ²­ κ°€λŠ₯함 (POSTλŠ” μ•ˆλ¨)
    2. μœ μ € EliλŠ” μ ‘κ·Ό κ±°λΆ€Fine-grained access :
      • μ„Έλ°€ν•œ μˆ˜μ€€μ˜ μ ‘κ·Ό μ œμ–΄
      • μ‚¬μš©μžλ‚˜ 역할이 νŠΉμ • 데이터, λ¦¬μ†ŒμŠ€ λ˜λŠ” κΈ°λŠ₯에 λŒ€ν•œ 접근을 μ„Έλ°€ν•˜κ²Œ μ œμ–΄ν•  수 μžˆλŠ” 방식
      • κΈ°λ³Έμ μœΌλ‘œλŠ” μ‚¬μš©μžμ˜ μ „λ°˜μ μΈ κΆŒν•œμ„ ν• λ‹Ήν•˜λŠ” 것이 μ•„λ‹ˆλΌ, νŠΉμ • μ‘°κ±΄μ΄λ‚˜ κ·œμΉ™μ— 따라 μƒμ„Έν•œ μ ‘κ·Ό κΆŒν•œμ„ λΆ€μ—¬ν•˜λŠ” 것을 말함
        • Fine-grained accessλ₯Ό μ‚¬μš©ν•˜λ©΄ νŠΉμ • μ‚¬μš©μžμ—κ²Œ ν•΄λ‹Ή ν…Œμ΄λΈ”μ— λŒ€ν•œ 읽기 κΆŒν•œλ§Œ λΆ€μ—¬λ˜κ³ , λ‹€λ₯Έ ν…Œμ΄λΈ”μ— λŒ€ν•œ 접근은 μ œν•œλ  수 있음
      • 이와 같은 μ ‘κ·Ό μ œμ–΄ 방식은 λ³΄μ•ˆμ„ κ°•ν™”ν•˜κ³  데이터에 λŒ€ν•œ 접근을 μ΅œμ†Œν•œμ˜ ν•„μš”ν•œ λ²”μœ„λ‘œ μ œν•œν•˜μ—¬ λ―Όκ°ν•œ μ •λ³΄μ˜ μœ μΆœμ„ λ°©μ§€ν•  수 있음
      • 주둜 λ°μ΄ν„°λ² μ΄μŠ€, 파일 μ‹œμŠ€ν…œ, μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λ“± λ‹€μ–‘ν•œ μ‹œμŠ€ν…œμ—μ„œ μ‚¬μš©λ¨
      /Entitlement_WebApp/protected/둜 μ‹œμž‘ν•˜λŠ” μ—”λ“œν¬μΈνŠΈλ‘œμ˜ GET 접근을 Laurence와 Philipμ—κ²Œλ§Œ ν—ˆλ½
      1. Laurence, Philip, Elizabeth μΆ”κ°€
      2. XACML Policy λ§Œλ“€κΈ° (WSO2κ°€ μ œκ³΅ν•˜λŠ” Standard Policy Editorλ₯Ό μ‚¬μš©)
        • Entitlement Policy(μ•‘μ„ΈμŠ€ κΆŒν•œ μ •μ±…)
          • μ‹œμŠ€ν…œμ—μ„œ νŠΉμ • μžμ› λ˜λŠ” μ„œλΉ„μŠ€μ— λŒ€ν•œ μ ‘κ·Ό κΆŒν•œμ„ μ •μ˜ν•˜κ³  μ‘°μ ˆν•˜λŠ” κ·œμΉ™ λ˜λŠ” μ§€μΉ¨μ˜ μ§‘ν•©
          • 이 정책듀은 일반적으둜 λ³΄μ•ˆκ³Ό μ—‘μ„ΈμŠ€ μ œμ–΄λ₯Ό κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ¨
          • Entitlement Policy의 λͺ©μ μ€ νŠΉμ • μ‚¬μš©μžλ‚˜ 그룹에 λŒ€ν•œ κΆŒν•œμ„ κ²°μ •ν•˜κ³  μ œμ–΄ν•˜λŠ” 것
          • WSO2 Identity Server 및 λ‹€λ₯Έ λ³΄μ•ˆ 및 인증 κ΄€λ ¨ μ œν’ˆμ—μ„œλŠ” Entitlement Policiesλ₯Ό μ‚¬μš©ν•˜μ—¬ μ‚¬μš©μžμ— λŒ€ν•œ κΆŒν•œμ„ μ§€μ •ν•˜κ³  관리할 수 있음
          • 정책듀은 주둜 μ—­ν•  기반 μ•‘μ„ΈμŠ€ μ œμ–΄(Role-Based Access Control, RBAC) λ˜λŠ” 속성 기반 μ•‘μ„ΈμŠ€ μ œμ–΄(Attribute-Based Access Control, ABAC) λ“±μ˜ λ³΄μ•ˆ λͺ¨λΈμ— κΈ°λ°˜ν•˜μ—¬ ꡬ성됨
          • Entitlement Policyλ₯Ό μ‚¬μš©ν•˜λ©΄ 쑰직은 세뢀적인 κΆŒν•œ 및 μ•‘μ„ΈμŠ€ μ œμ–΄λ₯Ό μ •μ˜ν•˜μ—¬ λ³΄μ•ˆμ„ κ°•ν™”ν•˜κ³  λΉ„μ¦ˆλ‹ˆμŠ€ κ·œμΉ™μ— 따라 μžμ›μ— λŒ€ν•œ κΆŒν•œμ„ λ™μ μœΌλ‘œ 관리할 수 있음
          Entitlement Policy μ£Όμš” ꡬ성 μš”μ†Œ :
          1. Subject: 정책이 μ μš©λ˜λŠ” 주체, 즉 μ‚¬μš©μž λ˜λŠ” 그룹을 μ§€μ •
          2. Resource: 보호 λŒ€μƒ μžμ› λ˜λŠ” μ„œλΉ„μŠ€λ₯Ό μ§€μ •
          3. Action: ν—ˆμš©λ˜κ±°λ‚˜ κ±°λΆ€λ˜λŠ” νŠΉμ • μž‘μ—… λ˜λŠ” λ™μž‘μ„ μ§€μ •
          4. Condition: 정책이 μ μš©λ˜λŠ” 쑰건을 μ§€μ •
          5. Effect: ν—ˆμš© λ˜λŠ” 거뢀와 같은 κ²°κ³Όλ₯Ό μ •μ˜

 

  • "Restricted_User_Access" κ·œμΉ™ : "/Entitlement_WebApp/protected/" λ¦¬μ†ŒμŠ€μ— λŒ€ν•œ 접근을 Laurence λ˜λŠ” Philip이 GET λ™μž‘μ„ μˆ˜ν–‰ν•  λ•Œλ§Œ ν—ˆμš©ν•˜λŠ” κ·œμΉ™

  • Deny_access κ·œμΉ™ : νŠΉμ • ν™˜κ²½ 쑰건을 λ§Œμ‘±ν•˜λŠ” 경우 λͺ¨λ“  접근을 κ±°λΆ€ν•˜λŠ” κ·œμΉ™

 

 

Policy Administrationμ—μ„œ Try

  1. μœ μ € Phil은 μžμ› /Entitlement_WebApp/protected/index.jsp에 λŒ€ν•΄ GETμš”μ²­ κ°€λŠ₯함 (POSTλŠ” μ•ˆλ¨)
  2. μœ μ € EliλŠ” μ ‘κ·Ό κ±°λΆ€
μ €μž‘μžν‘œμ‹œ λΉ„μ˜λ¦¬ λ³€κ²½κΈˆμ§€ (μƒˆμ°½μ—΄λ¦Ό)

'🧭 WSO2' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

WSO2 호슀트λͺ… λ³€κ²½ κ°€μ΄λ“œ 정리  (1) 2024.02.14
WSO2 ν‚€μŠ€ν† μ–΄, λ””μ§€ν„Έ μΈμ¦μ„œ, 인증 κΈ°κ΄€, JKS와 cacerts, SSL/TLS 톡신  (1) 2024.02.14
4. Single Sign-On with SAML  (1) 2024.01.25
    '🧭 WSO2' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
    • WSO2 호슀트λͺ… λ³€κ²½ κ°€μ΄λ“œ 정리
    • WSO2 ν‚€μŠ€ν† μ–΄, λ””μ§€ν„Έ μΈμ¦μ„œ, 인증 κΈ°κ΄€, JKS와 cacerts, SSL/TLS 톡신
    • 4. Single Sign-On with SAML

    ν‹°μŠ€ν† λ¦¬νˆ΄λ°”