sequenceDiagram
Frontend->>Keystone:Username + Password
Keystone->>Frontend:Token
Frontend->>Backend:Token + Request
Backend->>Keystone:Verify Token
Keystone->>Backend:Verify Result
Backend->>NTFS:Operate File
NTFS->>Backend:Operate Result
Backend->>Frontend:Request Result
stateDiagram-v2
state Pipeline{
direction LR
Backend:Backend
Backend:Directory
Backend:File
Backend:Info
[*] --> cors
cors --> authtoken
authtoken --> Backend
Backend --> NTFS
}
stateDiagram-v2
state Role {
Role_admin:Role_admin
Role_admin:Browse
Role_admin:Download
Role_admin:Upload
Role_reader:Role_reader
Role_reader:Browse
Role_reader:Download
}
state Group_standard {
state Group_premium {
state Group_admin {
admin
}
nova
glance
}
demo
neutron
cinder
}
state Project {
Project_*
Project_admin
Project_nova
Project_glance
Project_public
}
state Group {
Groupadmin:Group_admin
Grouppremium:Group_premium
Groupstandard:Group_standard
}
Groupadmin --> Project_* : admin
Grouppremium --> Project_public : admin
Groupstandard --> Project_public : reader
admin --> Project_admin : admin
nova --> Project_nova : admin
glance --> Project_glance : admin
- Connect to the database server
sudo mysql
- Create the sibyl database
CREATE DATABASE sibyl;
USE sibyl;
CREATE TABLE user (name VARCHAR(255), info VARCHAR(255));
- Configure RBAC rules
./init_keystone.sh
python myService.py