-
Notifications
You must be signed in to change notification settings - Fork 24
Add credentialz endpoints to manage system role accounts. #207
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -224,6 +224,16 @@ service Credentialz { | |
| // Get the current public keys from the host. Each configured key will be | ||
| // returned in the provided list. | ||
| rpc GetPublicKeys(GetPublicKeysRequest) returns (GetPublicKeysResponse); | ||
|
|
||
| // Add a system role account. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm not sure why my previous comment was marked as resolved, but I still would like to get an answer to that question. Would be good to add a strict definition what a "system role account" is. OpenConfig has SYSTEM_ROLE_ADMIN https://github.com/openconfig/public/blob/db78d44e93a97cef4db27f82bba3fba454e907a5/release/models/system/openconfig-aaa-types.yang#L77-L84, but I have a feeling that you mean something else in this context.
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think 'system role admin' is like 'admin group' or 'root access for user in this group', right? etc.. accounts which the vendor provides on the device outside of any requirement of the operator of that device. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
is it? the proto change says it can only add or delete account. for credentials management we have existing credz service RPCs..
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I suspect that 'system role account' here might have meant (and I'm sure i mis-read this originally): Today credentialz can't really add or remove accounts. This change should permit us to get to that state, right? |
||
| // Note that an attempt to add a system role account that already exists will | ||
| // be rejected with an error. | ||
| rpc AddAccount(AddAccountRequest) returns (AddAccountResponse); | ||
|
|
||
| // Delete a system role account. | ||
| // Note that an attempt to delete a system role account that doesn't exist | ||
| // will be rejected with an error. | ||
| rpc DeleteAccount(DeleteAccountRequest) returns (DeleteAccountResponse); | ||
| } | ||
|
|
||
| // | ||
|
|
@@ -787,3 +797,17 @@ message GetPublicKeysResponse { | |
| // Return all currently configured keys on host. | ||
| repeated PublicKey public_keys = 1; | ||
| } | ||
|
|
||
| message AddAccountRequest { | ||
| // The system role account name. This account must not already exist. | ||
| string account = 1; | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Some implementations need a password to create an account, would suggest add We might also want to clarify if
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. (picking long past old PR) Either specifying in the proto/docs: seems ok. |
||
| } | ||
|
|
||
| message AddAccountResponse {} | ||
|
|
||
| message DeleteAccountRequest { | ||
| // The system role account name. This account must exist. | ||
| string account = 1; | ||
| } | ||
|
|
||
| message DeleteAccountResponse {} | ||
Uh oh!
There was an error while loading. Please reload this page.