sycommon-python-lib 0.2.1a32__tar.gz → 0.2.1a33__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/PKG-INFO +1 -1
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/pyproject.toml +1 -1
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/auth/ldap_service.py +35 -14
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon_python_lib.egg-info/PKG-INFO +1 -1
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/README.md +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/setup.cfg +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/cli.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/core/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/core/console.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/core/models.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/core/project.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/core/utils.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/templates/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/templates/agent/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/templates/base/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/templates/web/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/agent_manager.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/chat_events.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/deep_agent.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/multi_agent_team.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/sandbox/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/sandbox/file_ops.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/sandbox/http_sandbox_backend.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/sandbox/sandbox_pool.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/sandbox/sandbox_recovery.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/sandbox/session.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/auth/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/Config.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/DatabaseConfig.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/ElasticsearchConfig.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/EmbeddingConfig.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/LLMConfig.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/LangfuseConfig.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/MQConfig.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/RedisConfig.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/RerankerConfig.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/SentryConfig.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/database/async_base_db_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/database/async_database_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/database/base_db_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/database/database_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/database/elasticsearch_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/database/redis_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/database/token_usage_db_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/health/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/health/health_check.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/health/metrics.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/health/ping.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/heartbeat_process/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/heartbeat_process/heartbeat_config.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/heartbeat_process/heartbeat_process_manager.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/heartbeat_process/heartbeat_process_worker.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/embedding.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/get_llm.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/llm_logger.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/llm_tokens.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/llm_with_token_tracking.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/native_with_fallback_runnable.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/output_fixing_runnable.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/struct_token.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/sy_langfuse.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/token_usage_es_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/token_usage_mysql_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/usage_token.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/async_sql_logger.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/kafka_log.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/logger_levels.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/logger_wrapper.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/process_logger.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/sql_logger.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/background_execution.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/context.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/cors.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/docs.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/exception.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/middleware.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/monitor_memory.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/mq.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/sandbox.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/timeout.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/traceid.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/base_http.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/log.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/mqlistener_config.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/mqmsg_model.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/mqsend_config.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/sandbox.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/sso_user.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/token_usage.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/token_usage_mysql.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/notice/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/notice/uvicorn_monitor.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/rabbitmq/process_pool_consumer.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/rabbitmq/rabbitmq_client.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/rabbitmq/rabbitmq_pool.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/rabbitmq/rabbitmq_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/rabbitmq/rabbitmq_service_client_manager.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/rabbitmq/rabbitmq_service_connection_monitor.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/rabbitmq/rabbitmq_service_consumer_manager.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/rabbitmq/rabbitmq_service_core.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/rabbitmq/rabbitmq_service_producer_manager.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/sentry/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/sentry/sy_sentry.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/services.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/sse/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/sse/event.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/sse/sse.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/example.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/example2.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/feign.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/feign_client.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/nacos_client_base.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/nacos_config_manager.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/nacos_heartbeat_manager.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/nacos_service.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/nacos_service_discovery.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/nacos_service_registration.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/param.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tests/deep_agent_server.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tests/test_deep_agent.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tests/test_email.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tests/test_mq.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/__init__.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/async_utils.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/docs.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/env.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/merge_headers.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/snowflake.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/syemail.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/timing.py +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon_python_lib.egg-info/SOURCES.txt +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon_python_lib.egg-info/dependency_links.txt +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon_python_lib.egg-info/entry_points.txt +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon_python_lib.egg-info/requires.txt +0 -0
- {sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon_python_lib.egg-info/top_level.txt +0 -0
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/auth/ldap_service.py
RENAMED
|
@@ -129,8 +129,9 @@ class LDAPAuthService:
|
|
|
129
129
|
last_error = None
|
|
130
130
|
for url in self.config.urls:
|
|
131
131
|
try:
|
|
132
|
-
#
|
|
133
|
-
|
|
132
|
+
# 创建连接(移除末尾的斜杠)
|
|
133
|
+
clean_url = url.rstrip("/")
|
|
134
|
+
server = ldap3.Server(clean_url, get_info=ldap3.ALL)
|
|
134
135
|
conn = ldap3.Connection(
|
|
135
136
|
server,
|
|
136
137
|
user=user_dn,
|
|
@@ -168,9 +169,26 @@ class LDAPAuthService:
|
|
|
168
169
|
Returns:
|
|
169
170
|
str: 用户 DN
|
|
170
171
|
"""
|
|
171
|
-
#
|
|
172
|
-
# 格式:
|
|
173
|
-
|
|
172
|
+
# 对于 Active Directory,使用 UPN 格式更可靠
|
|
173
|
+
# 格式: username@domain
|
|
174
|
+
if self.config.default_dc:
|
|
175
|
+
domain = self.config.default_dc
|
|
176
|
+
return f"{username}@{domain}"
|
|
177
|
+
# 回退到 DN 格式
|
|
178
|
+
return f"cn={username},{self.config.base}"
|
|
179
|
+
|
|
180
|
+
def _build_bind_dn(self, username: str) -> str:
|
|
181
|
+
"""构建绑定用户 DN(用于管理员绑定)
|
|
182
|
+
|
|
183
|
+
Args:
|
|
184
|
+
username: 绑定用户名
|
|
185
|
+
|
|
186
|
+
Returns:
|
|
187
|
+
str: 绑定用户 DN
|
|
188
|
+
"""
|
|
189
|
+
# 对于 Active Directory,使用 UPN 格式
|
|
190
|
+
if self.config.default_dc:
|
|
191
|
+
return f"{username}@{self.config.default_dc}"
|
|
174
192
|
return f"cn={username},{self.config.base}"
|
|
175
193
|
|
|
176
194
|
def _get_user_info(self, conn, username: str) -> LDAPUser:
|
|
@@ -185,12 +203,10 @@ class LDAPAuthService:
|
|
|
185
203
|
"""
|
|
186
204
|
import ldap3
|
|
187
205
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
# 搜索用户属性
|
|
206
|
+
# 在 base DN 中搜索用户
|
|
191
207
|
conn.search(
|
|
192
|
-
search_base=
|
|
193
|
-
search_filter="(
|
|
208
|
+
search_base=self.config.base,
|
|
209
|
+
search_filter=f"(sAMAccountName={username})",
|
|
194
210
|
attributes=[
|
|
195
211
|
"cn",
|
|
196
212
|
"mail",
|
|
@@ -199,6 +215,7 @@ class LDAPAuthService:
|
|
|
199
215
|
"telephoneNumber",
|
|
200
216
|
"title",
|
|
201
217
|
"distinguishedName",
|
|
218
|
+
"sAMAccountName",
|
|
202
219
|
],
|
|
203
220
|
)
|
|
204
221
|
|
|
@@ -242,12 +259,14 @@ class LDAPAuthService:
|
|
|
242
259
|
import ldap3
|
|
243
260
|
from ldap3.core.exceptions import LDAPException
|
|
244
261
|
|
|
262
|
+
bind_user = self._build_bind_dn(self.config.username)
|
|
263
|
+
|
|
245
264
|
for url in self.config.urls:
|
|
246
265
|
try:
|
|
247
|
-
server = ldap3.Server(url, get_info=ldap3.ALL)
|
|
266
|
+
server = ldap3.Server(url.rstrip("/"), get_info=ldap3.ALL)
|
|
248
267
|
conn = ldap3.Connection(
|
|
249
268
|
server,
|
|
250
|
-
user=
|
|
269
|
+
user=bind_user,
|
|
251
270
|
password=self.config.password,
|
|
252
271
|
auto_bind=True,
|
|
253
272
|
)
|
|
@@ -285,12 +304,14 @@ class LDAPAuthService:
|
|
|
285
304
|
"""同步验证连接"""
|
|
286
305
|
import ldap3
|
|
287
306
|
|
|
307
|
+
bind_user = self._build_bind_dn(self.config.username)
|
|
308
|
+
|
|
288
309
|
for url in self.config.urls:
|
|
289
310
|
try:
|
|
290
|
-
server = ldap3.Server(url, get_info=ldap3.ALL)
|
|
311
|
+
server = ldap3.Server(url.rstrip("/"), get_info=ldap3.ALL)
|
|
291
312
|
conn = ldap3.Connection(
|
|
292
313
|
server,
|
|
293
|
-
user=
|
|
314
|
+
user=bind_user,
|
|
294
315
|
password=self.config.password,
|
|
295
316
|
auto_bind=True,
|
|
296
317
|
)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/templates/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/templates/base/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/command/templates/web/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/agent_manager.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/chat_events.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/deep_agent.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/multi_agent_team.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/sandbox/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/sandbox/file_ops.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/agent/sandbox/session.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/DatabaseConfig.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/EmbeddingConfig.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/LLMConfig.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/LangfuseConfig.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/MQConfig.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/RedisConfig.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/RerankerConfig.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/SentryConfig.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/config/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/database/redis_service.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/health/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/health/health_check.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/health/metrics.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/llm_logger.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/llm_tokens.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/struct_token.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/sy_langfuse.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/llm/usage_token.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/kafka_log.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/logger_levels.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/logger_wrapper.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/process_logger.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/logging/sql_logger.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/context.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/cors.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/docs.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/exception.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/middleware.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/sandbox.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/timeout.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/middleware/traceid.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/base_http.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/mqmsg_model.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/mqsend_config.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/sandbox.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/sso_user.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/models/token_usage.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/notice/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/notice/uvicorn_monitor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/rabbitmq/rabbitmq_pool.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/sentry/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/sentry/sy_sentry.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/example.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/example2.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/feign_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/synacos/nacos_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tests/test_deep_agent.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tests/test_email.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/async_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/merge_headers.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.1a32 → sycommon_python_lib-0.2.1a33}/src/sycommon/tools/snowflake.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|