Skip to content

Commit 07d56c3

Browse files
committed
[Server] Add XrdAccToken authorization plugin for WLCG and SciTokens scopes.
Introduce an ofs.authlib plugin that enforces JWT scope claims from XrdSecOIDC entity attributes, with automatic WLCG/SciTokens profile selection via wlcg.ver. Honor issuer-exported base_path and restricted_path when composing effective paths and gating requests. Document CERN SSO vs WLCG IAM setup in the plugin README.
1 parent 85722c8 commit 07d56c3

10 files changed

Lines changed: 1661 additions & 2 deletions

File tree

src/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,4 +123,5 @@ if( NOT XRDCL_ONLY )
123123
add_subdirectory( XrdHttpCors )
124124
add_subdirectory( XrdCeph )
125125
add_subdirectory( XrdSciTokens )
126+
add_subdirectory( XrdAccToken )
126127
endif()

src/XrdAccToken/CMakeLists.txt

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
unset(BUILD_ACCTOKEN CACHE)
2+
3+
if(XRDCL_ONLY)
4+
return()
5+
endif()
6+
7+
set(BUILD_ACCTOKEN TRUE CACHE INTERNAL "")
8+
9+
set(XrdAccToken XrdAccToken-${PLUGIN_VERSION})
10+
11+
add_library(${XrdAccToken} MODULE
12+
XrdAccTokenAccess.cc
13+
XrdAccTokenScope.cc
14+
)
15+
16+
target_include_directories(${XrdAccToken}
17+
PRIVATE
18+
${CMAKE_SOURCE_DIR}/src
19+
)
20+
21+
target_link_libraries(${XrdAccToken}
22+
PRIVATE
23+
XrdUtils
24+
XrdServer
25+
${CMAKE_DL_LIBS}
26+
)
27+
28+
if(NOT APPLE)
29+
target_link_options(${XrdAccToken} PRIVATE
30+
"-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export-lib-symbols")
31+
endif()
32+
33+
install(TARGETS ${XrdAccToken} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})

0 commit comments

Comments
 (0)