Created
July 10, 2020 11:42
-
-
Save ratagupt/0aa4da098a60d49af90a7e4a6ea6d5f2 to your computer and use it in GitHub Desktop.
Redfish-Dbus mapping
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
========================================================================================================= | |
MAP1: | |
========================================================================================================= | |
RedfishNode: /redfish/v1/AccountService/ | |
AccountService: | |
=============== | |
Properties: | |
{ | |
"MinPasswordLength": { | |
"/xyz/openbmc-project/user/": { | |
"xyz.openbmc_project.User.AccountPolicy": { | |
"PropertiesChanged": ["MinPasswordLength"] | |
} | |
} | |
}, | |
"AccountLockoutDuration": { | |
"/xyz/openbmc-project/user/": { | |
"xyz.openbmc_project.User.AccountPolicy": { | |
"PropertiesChanged": ["AccountUnlockTimeout"] | |
} | |
} | |
}, | |
"LDAP": { | |
"/xyz/openbmc-project/user/ldap/config": { | |
"xyz.openbmc_project.User.Ldap.Config": { | |
"PropertiesChanged": ["LDAPServerURI", "Enabled", "LDAPBindDN", "LDAPBaseDN"] | |
} | |
} | |
}, | |
"ActiveDirectory": { | |
"/xyz/openbmc-project/user/ldap/config": { | |
"xyz.openbmc_project.User.Ldap.Config": { | |
"PropertiesChanged": ["LDAPServerURI", "Enabled", "LDAPBindDN", "LDAPBaseDN"] | |
} | |
} | |
} | |
} | |
RedfishNode: /redfish/v1/AccountService/Accounts/<str>/ | |
ManagerAccount | |
============== | |
Properties: | |
{ | |
"Enabled": { | |
"/xyz/openbmc-project/user/<id>": { | |
"xyz.openbmc_project.User.Attributes": { | |
"PropertiesChanged": ["UserEnabled"] | |
} | |
} | |
}, | |
"Locked": { | |
"/xyz/openbmc-project/user/<id>": { | |
"xyz.openbmc_project.User.Attributes": { | |
"PropertiesChanged": ["UserLockedForFailedAttempt"] | |
} | |
} | |
}, | |
"RoleId": { | |
"/xyz/openbmc-project/user/<id>": { | |
"xyz.openbmc_project.User.Attributes": { | |
"PropertiesChanged": ["UserPrivilege"] | |
} | |
} | |
}, | |
"PasswordChangeRequired": { | |
"/xyz/openbmc-project/user/<id>": { | |
"xyz.openbmc_project.User.Attributes": { | |
"PropertiesChanged": ["UserPasswordExpired"] | |
} | |
} | |
} | |
} | |
Resources: | |
{ | |
ManagerAccount: { | |
"/xyz/openbmc-project/user/<id>": { | |
"xyz.openbmc_project.User.Attributes": | |
"InterfaceAdded": ["str=Id"] | |
} | |
LogEntry (EventLog) | |
======= | |
RedfishNode : /redfish/v1/Systems/system/LogServices/EventLog/Entries/<str> | |
Properties: | |
{ | |
} | |
Resources: | |
{ | |
LogEntry: { | |
"/xyz/openbmc-project/logging/<id>": { | |
"xyz.openbmc_project.Logging.Entry": | |
"InterfaceAdded": ["str=Id"] | |
} | |
LogEntry (Dump) | |
======== | |
RedfishNode : /redfish/v1/Systems/system/LogServices/system/Entries/ | |
Properties: | |
{ | |
} | |
Resources: | |
{ | |
LogEntry: { | |
"/xyz/openbmc-project/dump/<id>": { | |
"xyz.openbmc_project.Logging.Entry": | |
{ | |
"InterfaceAdded": ["str = id"] | |
"InterfaceRemoved": ["str = id"] | |
}, | |
"xyz.openbmc_project.Dump.Entry.System":{ | |
} | |
} | |
} | |
==================================================================================================================== | |
MAP2 | |
====================================================================================================================== | |
Following two mappings would be generted by the above mapping | |
Mapping between "Redfish ResourceType" and the interested DbusInterfaces | |
========================================================================= | |
{ | |
"LogEntry": { | |
"interfaces": ["xyz.openbmc_project.Logging.Entry","xyz.openbmc_project.dump.Entry","xyz.openbmc_project.Dump.Entry.System"], | |
"signals": ["interfacesAdded", "interfacesRemoved", "PropertiesChanged"] | |
}, | |
"LogService":{}, | |
"AccountService":{ | |
"interfaces": [ "xyz.openbmc_project.User.AccountPolicy", | |
"xyz.openbmc_project.User.PrivilegeMapperEntry", | |
"xyz.openbmc_project.Ldap.Config" ], | |
"signals": ["PropertiesChanged", "interfacesAdded", "interfacesRemoved" ] | |
}, | |
"ManagerAccount": { | |
"interfaces": ["xyz.openbmc_project.User.Attributes"], | |
"signals": ["PropertiesChanged", "interfacesAdded", "interfacesRemoved"] | |
} | |
} | |
==================================================================================================================== | |
MAP3 | |
===================================================================================================================== | |
Mapping between Dbus interfaces to the Redfish resources | |
======================================================== | |
{ | |
"AccountService": { | |
"/xyz/openbmc-project/user/": { | |
"xyz.openbmc_project.User.AccountPolicy": { | |
"PropertiesChanged": { | |
"MinPasswordLength": ["/redfish/v1/accountService", "MinPasswordLength", "AccountService"], | |
"AccountLockoutDuration": ["/redfish/v1/accountService", "AccountUnlockTimeout", "AccountService"], | |
"MaxLoginAttemptBeforeLockout": ["/redfish/v1/accountService", "AccountLockoutThreshold", "AccountService"] | |
} | |
} | |
}, | |
"/xyz/openbmc-project/user/ldap/config": { | |
"xyz.openbmc_project.User.Ldap.Config": { | |
"PropertiesChanged": { | |
"LDAPServerURI": ["/redfish/v1/accountService", "LDAP", "AccountService"], | |
"Enabled": ["/redfish/v1/accountService", "LDAP", "AccountService"], | |
"LDAPBindDN": ["/redfish/v1/accountService", "LDAP", "AccountService"], | |
"LDAPBaseDN": ["/redfish/v1/accountService", "LDAP", "AccountService"], | |
"LDAPSearchScope": ["/redfish/v1/accountService", "LDAP", "AccountService"], | |
"GroupNameAttribute": ["/redfish/v1/accountService", "LDAP", "AccountService"], | |
"UserNameAttribute": ["/redfish/v1/accountService", "LDAP", "AccountService"] | |
} | |
} | |
}, | |
"/xyz/openbmc-project/user/active_directory/config": { | |
"xyz.openbmc_project.User.Ldap.Config": { | |
"PropertiesChanged": { | |
"LDAPServerURI": ["/redfish/v1/accountService", "ActiveDirectory", "AccountService"], | |
"Enabled": ["/redfish/v1/accountService", "ActiveDirectory", "AccountService"], | |
"LDAPBindDN": ["/redfish/v1/accountService", "ActiveDirectory", "AccountService"], | |
"LDAPBaseDN": ["/redfish/v1/accountService", "ActiveDirectory", "AccountService"], | |
"LDAPSearchScope": ["/redfish/v1/accountService", "ActiveDirectory", "AccountService"], | |
"GroupNameAttribute": ["/redfish/v1/accountService", "ActiveDirectory", "AccountService"], | |
"UserNameAttribute": ["/redfish/v1/accountService", "ActiveDirectory", "AccountService"] | |
} | |
} | |
} | |
}, | |
"ManagerAccount": { | |
"/xyz/openbmc-project/user/<id>": { | |
"xyz.openbmc_project.User.Attribute": { | |
"PropertiesChanged": { | |
"UserEnabled": ["/redfish/v1/accountService/accounts/<id>", "Enabled", "ManagerAccount"], | |
"UserLockedForFailedAttempt": ["/redfish/v1/accountService/accounts/<id>", "Locked", "ManagerAccount"], | |
"UserPrivilege": ["/redfish/v1/accountService/accounts/<id>", "RoleId", "ManagerAccount"], | |
"UserPasswordExpired": ["/redfish/v1/accountService/accounts/<id>", "PasswordChangeRequired", "ManagerAccount"] | |
}, | |
"InterfaceAdded": { | |
"xyz.openbmc_project.User.Attribute": ["/redfish/v1/accountService/accounts/<id>", "dummy", "ManagerAccount"] | |
}, | |
"InterfaceRemoved": { | |
"xyz.openbmc_project.User.Attribute": ["/redfish/v1/accountService/accounts/<id>", "dummy", "ManagerAccount"] | |
} | |
} | |
} | |
}, | |
"LogEntry": { | |
"/xyz/openbmc_project/logging/<id>": { | |
"xyz.openbmc_project.Logging.Entry": { | |
"interfaceadded": { | |
"xyz.openbmc_project.Logging.Entry": ["/redfish/v1/systems/system/logservices/eventlog/entries/<id>", "", "LogEntry"] | |
} | |
} | |
}, | |
"/xyz/openbmc_project/dump/<id>": { | |
"xyz.openbmc_project.dump.Entry": { | |
"interfaceadded": { | |
"xyz.openbmc_project.Dump.Entry.System": ["/redfish/v1/systems/system/logservices/eventlog/entries/<id>", "", "LogEntry"], | |
"xyz.openbmc_project.Dump.Entry.BMC": ["/redfish/v1/systems/managers/bmc/eventlog/entries/<id>", "", "LogEntry"] | |
} | |
} | |
} | |
} | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment