Hallo zusammen,
ich benötige bitte etwas Hilfe.
Ich versuche ein Addon zu erstellen mit dem Namen Linkwarden. Ich habe es so weit fertig, aber ich komme einfach bei dem OICD Code einfach nicht weiter. Das ist ne Nummer zu hoch für mich. Ich habe mir schon paar Addons angeschaut wo die OIDC Einstellungen genutzt werden. Ich habe für mein Plugin alle Einträge aus der Dokumentation von libre-workspace eingesetzt.
Sieht so aus bei mir:
# Register linkwarden with oidc provider
CLIENT_ID=$(libre-workspace-generate-secret 8)
CLIENT_SECRET=$(libre-workspace-generate-secret 32)
# Add the oidc client to the oidc provider
libre-workspace-add-oidc-client "Linkwarden" "$CLIENT_ID" "$CLIENT_SECRET" "https://linkwarden.$DOMAIN/api/auth/callback/oidc"
# Write .env File
echo "
#OIDC Settings
AUTH_METHOD=oidc
AUTH_AUTO_INITIATE=true
OIDC_NAME="OIDC"
OIDC_DISPLAY_NAME_CLAIMS=linkwarden
OIDC_CLIENT_ID=$CLIENT_ID
OIDC_CLIENT_SECRET=$CLIENT_SECRET
OIDC_ISSUER=https://portal.$DOMAIN/openid
OIDC_WELL_KNOWN_URL=https://portal.$DOMAIN/openid/.well-known/openid-configuration
OIDC_END_SESSION_ENDPOINT=true
OIDC_ISSUER_DISCOVER=true
OIDC_USER_TO_GROUPS=true
OIDC_GROUPS_CLAIM=groups
OIDC_ADDITIONAL_SCOPES=groups
OIDC_REMOVE_FROM_GROUPS=true
" > /root/linkwarden/.env
So funktioniert es aber nicht. Es wäre super, wenn es mal einer erklären könnte, wie man das genau macht, dass es funktioniert. In zwei anderen Addons ist es so hinterlegt.
Das war im Addon von Homarr enthalten:
# Register homarr with oidc provider
CLIENT_ID=$(libre-workspace-generate-secret 8)
CLIENT_SECRET=$(libre-workspace-generate-secret 32)
# Add the oidc client to the oidc provider
libre-workspace-add-oidc-client "Homarr" "$CLIENT_ID" "$CLIENT_SECRET" "https://homarr.$DOMAIN/api/auth/callback/oidc"
# Write .env File
echo "
#Homarr environment
SECRET_ENCRYPTION_KEY=$SECRET_ENCRYPTION_KEY
D_PATH=$DATA_PATH
#OIDC Settings
AUTH_PROVIDERS=oidc
AUTH_OIDC_CLIENT_ID=$CLIENT_ID
AUTH_OIDC_CLIENT_SECRET=$CLIENT_SECRET
AUTH_OIDC_ISSUER=https://portal.$DOMAIN/openid
AUTH_OIDC_CLIENT_NAME="OIDC"
AUTH_OIDC_SCOPE_OVERWRITE=openid email profile groups
AUTH_OIDC_GROUPS_ATTRIBUTE=groups
AUTH_LOGOUT_REDIRECT_URL=https://portal.$DOMAIN
AUTH_OIDC_AUTO_LOGIN=true
" > /root/homarr/.env
Und so wäre es in Tinyauth:
# Register tinyauth with oidc provider
CLIENT_ID=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 8 | head -n 1)
CLIENT_SECRET=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
# Add the oidc client to the oidc provider
libre-workspace-add-oidc-client "TinyAuth" "$CLIENT_ID" "$CLIENT_SECRET" "https://tinyauth.$DOMAIN/api/oauth/callback/oidc"
# Write .env File
echo "
#TiyAuth environment
TZ=${TZ_HOST}
APP_URL=https://tinyauth.$DOMAIN
PROVIDERS_OIDC_CLIENT_ID=$CLIENT_ID
PROVIDERS_OIDC_CLIENT_SECRET=$CLIENT_SECRET
PROVIDERS_OIDC_AUTH_URL=https://portal.$DOMAIN/openid/authorize
PROVIDERS_OIDC_TOKEN_URL=https://portal.$DOMAIN/openid/token
PROVIDERS_OIDC_USER_INFO_URL=https://portal.$DOMAIN/openid/userinfo
PROVIDERS_OIDC_REDIRECT_URL=https://tinyauth.$DOMAIN/api/oauth/callback/oidc
PROVIDERS_OIDC_SCOPES=openid email profile groups
PROVIDERS_OIDC_NAME=oidc
D_PATH=$VDP
" > /root/tinyauth/.env
Ich habe alles mal ausprobiert, aber kann mich nicht einloggen. Ich habe extra eine Test Umgebung dafür wo nur der Administrator Account läuft. Sind keine Benutzer dort angelegt.
Von Linkwarden gibt es diese Webseite wo man die Einträge für OIDC einsehen kann.
Kann mir bitte einer Erklären auf was ich Achten muss und welche Zeilen Code relevant sind. Ich steige bei OIDC einfach nicht dahinter.
Danke Euch
Gruß
Hoschy



