Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
set_password_api
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Alina Habibulina
set_password_api
Commits
5ee73363
Commit
5ee73363
authored
Jun 18, 2018
by
Alina Habibulina
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
e4e3a521
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
7 additions
and
28 deletions
+7
-28
README.md
README.md
+7
-12
src/main/java/kz/arta/ext/sap/db/ClientManager.java
src/main/java/kz/arta/ext/sap/db/ClientManager.java
+0
-10
src/main/java/kz/arta/ext/sap/service/UnsecuredProxyService.java
...n/java/kz/arta/ext/sap/service/UnsecuredProxyService.java
+0
-6
No files found.
README.md
View file @
5ee73363
# Шаблон веб-приложения с кастомным REST API
# REST API для установки/смены пароля
В приложении приведен пример создания кастомного REST API на Java.
Данное приложение можно разместить в сервере приложений JBoss, который
устанавливается вместе с Synergy.
...
...
@@ -10,7 +10,7 @@
Сборка осуществляется при помощи
[
Gradle Build Tool
](
https://gradle.org/
)
```
bash
$
./gradlew war
$
gradle build
```
Собранный
`synergy-api-proxy-1.0.war`
необходимо поместить
...
...
@@ -38,20 +38,15 @@ synergy.user.password=1
Endpoint:
`http[s]://host:[port]/sap`
1.
Метод получения изображения [
`GET`
]
`/proxy/u
nsecured/image
`
1.
Метод получения изображения [
`GET`
]
`/proxy/u
service/set_password
`
```
/**
* Обертка над методом /rest/api/storage/file/get
* Не требует авторизации.
* Обращение к REST API Synergy осуществляется от имени пользователя,
* указанного в настройках (параметры synergy.user.login и synergy.user.password)
*
* @param identifier идентификатор файла в хранилище
* @return inline изображение. Если запрошенный файл не является изображением, то вернется ошибка.
* @param1 login - логин пользователя в системе
* @param1 new_password - новый пароль пользователя
*/
```
Пример запроса:
`http://127.0.0.1:8080/sap/proxy/unsecured/image?identifier=29130a30-42cf-451a-98e8-6f6827d3751b`
\ No newline at end of file
`http://192.168.4.130:8080/sap/proxy/uservice/set_password?login=1&new_password=123`
src/main/java/kz/arta/ext/sap/db/ClientManager.java
View file @
5ee73363
...
...
@@ -25,16 +25,6 @@ public class ClientManager {
Connection
con
=
null
;
try
{
con
=
ConnectionPool
.
getConnection
();
/*
1) Делаем SELECT MD5(old_password)
2) Сравниваем полученный результат с имеющимся в поле password:
- совпадают: идем дальше
- не совпадают: возвращаем ошибку
3) Делаем SELECT MD5(new_password)
4) Делаем UPDATE users SET password= (SELECT MD5(new_password) ) WHERE login = login
*/
PreparedStatement
st
=
con
.
prepareStatement
(
"INSERT INTO log(logged, clientid, hostname, extip, localip) VALUES (CURRENT_TIMESTAMP, ?, ?, ?, ?)"
);
// PreparedStatement st = con.prepareStatement("UPDATE users SET password= ");
st
.
setString
(
1
,
"clientId"
);
...
...
src/main/java/kz/arta/ext/sap/service/UnsecuredProxyService.java
View file @
5ee73363
...
...
@@ -37,8 +37,6 @@ import java.nio.charset.Charset;
* Date: 04.10.2015
* Time: 11:27
*
* REST сервис с методами, которые не требуют авторизации
*
* Modified
* Date: 06.2018
* REST API метод для смены/установки пароля
...
...
@@ -63,10 +61,6 @@ public class UnsecuredProxyService {
Connection
con
=
null
;
try
{
con
=
ConnectionPool
.
getConnection
();
/*PreparedStatement encodeNewPassword = con.prepareStatement("SELECT MD5(\"" + new_pass + "\");");
encodeNewPassword.execute();*/
//UPDATE users SET password=MD5("new_pass") WHERE login="mikkio"
String
update_passwordSQL
=
"UPDATE users SET password=MD5(\""
+
new_pass
+
"\") WHERE login =\""
+
login
+
"\";"
;
PreparedStatement
UpdatePassword
=
con
.
prepareStatement
(
update_passwordSQL
);
UpdatePassword
.
execute
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment