Skip to content

Add cert multiple roles support#366

Merged
liuh-80 merged 6 commits intosonic-net:masterfrom
liuh-80:dev/liuh/gnmi_multi_role
Apr 18, 2025
Merged

Add cert multiple roles support#366
liuh-80 merged 6 commits intosonic-net:masterfrom
liuh-80:dev/liuh/gnmi_multi_role

Conversation

@liuh-80
Copy link
Contributor

@liuh-80 liuh-80 commented Feb 25, 2025

Add cert multiple roles support

Why I did it

Some scenarios need GNMI support multiple roles

How I did it

Change CONFIG_DB schema and read multiple roles from CONFIG_DB

How to verify it

Manually test.
Add new UT.

Work item tracking

Microsoft ADO (number only): 31561802

Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006
  • 202012
  • 202106
  • 202111

Description for the changelog

Add cert multiple roles support

Link to config_db schema for YANG module changes

A picture of a cute animal (not mandatory but encouraged)

@mssonicbld
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liuh-80
Copy link
Contributor Author

liuh-80 commented Apr 8, 2025

/azpw run

@mssonicbld
Copy link
Contributor

/AzurePipelines run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liuh-80
Copy link
Contributor Author

liuh-80 commented Apr 8, 2025

/azpw run

@mssonicbld
Copy link
Contributor

/AzurePipelines run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liuh-80 liuh-80 marked this pull request as ready for review April 8, 2025 08:07
@liuh-80 liuh-80 requested a review from ganglyu April 8, 2025 08:07
@liuh-80
Copy link
Contributor Author

liuh-80 commented Apr 9, 2025

/azpw run

@mssonicbld
Copy link
Contributor

/AzurePipelines run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

ganglyu
ganglyu previously approved these changes Apr 9, 2025
@liuh-80
Copy link
Contributor Author

liuh-80 commented Apr 14, 2025

/azpw run

@mssonicbld
Copy link
Contributor

/AzurePipelines run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liuh-80
Copy link
Contributor Author

liuh-80 commented Apr 18, 2025

/azpw run

@mssonicbld
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liuh-80 liuh-80 merged commit c4f8e9a into sonic-net:master Apr 18, 2025
5 checks passed
qiluo-msft pushed a commit to sonic-net/sonic-buildimage that referenced this pull request Apr 28, 2025
Improve GNMI_CLIENT_CERT table to support multiple roles.

Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

Work item tracking
Microsoft ADO (number only):31561802
How I did it
Change GNMI_CLIENT_CERT table yang model.

How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866
liuh-80 added a commit to liuh-80/sonic-gnmi that referenced this pull request Jul 8, 2025
* Update clientCertAuth.go

* Update server_test.go

* Add strings package import in clientCertAuth.go

* Fix role key lookup in clientCertAuth

* Add backward compatibility for single role schema

* Add tests for client certificate authentication
liuh-80 added a commit to liuh-80/sonic-gnmi that referenced this pull request Jul 8, 2025
* Update clientCertAuth.go

* Update server_test.go

* Add strings package import in clientCertAuth.go

* Fix role key lookup in clientCertAuth

* Add backward compatibility for single role schema

* Add tests for client certificate authentication
liuh-80 added a commit to liuh-80/sonic-gnmi that referenced this pull request Jul 8, 2025
* Update clientCertAuth.go

* Update server_test.go

* Add strings package import in clientCertAuth.go

* Fix role key lookup in clientCertAuth

* Add backward compatibility for single role schema

* Add tests for client certificate authentication
liuh-80 added a commit to liuh-80/sonic-buildimage that referenced this pull request Jul 23, 2025
…21849)

Improve GNMI_CLIENT_CERT table to support multiple roles.

Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

Work item tracking
Microsoft ADO (number only):31561802
How I did it
Change GNMI_CLIENT_CERT table yang model.

How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866
liuh-80 added a commit to liuh-80/sonic-buildimage that referenced this pull request Jul 23, 2025
…21849)

Improve GNMI_CLIENT_CERT table to support multiple roles.

Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

Work item tracking
Microsoft ADO (number only):31561802
How I did it
Change GNMI_CLIENT_CERT table yang model.

How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866
liuh-80 added a commit to liuh-80/sonic-buildimage that referenced this pull request Jul 23, 2025
…21849)

Improve GNMI_CLIENT_CERT table to support multiple roles.

Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

Work item tracking
Microsoft ADO (number only):31561802
How I did it
Change GNMI_CLIENT_CERT table yang model.

How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866
mssonicbld added a commit to mssonicbld/sonic-buildimage that referenced this pull request Jul 24, 2025
Improve GNMI_CLIENT_CERT table to support multiple roles.

#### Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

##### Work item tracking
- Microsoft ADO **(number only)**:31561802

#### How I did it
Change GNMI_CLIENT_CERT table yang model.

#### How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->

#### Description for the changelog
Improve GNMI_CLIENT_CERT table to support multiple roles.

<!--
 Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
bingwang-ms added a commit that referenced this pull request Jul 24, 2025
[202405] Add cert multiple roles support (#366)
mssonicbld added a commit to mssonicbld/sonic-buildimage that referenced this pull request Jul 24, 2025
Improve GNMI_CLIENT_CERT table to support multiple roles.

#### Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

##### Work item tracking
- Microsoft ADO **(number only)**:31561802

#### How I did it
Change GNMI_CLIENT_CERT table yang model.

#### How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->

#### Description for the changelog
Improve GNMI_CLIENT_CERT table to support multiple roles.

<!--
 Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
mssonicbld added a commit to mssonicbld/sonic-buildimage that referenced this pull request Jul 24, 2025
Improve GNMI_CLIENT_CERT table to support multiple roles.

#### Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

##### Work item tracking
- Microsoft ADO **(number only)**:31561802

#### How I did it
Change GNMI_CLIENT_CERT table yang model.

#### How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->

#### Description for the changelog
Improve GNMI_CLIENT_CERT table to support multiple roles.

<!--
 Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
mssonicbld added a commit to sonic-net/sonic-buildimage that referenced this pull request Jul 24, 2025
Improve GNMI_CLIENT_CERT table to support multiple roles.

#### Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

##### Work item tracking
- Microsoft ADO **(number only)**:31561802

#### How I did it
Change GNMI_CLIENT_CERT table yang model.

#### How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->

#### Description for the changelog
Improve GNMI_CLIENT_CERT table to support multiple roles.

<!--
 Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
mssonicbld added a commit to sonic-net/sonic-buildimage that referenced this pull request Jul 24, 2025
Improve GNMI_CLIENT_CERT table to support multiple roles.

#### Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

##### Work item tracking
- Microsoft ADO **(number only)**:31561802

#### How I did it
Change GNMI_CLIENT_CERT table yang model.

#### How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->

#### Description for the changelog
Improve GNMI_CLIENT_CERT table to support multiple roles.

<!--
 Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
mssonicbld added a commit to sonic-net/sonic-buildimage that referenced this pull request Jul 24, 2025
Improve GNMI_CLIENT_CERT table to support multiple roles.

#### Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

##### Work item tracking
- Microsoft ADO **(number only)**:31561802

#### How I did it
Change GNMI_CLIENT_CERT table yang model.

#### How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->

#### Description for the changelog
Improve GNMI_CLIENT_CERT table to support multiple roles.

<!--
 Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
mssonicbld added a commit to mssonicbld/sonic-buildimage-msft that referenced this pull request Jul 30, 2025
Improve GNMI_CLIENT_CERT table to support multiple roles.

#### Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

##### Work item tracking
- Microsoft ADO **(number only)**:31561802

#### How I did it
Change GNMI_CLIENT_CERT table yang model.

#### How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->

#### Description for the changelog
Improve GNMI_CLIENT_CERT table to support multiple roles.

<!--
 Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
r12f pushed a commit to Azure/sonic-buildimage-msft that referenced this pull request Jul 31, 2025
…e roles. (#1420)

Improve GNMI_CLIENT_CERT table to support multiple roles.

#### Why I did it
GNMI need support multiple roles.
HLD: sonic-net/SONiC#1967

##### Work item tracking
- Microsoft ADO **(number only)**:31561802

#### How I did it
Change GNMI_CLIENT_CERT table yang model.

#### How to verify it
Pass all test case.

This PR depends on following PRs:
sonic-net/sonic-gnmi#366
sonic-net/sonic-mgmt#17866

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->

#### Description for the changelog
Improve GNMI_CLIENT_CERT table to support multiple roles.

<!--
Ensure to add label/tag for the feature raised. example - PR#2174 under
sonic-utilities repo. where, Generic Config and Update feature has been
labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on
https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants